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

Support OpenTracing Instrumentation #92

Open
A-Kamaee opened this issue Feb 15, 2022 · 6 comments
Open

Support OpenTracing Instrumentation #92

A-Kamaee opened this issue Feb 15, 2022 · 6 comments
Labels
good first issue Good for newcomers

Comments

@A-Kamaee
Copy link

Hi, We have a problem with opensearch-go client but we can't find it so we want to instrument the client in order to improve the observability. Is there an easy way to achieve that goal? Except forking the project and adding instrumentation to the forked version and using it.

@VijayanB
Copy link
Member

@A-Kamaee Looks interesting. Please share your proposal on how you would like to add this feature.

@wbeckler
Copy link

I support instrumentation hooks for debugging.

@wbeckler wbeckler added the good first issue Good for newcomers label Jan 18, 2023
@caioleonhardt
Copy link
Contributor

That is indeed interesting, my only note is that OpenTracing project is archived in favor of OpenTelemetry as we can see here: https://www.cncf.io/blog/2022/01/31/cncf-archives-the-opentracing-project/

@tannerjones4075
Copy link
Contributor

I would like to help with this. Would the Otel be built into the GitHub Workflow?
Example:
....
` - name: Install OpenTelemetry package
run: go get -u go.opentelemetry.io/[email protected]

     - name: Run the instrumented opensearch-go client
       run: |
         go build -o instrumented-client main.go
         ./instrumented-client

`

@urdarinda
Copy link

I want to try to add instrumentation (otel) here. However, I am lost on how we can add it to every available API.

How do we keep track of changes to OpenSearch API and add the changes in the SDK? Do we do it manually or have a generator for it like v2 ? @Jakob3xD

Specifically, if I wanted to add the db.operation attribute, how would I do it?
https://opentelemetry.io/docs/specs/semconv/attributes-registry/db/

I tried to add an interface here similar to what ES does today
https://github.com/urdarinda/opensearch-go/pull/1/files

@kmrgirish
Copy link

I want to try to add instrumentation (otel) here. However, I am lost on how we can add it to every available API.

To instrument all APIs, the OpenSearch client can be configured with a custom http.RoundTripper. You can use the otelhttp package to add instrumentation. This package allows you to wrap the round tripper and automatically capture telemetry data.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

7 participants