Skip to content
This repository has been archived by the owner on Apr 2, 2024. It is now read-only.

Add telemetry event for Jaeger gRPC remote storage writer #1548

Closed
arajkumar opened this issue Aug 4, 2022 · 3 comments · Fixed by timescale/promscale_extension#472
Closed
Assignees
Labels
epic/jaeger-grpc-write Jaeger gRPC based write integration
Milestone

Comments

@arajkumar
Copy link
Member

Relates to #1535

@arajkumar arajkumar added the epic/jaeger-grpc-write Jaeger gRPC based write integration label Aug 4, 2022
@arajkumar arajkumar added this to the 0.14.0 milestone Aug 4, 2022
@arajkumar arajkumar self-assigned this Aug 4, 2022
@arajkumar
Copy link
Member Author

@VineethReddy02 We already have telemetry event around otel ingestion and #1535 is implemented on top of otel. Hence all the events which we send for otel ingestion is also applicable for Jaeger ingestion. Do we need any additional signal from the product perspective?

@VineethReddy02
Copy link
Contributor

I agree with your point Arun, But we need to know if the user is using Otel or Jaeger ingestion endpoints or both? And rest all we can see from Otel-specific telemetry that has already been captured. Maybe it's a good idea to change telemetry keys from otel to traces to make it more generic. So that in telemetry the data points with traces represents traces in general i.e both Jaeger and Otel.

@arajkumar
Copy link
Member Author

arajkumar commented Aug 23, 2022

I've been exploring following options to enable telemetry,

  1. Add metrics in WriteSpan and expose it to telemetry ( similar to e.g. https://github.com/timescale/promscale/blob/master/pkg/jaeger/store/store.go#L64)
  2. Expose intrinsic metrics exposed by gRPC framework(grpc_server_handling_seconds_count{grpc_method="WriteSpan"})
  3. Use internal span attribute populated by jaeger framework(internal.span.format=jaeger)

Option 1 and Option 2 requires code changes in promscale and extension, but 3 requires change only in extension.

arajkumar added a commit to arajkumar/promscale_extension that referenced this issue Aug 24, 2022
This commit adds a telemetry event to find whether jaeger spans are ingested into promscale or not.

Fixes timescale/promscale#1548

Signed-off-by: Arunprasad Rajkumar <[email protected]>
arajkumar added a commit to arajkumar/promscale_extension that referenced this issue Aug 24, 2022
This commit adds a telemetry event named `promscale_traces_jaeger_span_types` to find types of jaeger spans ingested into promscale.

Fixes timescale/promscale#1548

Signed-off-by: Arunprasad Rajkumar <[email protected]>
arajkumar added a commit to arajkumar/promscale_extension that referenced this issue Aug 24, 2022
This commit adds a telemetry event named `promscale_traces_jaeger_span_types` to find types of jaeger spans ingested into promscale.

Fixes timescale/promscale#1548

Signed-off-by: Arunprasad Rajkumar <[email protected]>
arajkumar added a commit to arajkumar/promscale_extension that referenced this issue Aug 24, 2022
This commit adds a telemetry event named `promscale_traces_jaeger_span_types` to find types of jaeger spans ingested into promscale.

Fixes timescale/promscale#1548

Signed-off-by: Arunprasad Rajkumar <[email protected]>
arajkumar added a commit to arajkumar/promscale_extension that referenced this issue Aug 24, 2022
This commit adds a telemetry event named `promscale_traces_jaeger_span_types` to find types of jaeger spans ingested into promscale.

According to [1], Trace spans processed by Jaeger collector will have an internal attribute named 'internal.span.format' with one of the values 'jaeger|zipkin|proto|otlp|unknown'[2]. We can use this to infer whether promscale's gRPC remote storage implementation has been used or not.

[1] jaegertracing/jaeger#1490
[2] https://github.com/jaegertracing/jaeger/blob/b7088238c017e5a54896efbf5ed38959e885e0c5/cmd/collector/app/processor/interface.go#L56-L67

Fixes timescale/promscale#1548

Signed-off-by: Arunprasad Rajkumar <[email protected]>
arajkumar added a commit to arajkumar/promscale_extension that referenced this issue Aug 24, 2022
This commit adds a telemetry event named `promscale_traces_jaeger_span_types` to find types of jaeger spans ingested into promscale.

According to [1], Trace spans processed by Jaeger collector will have an internal attribute named 'internal.span.format' with one of the values 'jaeger|zipkin|proto|otlp|unknown'[2]. We can use this to infer whether promscale's gRPC remote storage implementation has been used or not.

[1] jaegertracing/jaeger#1490
[2] https://github.com/jaegertracing/jaeger/blob/b7088238c017e5a54896efbf5ed38959e885e0c5/cmd/collector/app/processor/interface.go#L56-L67

Fixes timescale/promscale#1548

Signed-off-by: Arunprasad Rajkumar <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
epic/jaeger-grpc-write Jaeger gRPC based write integration
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants