Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remote Configuration for Traces/Metrics GRPC #13323

Open
zalseryani opened this issue Apr 22, 2024 · 2 comments
Open

Remote Configuration for Traces/Metrics GRPC #13323

zalseryani opened this issue Apr 22, 2024 · 2 comments
Labels
enhancement Enhancement or improvement to existing feature or request Plugins Telemetry:Tracing PRs or issues specific to telemetry tracing framework

Comments

@zalseryani
Copy link

zalseryani commented Apr 22, 2024

Is your feature request related to a problem? Please describe

The feature is required to send traces and metrics of opensearch to external monitoring tools like signoz.

  • We have tested metrics and traces, it's working properly on a log file, and tested the grpc, and working fine, but we were not able to use a specific configuration for otlp to send those traces and metrics to signoz as an example.

  • We checked the docs and noticed that it's not configurable.

  • We found a typo related to the grpc configuration for traces, the class in the docs is mentioned incorrectly telemetry.otel.tracer.span.exporter.class=org.opensearch.telemetry.tracing.exporter.OtlpGrpcSpanExporterProvider, while it should have the following value telemetry.otel.tracer.span.exporter.class: io.opentelemetry.exporter.otlp.trace.OtlpGrpcSpanExporter

  • Another note would be related to trace configuration, telemetry.feature.tracer.enabled: true this configuration is not mentioned in the docs, I got the support from @Gaganjuneja in another story Metrics Framework, and tested and it's working fine for the trace file log configuration.

Describe the solution you'd like

  • There are 3 solutions
    1- Create a new environment variable for this case.
    2- Reuse the environment variable featured by opentelemetry OTEL_EXPORTER_OTLP_ENDPOINT.
    3- Create a configmap or additional opensearch.yml configuration.

Related component

Plugins

Describe alternatives you've considered

The alternative solution now is to use a reverse proxy for rerouting / redirecting traffic to a remote otel-collector server, but I believe it's not practical and I would not use it within Kubernetes cluster deployment.

Additional context

No response

@zalseryani zalseryani added enhancement Enhancement or improvement to existing feature or request untriaged labels Apr 22, 2024
@peternied peternied added Telemetry:Tracing PRs or issues specific to telemetry tracing framework and removed untriaged labels Apr 24, 2024
@peternied
Copy link
Member

[Triage - attendees 1 2 3 4 5 6 7]
@zalseryani Thanks for creating this issue, note this is a little high level - it isn't exactly clear how this would happen or if there is good patterns for reuse elsewhere in OpenSearch. Pull requests might see some extra design discussion that would be good to head off with an RFC- for your consideration.

@Gaganjuneja
Copy link
Contributor

@zalseryani thanks for opening this issue.

  1. For distributed tracing documentation fix, I have created an issue and will address that.
  2. To support configuring the exported end point, we already had discussion and I need to revive this thread with the best possible option. issue - [Telemetry-otel] Different exporters/samplers should have configurable settings #9764

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement or improvement to existing feature or request Plugins Telemetry:Tracing PRs or issues specific to telemetry tracing framework
Projects
None yet
Development

No branches or pull requests

3 participants