-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Enable adaptive sampling in Cassandra CI setup #7539
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 adaptive sampling in Cassandra CI setup #7539
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #7539 +/- ##
=======================================
Coverage 96.49% 96.49%
=======================================
Files 385 385
Lines 23316 23316
=======================================
Hits 22498 22498
Misses 629 629
Partials 189 189
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Fixes jaegertracing#4768 This commit addresses all action items from the issue review: 1. CI Coverage: - Added .github/workflows/ci-docker-compose-cassandra.yml - Added scripts/e2e/docker-compose-cassandra.sh 2. OTEL Environment Variables: - Detects deprecated Jaeger SDK environment variables 3. Adaptive Sampling with OTEL SDK: - E2E test validates adaptive sampling with OTEL SDK via HotROD Changes to docker-compose/jaeger-docker-compose.yml: - Fixed HotROD command to prevent crashes - Added OTEL_EXPORTER_OTLP_ENDPOINT for proper trace export - Enabled OTLP receiver on collector (ports 4317/4318) - Added custom Docker network for inter-service communication - Added Cassandra healthcheck and service dependencies - Increased sampling rate to 1.0 samples/sec for visibility Signed-off-by: Somil Jain <[email protected]>
75eec00 to
c870ab0
Compare
Metrics Comparison SummaryTotal changes across all snapshots: 430 Detailed changes per snapshotsummary_metrics_snapshot_cassandra📊 Metrics Diff SummaryTotal Changes: 134
🆕 Added Metrics
View diff sample+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="+Inf",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="0",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="10",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="100",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="1000",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="10000",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="25",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
...View diff sample+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="+Inf",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.005",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.01",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.025",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.05",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.075",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.1",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
...View diff sample+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="+Inf",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="0",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="10",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="100",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="1000",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="10000",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="25",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
...❌ Removed Metrics
View diff sample-adaptive_sampling_processor_calculate_probabilities_seconds{le="+Inf",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="0",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="10",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="100",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="1000",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="10000",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="25",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
...View diff sample-adaptive_sampling_processor_operations_calculated{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}View diff sample-jaeger_storage_attempts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_attempts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}View diff sample-jaeger_storage_inserts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_inserts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}View diff sample-jaeger_storage_latency_ok_seconds{kind="cassandra",le="+Inf",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="+Inf",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="0",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="0",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="10",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="10",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="100",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
...View diff sample-otelcol_processor_incoming_items{otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}View diff sample-otelcol_processor_internal_duration_seconds{le="+Inf",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="0",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="10",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="100",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="1000",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="10000",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="25",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
...View diff sample-otelcol_processor_outgoing_items{otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}View diff sample-sampling_operations{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}View diff sample-sampling_services{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}Total Changes: 81
❌ Removed Metrics
View diff sample-adaptive_sampling_processor_calculate_probabilities_seconds{le="+Inf",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="0",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="10",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="100",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="1000",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="10000",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="25",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
...View diff sample-adaptive_sampling_processor_operations_calculated{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}View diff sample-jaeger_storage_attempts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_attempts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}View diff sample-jaeger_storage_inserts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_inserts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}View diff sample-jaeger_storage_latency_ok_seconds{kind="cassandra",le="+Inf",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="+Inf",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="0",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="0",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="10",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="10",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="100",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
...View diff sample-otelcol_processor_incoming_items{otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}View diff sample-otelcol_processor_internal_duration_seconds{le="+Inf",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="0",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="10",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="100",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="1000",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="10000",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="25",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
...View diff sample-otelcol_processor_outgoing_items{otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}View diff sample-sampling_operations{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}View diff sample-sampling_services{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}Total Changes: 134
🆕 Added Metrics
View diff sample+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="+Inf",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="0",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="10",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="100",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="1000",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="10000",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="25",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
...View diff sample+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="+Inf",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.005",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.01",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.025",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.05",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.075",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_request_duration_seconds{http_request_method="GET",http_response_status_code="503",le="0.1",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
...View diff sample+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="+Inf",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="0",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="10",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="100",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="1000",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="10000",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
+http_server_response_body_size_bytes{http_request_method="GET",http_response_status_code="503",le="25",network_protocol_name="http",network_protocol_version="1.1",otel_scope_name="go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",otel_scope_schema_url="",otel_scope_version="0.62.0",server_address="localhost",server_port="13133",url_scheme="http"}
...❌ Removed Metrics
View diff sample-adaptive_sampling_processor_calculate_probabilities_seconds{le="+Inf",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="0",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="10",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="100",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="1000",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="10000",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="25",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
...View diff sample-adaptive_sampling_processor_operations_calculated{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}View diff sample-jaeger_storage_attempts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_attempts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}View diff sample-jaeger_storage_inserts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_inserts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}View diff sample-jaeger_storage_latency_ok_seconds{kind="cassandra",le="+Inf",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="+Inf",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="0",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="0",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="10",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="10",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="100",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
...View diff sample-otelcol_processor_incoming_items{otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}View diff sample-otelcol_processor_internal_duration_seconds{le="+Inf",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="0",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="10",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="100",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="1000",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="10000",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="25",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
...View diff sample-otelcol_processor_outgoing_items{otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}View diff sample-sampling_operations{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}View diff sample-sampling_services{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}Total Changes: 81
❌ Removed Metrics
View diff sample-adaptive_sampling_processor_calculate_probabilities_seconds{le="+Inf",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="0",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="10",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="100",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="1000",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="10000",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
-adaptive_sampling_processor_calculate_probabilities_seconds{le="25",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}
...View diff sample-adaptive_sampling_processor_operations_calculated{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}View diff sample-jaeger_storage_attempts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_attempts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}View diff sample-jaeger_storage_inserts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_inserts{kind="cassandra",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}View diff sample-jaeger_storage_latency_ok_seconds{kind="cassandra",le="+Inf",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="+Inf",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="0",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="0",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="10",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="10",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="probabilities"}
-jaeger_storage_latency_ok_seconds{kind="cassandra",le="100",name="some_storage",otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version="",role="sampling",table="operation_throughput"}
...View diff sample-otelcol_processor_incoming_items{otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}View diff sample-otelcol_processor_internal_duration_seconds{le="+Inf",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="0",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="10",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="100",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="1000",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="10000",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
-otelcol_processor_internal_duration_seconds{le="25",otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}
...View diff sample-otelcol_processor_outgoing_items{otel_scope_name="go.opentelemetry.io/collector/processor/processorhelper",otel_scope_schema_url="",otel_scope_version="",otel_signal="traces",processor="adaptive_sampling"}View diff sample-sampling_operations{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""}View diff sample-sampling_services{otel_scope_name="jaeger-v2",otel_scope_schema_url="",otel_scope_version=""} |
Signed-off-by: Somil Jain <[email protected]>
| @@ -0,0 +1,35 @@ | |||
| name: CIT Docker Compose Cassandra | |||
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 appears to be a typo in the workflow name - it should be "CI Docker Compose Cassandra" instead of "CIT Docker Compose Cassandra".
| name: CIT Docker Compose Cassandra | |
| name: CI Docker Compose Cassandra |
Spotted by Diamond
Is this helpful? React 👍 or 👎 to let us know.
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.
unnecessary, CIT stands for continued integration testing
Signed-off-by: Somil Jain <[email protected]>
|
there is only one file in this PR |
…verification logic Signed-off-by: Somil Jain <[email protected]>
@yurishkuro There are total of 4 files in my PR i.e. ci-docker-compose-cassandra.yml , jaeger-docker-compose.yml, docker-compose-cassandra.sh and check-otel-env-usage.sh . jaeger-docker-compose.yml has fix and other are for testing. |
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com> Signed-off-by: Somil Jain <[email protected]>
| @@ -0,0 +1,132 @@ | |||
| #!/bin/bash | |||
|
|
|||
| # Copyright (c) 2024 The Jaeger Authors. | |||
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.
| # Copyright (c) 2024 The Jaeger Authors. | |
| # Copyright (c) 2025 The Jaeger Authors. |
scripts/lint/check-otel-env-usage.sh
Outdated
| @@ -0,0 +1,48 @@ | |||
| #!/bin/bash | |||
|
|
|||
| # Copyright (c) 2024 The Jaeger Authors. | |||
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.
| # Copyright (c) 2024 The Jaeger Authors. | |
| # Copyright (c) 2025 The Jaeger Authors. |
scripts/lint/check-otel-env-usage.sh
Outdated
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.
If the goal of this script is just to detect deprecated variables in the Docker Compose files, could we consider removing/replacing them directly instead? That way, we wouldn’t need a recurring check and could address the issue once and for all.
scripts/lint/check-otel-env-usage.sh
Outdated
| if [ -n "$TARGET_FILE" ]; then | ||
| FILES="$TARGET_FILE" | ||
| else | ||
| FILES=$(find . -name "docker-compose*.yml" -o -name "docker-compose*.yaml" | grep -v node_modules || true) |
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.
do we have node_modules in the codebase?
it used to be tested but we since made a copy in crossdock/jaeger-docker-compose.yml. If docker-compose/jaeger-docker-compose.yml not used, why not delete it instead? |
|
Hii @yurishkuro
So we should keep both of them as per my understanding. Please correct me if I am wrong. And verify PR label check is failing, Can you please add label as it seems I dont have access to edit labels. |
… simple Signed-off-by: Somil Jain <[email protected]>
|
I understand that it's different form crossdock, but it does not explain why we still need it (especially since it's using v1 components). We have example of using adaptive sampling in cmd/jaeger/config.yaml for Jaeger v2. We can also extent cmd/jaeger/config-cassandra.yaml to include adaptive sampling config. |
|
Hi @yurishkuro, Thanks for the feedback! Below is the approach I think should be right to implement after thinking what you suggested :
Is it correct @yurishkuro ? |
…ig-cassandra to use adaptive sampling Signed-off-by: Somil Jain <[email protected]>
|
Hii @yurishkuro |
yurishkuro
left a comment
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.
We don't need that compose file and we don't need a new workflow.
Signed-off-by: Somil Jain <[email protected]>
|
Hii @yurishkuro |
yurishkuro
left a comment
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.
this doesn't fully address the underlying ticket, but I think it's fine to close as it was primarily complaining about non-functional compose file. But there are no e2e tests for adaptive sampling here, so I changed the title.
Fixes #4768
Which problem is this PR solving?
The jaeger-docker-compose.yml file had multiple issues causing HotROD to crash and adaptive sampling to fail. Additionally, this docker-compose file had never been tested in CI, which is why these issues went undetected.
Description of the changes
How was this change tested?
CI will run the full end-to-end test automatically.
Checklist
jaeger:make lint testjaeger-ui:npm run lintandnpm run test