Logger EMA consumer

Is there a way to get logger object in consumer sample app and extract the string with errors?
Best Answer
-
You can create a custom log handler to catch log events.
import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.LogManager;
import java.util.logging.Logger;
...
Logger rootLogger = LogManager.getLogManager().getLogger("");
rootLogger.setLevel(Level.ALL);
rootLogger.addHandler(new MyLogHandler());import java.util.logging.Handler;
import java.util.logging.LogRecord;
public class MyLogHandler extends Handler{
@Override
public void publish(LogRecord record) {
// TODO Auto-generated method stub
System.out.println("### Log "+record.getMessage());
}
@Override
public void flush() {
// TODO Auto-generated method stub
}
@Override
public void close() throws SecurityException {
// TODO Auto-generated method stub
}
}The output looks like this:
### Log loggerMsg
ClientName: Consumer_1_1
Severity: Trace
Text: Print out active configuration detail.
itemCountHint: 100000
serviceCountHint: 513
requestTimeout: 15000
dispatchTimeoutApiThread: 0
maxDispatchCountApiThread: 100
maxDispatchCountUserThread: 100
userDispatch: 1
configuredName: Consumer_1
instanceName: Consumer_1_1
xmlTraceEnable: true
defaultConverterServiceId: 10
Answers
-
Hello @vishal.anand ,
The recommended way to detect error conditions is by registering and processing status callback, and examining status codes, for instance, the text of the logged messages may improve/be modified in the future. Typically, in the consumer-generated log, the status message text is included as well as the status code, but error-handling decisions should be made based on the Status code received.
You may wish to additionally register interest in Login stream events- see example EMA Consumer 333 Login Streaming Domain, to be sure to detect forced logouts, and Source Directory events- see example 331 Directory Streaming, to be sure to detect service downs.
0 -
I do receive status message that Service is lost and do log it in the application syslog (I have different syslog for my app). I can see in the ema log to see it is retrying to connect but during this time I do not get any callbacks for any event like it is retrying to connect or doing what. Is there any way to tap into the logger and get the details so at least I can get the text and add it to my syslogs? Else I will have to monitor both Ema Logs and my application log.
0 -
Hello @vishal.anand ,
The initial connection, including the repeated attempts to connect, is intended to be seamless for EMA application tier, defined in EMA configuration and fully handled by EMA API, so:
- Attempted for the duration of configuration parameter LoginRequestTimeOut ( see this related discussion thread)
- Not exposed via Status callbacks
If you are looking to route EMA log to a different filename/location, configure your log file:
If you require to explicitly detect the reconnection attempts at the application tier, see ETA Consumer example in RTSDK, where application tier is responsible for establishing connectivity explicitly.
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 37 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 698 Datastream
- 1.5K DSS
- 633 Eikon COM
- 5.2K Eikon Data APIs
- 14 Electronic Trading
- 1 Generic FIX
- 7 Local Bank Node API
- 6 Trading API
- 2.9K Elektron
- 1.5K EMA
- 257 ETA
- 565 WebSocket API
- 40 FX Venues
- 16 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 25 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 283 Open PermID
- 47 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 24 RDMS
- 2.1K Refinitiv Data Platform
- 804 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 122 Open DACS
- 1.1K RFA
- 107 UPA
- 194 TREP Infrastructure
- 232 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 100 Workspace SDK
- 11 Element Framework
- 5 Grid
- 19 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛