Skip to content

[Observability] Add OpenTelemetry Support to Yamcs Python Client #29

Description

@unlikelyzero

This ticket captures the work to enhance the yamcs-python-client by integrating OpenTelemetry support. This will allow users to leverage distributed tracing and monitoring capabilities, providing better insights into the performance and behavior of applications using the Yamcs client.

Proposed Changes:

  1. Dependencies:
    Ensure opentelemetry-api and opentelemetry-sdk are included in the install_requires section of setup.py.
  2. Implementation:
    Integrate OpenTelemetry tracing into the client operations, such as API requests and responses.
    Provide configuration options for users to enable or disable tracing.
  3. Environment Variables:
    Introduce environment variables to control tracing behavior:
    YAMCS_OTEL_TRACING_ENABLED: Set to true to enable tracing, false to disable. Default is false.

Benefits:

Improved observability and monitoring of applications using the Yamcs client.
Easier identification and troubleshooting of performance bottlenecks and errors.

Additional Context:

This feature will align the Yamcs client with modern observability practices, making it more attractive to developers who rely on distributed tracing for their applications. An example of how this can be achieved elastic/elasticsearch-py#2435 with first steps here elastic/elastic-transport-python#150

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions