-
Notifications
You must be signed in to change notification settings - Fork 0
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
ENG-53205: adding metrics exporter cfg #32
Conversation
8aa4024
to
e8c6763
Compare
@@ -377,3 +379,12 @@ message Telemetry { | |||
// See https://github.com/open-telemetry/opentelemetry-go/tree/main/metric | |||
google.protobuf.BoolValue metrics_enabled = 2; | |||
} | |||
|
|||
message MetricsExporterConfig { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
endpoint, certificate and other details can come from the reporting config
code changes after review
EndpointMetricsConfig endpoint_config = 2; | ||
// config for printing metrics in logs | ||
MetricsLogConfig logging = 3; | ||
// set this flag to enable metrics |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tim-mwangi @ryanericson I was trying to merge this with the existing telemetry config. But can't think of a good way as libtraceable configuration has all these subconfigurations
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What are all the subconfigurations?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The main one is a logging configuration which prints the stats. Then there is an endpoint level configuration which prints the stats at an endpoint level. Then I was thinking of adding a reporter/exporter configuration in this pr so that we can turn on/off libtraceable's metrics separately from the agent's metrics
@@ -78,9 +78,6 @@ message Reporting { | |||
|
|||
// When `true`, modifies grpc resolver to use dns instead of passthrough and configure round robin client side loadbalancing | |||
google.protobuf.BoolValue enable_grpc_loadbalancing = 9; | |||
|
|||
// represents the agent token to be used by the agent | |||
google.protobuf.StringValue agent_token = 11; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there's already a token field(offset 3) in reporting config. So removing this duplicate
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was the existing one added recently?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I added it for eds support and it was a root level config. When Donnie merged the ht config to traceable one he moved it here
// when `true` metrics will be exported as spans from libtraceable | ||
google.protobuf.BoolValue enabled = 1; | ||
// max interval for calls to TPA | ||
google.protobuf.Int32Value export_interval_ms = 2; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
also we dont actually need to expose these 2 configs as well. I exposed them in libtracaeble because that'll let us avoid a code change in libtraceable in future if we decide to change it. But in goagent or any other agents, we can hardcode the otel defaults
No description provided.