Skip to content

Latest commit

 

History

History
55 lines (33 loc) · 2.56 KB

README.md

File metadata and controls

55 lines (33 loc) · 2.56 KB

open-telemetry-playground

📚 Learning and exploring OpenTelemetry via the official Java libraries.

High-quality, ubiquitous, and portable telemetry to enable effective observability

-- https://opentelemetry.io/

Overview

NOTE: This project was developed on macOS. It is designed for my own personal use.

OpenTelemetry has become a big deal in the observability space. It's an incubating project in the CNCF. It has a lot of integrations and adoption. This repository is me learning OpenTelemetry.

Standalone subprojects

This repository illustrates different concepts, patterns and examples via standalone subprojects. Each subproject is completely independent of the others and do not depend on the root project. This standalone subproject constraint forces the subprojects to be complete and maximizes the reader's chances of successfully running, understanding, and re-using the code.

The subprojects include:

agent/

An example program-under-observation instrumented with the OpenTelemetry Java agent.

See the README in agent/.

manual-instrumentation/

An example program-under-observation instrumented with OpenTelemetry using manual instrumentation.

See the README in manual-instrumentation/.

Wish List

General clean-ups, TODOs and things I wish to implement for this project:

  • DONE Extract the original project into an agent subproject.
  • DONE Create a manual-instrumentation subproject. This will contrast with the agent subproject. Particularly, I want a more explicit set of transitive dependencies. I want to use OpenTelemetry's JdkHttpSender instead of the OkHttp one because I want to bring in fewer dependencies like OkHttp (which itself brings in Kotlin).
  • DONE Upgrade to OpenTelemetry Java Instrumentation 2.x
  • Can we use Influx 2.x? I know I had trouble with it before, but it should have a 1.x compatible API. Note that Influx 3.x is the new thing, but it is considered beta, so I won't use it yet. Does Influx 2.x support ILP via HTTP and does it support Influx query language? I really can't remember why it wouldn't work for me, and the 1.x literally hasn't been updated since 2021, so I want to be done with it.
  • DONE Straighten out the versioning and dependencies between the OpenTelemetry Java SDK vs the OpenTelemetry Java Instrumentation.