question

Upvotes
Accepted
5 0 0 5

ETA - Enable logging in Consumer application

Hi,

Can you please advise how we can turn on logging in ETA (I am working from the basicConsumer.java tutorials)

Ideally I want to generate output similar to below (which was shown to me by a Refinitiv Technical specialist):

1) Service: ELEKTRON_DD ConnectionType: rssl ServerHostname: localhost SipcVersion: 4
Number of Connection Count = 1
Creating RSSL connection Host: localhost Port: 14002
UPA server component version: ads_edge2.5.6.win 64-bit (ssl7.1.F30)
Setting rmds connection 0000000001EAF720
Connection list count is 1
[Tue Jul 23 14:15:17.632] Received login response.
SupportStandby: 0
SupportBatchRequests Initial Open: No
SupportBatchRequests Reissue: No
SupportBatchClose: No
SupportViewRequests: No
SupportOptimizedPauseResume: 0
[Tue Jul 23 14:15:17.633] Received source directory response.
[Tue Jul 23 14:15:17.660] Received source directory update.
[Tue Jul 23 14:15:17.660] ELEKTRON_DD Group 1 OK Received. Text "New Session Mounted"
[Tue Jul 23 14:15:17.660] Received source directory update.
[Tue Jul 23 14:15:17.660] ELEKTRON_DD Group 3 OK Received. Text "New Session Mounted"
[Tue Jul 23 14:15:17.660] Received source directory update.
[Tue Jul 23 14:15:17.660] ELEKTRON_DD Group 6 OK Received. Text "New Session Mounted"
[Tue Jul 23 14:15:17.660] Received source directory update.
[Tue Jul 23 14:15:17.660] ELEKTRON_DD Group 4 OK Received. Text "New Session Mounted"
[Tue Jul 23 14:15:17.660] Received source directory update.
[Tue Jul 23 14:15:17.660] ELEKTRON_AD Group 1 OK Received. Text "New Session Mounted"
[Tue Jul 23 14:15:17.660] Received source directory update.
[Tue Jul 23 14:15:17.660] ELEKTRON_AD Group 3 OK Received. Text "New Session Mounted"
[Tue Jul 23 14:15:17.660] Received source directory update.
[Tue Jul 23 14:15:17.660] ELEKTRON_AD Group 6 OK Received. Text "New Session Mounted"
[Tue Jul 23 14:15:17.660] Received source directory update.
[Tue Jul 23 14:15:17.660] ELEKTRON_AD Group 4 OK Received. Text "New Session Mounted"
[Tue Jul 23 14:15:17.716] sendOpenRequest(): Writing open of size 27.
[Tue Jul 23 14:15:17.716] Channel: 1 Opening item MRN_STORY of domain 33 in Service: ELEKTRON_DD


[Tue Jul 23 14:15:17.716] <refreshMsg domainType="RSSL_DMT_NEWS_TEXT_ANALYTICS" streamId="5" containerType="RSSL_DT_FIELD_LIST" flags="0x1FA (RSSL_RFMF_HAS_PERM_DATA|RSSL_RFMF_HAS_MSG_KEY|RSSL_RFMF_HAS_SEQ_NUM|RSSL_RFMF_SOLICITED|RSSL_RFMF_REFRESH_COMPLETE|RSSL_RFMF_HAS_QOS|RSSL_RFMF_CLEAR_CACHE)" groupId="1" seqNum="26832" permData="0301 0110 001C" qosDynamic="0" qosRate="1" qosTimeliness="1" dataState="RSSL_DATA_OK" streamState="RSSL_STREAM_OPEN" code="RSSL_SC_NONE" text="All is well"  dataSize="102">
    <key  flags="0x7 (RSSL_MKF_HAS_SERVICE_ID|RSSL_MKF_HAS_NAME|RSSL_MKF_HAS_NAME_TYPE)"  serviceId="257" name="MRN_STORY" nameType="1"/>
</refreshMsg>


PROD_PERM            : UINT           2   : [10001]
ACTIV_DATE           : DATE           4   : [20 JUL 2019]
RECORDTYPE           : UINT           1   : [30]
RDN_EXCHD2           : ENUM           2   : [1370]
TIMACT_MS            : UINT           4   : [37547505]
GUID                 : STRING         0   : []
CONTEXT_ID           : REAL           3   : [3752]
DDS_DSO_ID           : UINT           2   : [8328]
SPS_SP_RIC           : STRING         10  : [.[SPSML0L1]
MRN_V_MAJ            : STRING         1   : [2]
MRN_TYPE             : STRING         5   : [STORY]
MRN_V_MIN            : STRING         2   : [10]
MRN_SRC              : STRING         9   : [HDC_PRD_A]
FRAG_NUM             : UINT           1   : [1]
TOT_SIZE             : UINT           1   : [0]
FRAGMENT             : STRING         0   : []
Image Received. RespFlags<0x140> FragCount<0> PendQ Count<0000> PendOutQ Count<0001> GroupId<1>:<MRN_STORY>:<33>


[Tue Jul 23 14:16:09.422] <updateMsg domainType="RSSL_DMT_NEWS_TEXT_ANALYTICS" streamId="5" containerType="RSSL_DT_FIELD_LIST" flags="0x1DA (RSSL_UPMF_HAS_PERM_DATA|RSSL_UPMF_HAS_MSG_KEY|RSSL_UPMF_HAS_SEQ_NUM|RSSL_UPMF_DO_NOT_CACHE|RSSL_UPMF_DO_NOT_CONFLATE|RSSL_UPMF_DO_NOT_RIPPLE)" updateType="0 (RDM_UPD_EVENT_TYPE_UNSPECIFIED)" seqNum="27582" permData="0301 0110 121B 1025 5B10 263B 1026 7B10 279B 1028 1B10 288B 1030 3B10 310B 1200
    0B12 002B 1203 8B12 059B 1219 9B12 212B 1228 9B12 292B 1229 6B12 320B 1232 3C" dataSize="2717">
    <key  flags="0x7 (RSSL_MKF_HAS_SERVICE_ID|RSSL_MKF_HAS_NAME|RSSL_MKF_HAS_NAME_TYPE)"  serviceId="257" name="MRN_STORY" nameType="1"/>
</updateMsg>

Thanks

elektronrefinitiv-realtimeelektron-sdkrrteta-apielektron-transport-api
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
Accepted
9.7k 49 38 60

Hi @anand.pankhania,

ETA is a zero-configuration environment so to turn on tracing you have to do it through code. Within Chapter 10 of the ETA Developers guide, there is a section called XML Tracing which provides some details.

To see an example, you can look at the rsslConsumer.c example within the Eta\Applications\Examples\Consumer directory within the ESDK package.


ahs.png (36.6 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
23k 22 9 14

Hello @anand.pankhania,

In addition (totally agreeing with @nick.zincone.1), if you are looking to parse and present News Analytics domain, MRN content, using ETA Java, you may benefit from reviewing ETA Tutorial 6 - Request & Decode Machine Readable News

If it's a new application being designed, you may consider saving time and effort, by using higher level EMA Java implementation EMA Consumer - Request & Decode Machine Readable News

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
5 0 0 5

Thanks @zoya.farberov and @nick.zincone.1, and ,,

Our requirement is to transition from the NFD service which is end of life. As a result, we are moving to the ETA which offers comparable ultra low latency performance.

I am using ETA Java API, and have found the following option to turn on XML tracing: reactorOptions.enableXmlTracing();

I couldn't find any documentation on this in the docs in https://github.com/Refinitiv/Elektron-SDK/blob/master/Java/Eta/Docs/. Is there an equivalent section about XML Tracing for the ETA Java API?

In addition to this, just wanted to mention that I am using the ETA Tutorial 6 (Request and Decode MRN) as a starting point.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
9.7k 49 38 60

Hi @anand.pankhania,

It appears that the ETA for Java does its XML tracing through the Msg interface. The Msg interface is a subclass of XMLDecoder which can be used to log your messages to stdout, file, etc.

You see how it is utilized within the Eta\Applications\Examples\src\main\java\com\thomsonreuters\upa\examples\consumer folder. That example has a -x switch which dumps trace message to XML. It references the ChannelSession.java class within the common folder.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
9.7k 49 38 60

Hi @anand.pankhania,

Given you are using MRN as your source of content, it might be worth considering using EMA Java as opposed to the effort involved in using ETA Java. Where ETA really shines is for those services of data where the throughput is high and you want to have complete control over performance. Given MRN is not a high throughput service, it might be something to consider.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Click below to post an Idea Post Idea