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

Feat/tracing #395

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open

Feat/tracing #395

wants to merge 2 commits into from

Conversation

HassanAmed
Copy link

Fixes #390

Motivation

There is no support for instrumentation. If for some reason the connection with network node breaks or is slow / not responding properly there is no way to easily find out the underlying issues.

Solution

Tracing outbound requests solves this problem. It tells how many of the requests made to /block /status and other endpoints were successful or failed and their P-latency.
You can Enable instrumentation from config using flag "enable_request_instrumentation": true
Set Otel collector url using otel_collector_url:"localhost:4317"

Any collector can be used I have tested with Signoz and Zipkin.
More context in #390

Implementation

We override fetcher's ApiClient with a traced ApiClient that generates tracing data for all outbound requests. Tracer package initialise and set a global trace provider that collects all of this data and exports it to collectors.

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

Successfully merging this pull request may close these issues.

Instrumentation for outbound rosetta client request/responses to track slow or failing endpoints
1 participant