Is there a field or convience methods in elektron java SDK to determine when the Refresh or Update Msg was sent or published by the server/Reuters? Ideally upto millisecond precision. Our usecase is to measure how long the Refresh/Update Msg was processed by our applications including all the network hops and various factors.
The fields ACTIV_DATE (17) and TIMACT (5) I think is only for when a field was updated like a bid tick.
Whilst there are millisecond precision fields available these are normally related to realtime market activity e.g. time of the most request Quote or Trade (QUOTIM_MS / TRDTIM_MS) - and the availability of these would depend on the origination exchange.
If you want to determine the latency added to an event as it travels through our TREP system (and your internal network), then you would be better off using the PerfTools examples packaged within the Elektron SDK and described in detail in the ETAJ_PerfToolsGuide.pdf.
The examples can be found in the Java\Eta\Applications\PerfTools subfolder of the Elektron Java SDK and the pdf can be found in the Java\eta\Docs folder.
For example the perftools encode timestamps into a published instrument so that the consumer can extract these timestamps and determine the time taken for the instrument to be received. The full source code is provided so that you can tweak the applications behaviours to suit your test requirements.
You can also find the Elektron Java Performance Tools guide online here
That is correct - two of the examples are test providers - which publish the test OMM data with the latency information at the North side and a consumer example which runs at the south side of the infrastructure.