Instrumenting the DDF application with the OpenTelemetry API or similar

26 views
Skip to first unread message

Evan Kara

unread,
Nov 12, 2020, 2:15:28 AM11/12/20
to ddf-users
Hi,

I have come across the new OpenTelemetry project (https://opentelemetry.io/), and was just wondering if your engineers will be looking into instrumenting the DDF application with the OpenTelemetry API and/or SDK (https://thenewstack.io/getting-started-with-opentelemetry-for-java/), or anything similar to this, in the future? This would be useful to monitor the performance of the application with APM/tracing products (e.g. kibana, zipkin, jaeger), particularly when troubleshooting any browser-based GUI related issues.

regards,
Evan

Phillip Klinefelter

unread,
Nov 16, 2020, 8:26:56 PM11/16/20
to ddf-users
We used to use Dropwizard Metrics but are now using Micrometer to capture some system metrics. We also include a Prometheus endpoint to consume these metrics.


We are monitoring OpenTelemetry and hope to evaluate it more once it exits beta. Its included distributed tracing, CNCF ecosystem support, and language neutrality are some of the key benefits it has over Micrometer which is primary focused on the Spring/Java ecosystems.

-Phil

Evan Kara

unread,
Nov 20, 2020, 12:45:46 AM11/20/20
to ddf-users
Hi Phillip,

Thank for responding to the topic... with regards to distributed tracing, I have a related question:

As an alternative to OpenTelemetry, I would like to hook in some Elastic APM javascript (https://www.elastic.co/guide/en/apm/agent/rum-js/master/install-the-agent.html) to some of the DDF web pages (e.g. Login web page, logout web page, search catalog web page) which will hopefully provide some informative distributed tracing in the Kibana dashboard...can you please advise where the web pages/files are located in the DDF file structure, or if they in some jar package/bundle?

- Evangelo  

Phillip Klinefelter

unread,
Nov 30, 2020, 10:10:46 AM11/30/20
to ddf-users
Not all of the DDF web pages provide a way to extend them on the client side.  DDF UI does have a way but it is limited and I do not really see a good extension point to plug in the APM library.


You should be able to use the Elastic APM Java library from the plugin points I mentioned before.

https://www.elastic.co/guide/en/apm/agent/java/master/intro.html

-Phil
Reply all
Reply to author
Forward
0 new messages