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

Enable integration with open tracing & micrometer libraries #575

Open
1 of 2 tasks
gpradeepkrishna opened this issue Apr 8, 2021 · 6 comments
Open
1 of 2 tasks

Comments

@gpradeepkrishna
Copy link

I'm submitting a

  • bug report
  • feature request

Background info

Enable support for Integration with open tracing & micrometer libraries to enable visibility.

Expected behavior

Some of the goals of this integration

  • enable spans for outgoing calls by SDK to Okta host.
  • enable metrics for datastore (caching) as well as outgoing calls.

What went wrong?

Without a means to integrate with open tracing & micrometer, we are forced to meddle with internals in order to provide visibility. This is not sustainable as new releases of SDK can break it.

SDK Version

4.0.0

@VitaliiTytarenko-okta
Copy link
Contributor

@gpradeepkrishna
Thanks for bringing this to our attention! I've added an item to our backlog for prioritization (internal ref: OKTA-385625). Our Java devs will review it further. We'll comment here when there is additional information to share.
Thanks for using Okta!

@arvindkrishnakumar-okta
Copy link
Contributor

@gpradeepkrishna Thanks for posting!

Can you let us know what specific metrics are you interested in tracking?

@ybudweiser
Copy link

I think it would be best to expose the underlining httpclient, so we can add our own instrumentation or integrate with micrometer and customize it

@andyzasl
Copy link

Any updates on this?

@arvindkrishnakumar-okta
Copy link
Contributor

Thanks for checking in on this issue. We already have a ticket logged and are currently prioritizing this integration with our Java SDKs. We will try to keep this issue updated when we have more information. You are always welcome to ping us again for an update!

@arvindkrishnakumar-okta
Copy link
Contributor

arvindkrishnakumar-okta commented Mar 22, 2024

Sorry for the delay in getting to this ticket.

Here is the summary of my findings:

  1. Micrometer tracing integrates well with Spring framework and we do not use Spring framework in our SDK and do not intend to do so in future due to the transitive dependencies that it would bring (maintaining those dependencies would be an unnecessary overhead for the use case of the SDK). Having said that, Micrometer IMHO is not a great integration for our SDK at this time.
  2. Open Tracing project is archived and this means there is no active support going forward. Given this, we would not want to integrate with this archived framework. We could potentially consider evaluating OpenTelemetry as an alternative to this.

As mentioned above in one of the comments, we've actually made it possible for a user to supply their own HttpClient reference while instantiating the SDK's ApiClient which opens up the possibility of the user adding their own instrumentation.

Let me know if this helps!

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

No branches or pull requests

5 participants