.Net EMA API Log

I am using .net EMA API to load the Instrument Pricing in Azure Function and trying to capture the underlying logs from the API. I tried using Logger section in the config file but it is not capturing events at the RIC level, I am able to capture high level events.

Welcome!

It looks like you're new here. Sign in or register to get started.

Best Answer

  • Jirapongse
    Jirapongse ✭✭✭✭✭
    Answer ✓

    @harish.lalwani

    Thank you for reaching out to us.

    I checked the EMA .NET configuartion guide and found that it supports logging with the following levels.

    Possible values are:
    LoggerSeverity::Verbose (0)
    LoggerSeverity::Success (2)
    LoggerSeverity::Warning (3)
    LoggerSeverity::Error (4)
    LoggerSeverity::NoLogMsg (5)

    The Verbose level doesn't capture events at the RIC level. If you would like to see the raw messages, you can use the XmlTraceToStdout or XmlTraceToFile configuration.

            <Consumer>         
                <Name value="Consumer_1"/>
                <Channel value="Channel_1"/>
                <Logger value="Logger_1"/>
                <Dictionary value="Dictionary_2"/>
                <XmlTraceToStdout value="1"/>
            </Consumer>

    The trace messages look like this:

    <!-- Incoming Reactor message -->
    <!-- Rssl Channel
        scktChannel: 127.0.0.1:14002
        connected: True
        state: ACTIVE
        connectionType: SOCKET
        clientIP: 
        clientHostname: 
        pingTimeout: 30
        majorVersion: 14
        minorVersion: 1
        protocolType: RWF
        userSpecObject: LSEG.Ema.Access.ChannelInfo
     -->
    <!-- 7/30/2024 12:57:56 PM -->


    <!-- rwfMajorVer="14" rwfMinorVer="1" -->
    <UPDATE domainType="MARKET_PRICE" streamId="3" containerType="FIELD_LIST" flags="0x90 (HAS_SEQ_NUM|DO_NOT_CONFLATE)" updateType="0" seqNum="63998" dataSize="13">
            <dataBody>
                    <fieldList flags="0x08 (HAS_STANDARD_DATA)">
                            <fieldEntry fieldId="3275" data="0C6D"/>
                            <fieldEntry fieldId="3284" data="0C4A"/>
                    </fieldList>
            </dataBody>
    </UPDATE>

    However, enbling XML trace will impact the performance of the application.

Answers

  • Thanks @Jirapongse for your response.

    If I enable I get following error logged in the file XmlTraceToFile .If I remove this I am at least able to capture other level of logs.

    Severity: Error Text: Unknown Consumer entry element: XmlTraceToFile in Consumer_1


    Also can you share the .net configuration guide link.


  • Jirapongse
    Jirapongse ✭✭✭✭✭

    @harish.lalwani

    The configuration looks like this:

        <ConsumerList>
            <Consumer>       
                <Name value="Consumer_1"/>
                <Channel value="Channel_1"/>
                <Logger value="Logger_1"/>
                <Dictionary value="Dictionary_2"/>
                <XmlTraceToFile value="1"/>
            </Consumer>

    I am using RTSDK-2.2.0.L1.CSharp.rrg.

    You can check all available configurations in the EMACSharp_ConfigGuide.pdf file in the package.

  • Thank you @Jirapongse

    In .net version the property name is changed to LoggerType

    • LoggerType::File: The Enterprise Message API logs to

    the file specified in the parameter FileName.

    • LoggerType::Stdout: The Enterprise Message API logs to

    stdout.

Welcome!

It looks like you're new here. Sign in or register to get started.

Welcome!

It looks like you're new here. Sign in or register to get started.