diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 7107a91f821d..f8ad812ffbde 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -12,6 +12,31 @@ * Add Component ID(5023) for the GoZero framework. * Support Kong monitoring. * Support adding additional attr[0-4] for service level metrics. +* All self observability histogram metrics names are suffixed with `_seconds` to indicate the time unit, as per [Prometheus metrics names guide](https://prometheus.io/docs/practices/naming/), + if you have any customized configuration files that utilize these metrics, you can migrate the metrics names with our helper script `tools/migrate-so11y-metrics-names.sh`, + this script migrates the metrics names in files `*.yaml`, `*.java`, and `*.json` files, review and adjust the script if you have other file types. + NOTE: the script doesn't migrate existing metrics data. + * `browser_error_log_in_latency` -> `browser_error_log_in_latency_seconds` + * `browser_perf_data_in_latency` -> `browser_perf_data_in_latency_seconds` + * `envoy_als_in_latency` -> `envoy_als_in_latency_seconds` + * `envoy_metric_in_latency` -> `envoy_metric_in_latency_seconds` + * `event_in_latency` -> `event_in_latency_seconds` + * `graphql_query_latency` -> `graphql_query_latency_seconds` + * `k8s_als_in_latency` -> `k8s_als_in_latency_seconds` + * `log_in_latency` -> `log_in_latency_seconds` + * `mesh_analysis_latency` -> `mesh_analysis_latency_seconds` + * `meter_batch_in_latency` -> `meter_batch_in_latency_seconds` + * `meter_in_latency` -> `meter_in_latency_seconds` + * `otel_logs_latency` -> `otel_logs_latency_seconds` + * `otel_metrics_latency` -> `otel_metrics_latency_seconds` + * `otel_spans_latency` -> `otel_spans_latency_seconds` + * `persistence_timer_bulk_all_latency` -> `persistence_timer_bulk_all_latency_seconds` + * `persistence_timer_bulk_execute_latency` -> `persistence_timer_bulk_execute_latency_seconds` + * `persistence_timer_bulk_prepare_latency` -> `persistence_timer_bulk_prepare_latency_seconds` + * `profile_task_in_latency` -> `profile_task_in_latency_seconds` + * `remote_in_latency` -> `remote_in_latency_seconds` + * `telegraf_in_latency` -> `telegraf_in_latency_seconds` + * `trace_in_latency` -> `trace_in_latency_seconds` #### UI diff --git a/docs/en/setup/backend/grafana-cluster.json b/docs/en/setup/backend/grafana-cluster.json index 01c119ba493f..17ccba916810 100644 --- a/docs/en/setup/backend/grafana-cluster.json +++ b/docs/en/setup/backend/grafana-cluster.json @@ -1177,12 +1177,12 @@ "steppedLine": false, "targets": [ { - "expr": "sum(rate(trace_in_latency_count{job=\"$job\"}[1m]))", + "expr": "sum(rate(trace_in_latency_seconds_count{job=\"$job\"}[1m]))", "legendFormat": "total", "refId": "B" }, { - "expr": "rate(trace_in_latency_count{job=\"$job\"}[1m])", + "expr": "rate(trace_in_latency_seconds_count{job=\"$job\"}[1m])", "legendFormat": "{{instance}}-{{protocol}}", "refId": "A" } @@ -1271,7 +1271,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(trace_in_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(trace_in_latency_seconds_sum{job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -1454,12 +1454,12 @@ "steppedLine": false, "targets": [ { - "expr": "sum(rate(mesh_analysis_latency_count{job=\"$job\"}[1m]))", + "expr": "sum(rate(mesh_analysis_latency_seconds_count{job=\"$job\"}[1m]))", "legendFormat": "total", "refId": "A" }, { - "expr": "rate(mesh_analysis_latency_count{job=\"$job\"}[1m])", + "expr": "rate(mesh_analysis_latency_seconds_count{job=\"$job\"}[1m])", "legendFormat": "{{instance}}", "refId": "B" } @@ -1548,7 +1548,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(mesh_analysis_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(mesh_analysis_latency_seconds_sum{job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -1829,7 +1829,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(k8s_als_in_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(k8s_als_in_latency_seconds_sum{job=\"$job\"}[1m])", "interval": "", "legendFormat": "{{instance}}", "refId": "A" @@ -2006,12 +2006,12 @@ "steppedLine": false, "targets": [ { - "expr": "sum(rate(meter_in_latency_count{job=\"$job\"}[1m]))", + "expr": "sum(rate(meter_in_latency_seconds_count{job=\"$job\"}[1m]))", "legendFormat": "total", "refId": "A" }, { - "expr": "rate(meter_in_latency_count{job=\"$job\"}[1m])", + "expr": "rate(meter_in_latency_seconds_count{job=\"$job\"}[1m])", "legendFormat": "{{instance}}-{{protocol}}", "refId": "B" } @@ -2100,7 +2100,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(meter_in_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(meter_in_latency_seconds_sum{job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -2287,12 +2287,12 @@ "steppedLine": false, "targets": [ { - "expr": "sum(rate(log_in_latency_count{job=\"$job\"}[1m]))", + "expr": "sum(rate(log_in_latency_seconds_count{job=\"$job\"}[1m]))", "legendFormat": "total", "refId": "A" }, { - "expr": "rate(log_in_latency_count{job=\"$job\"}[1m])", + "expr": "rate(log_in_latency_seconds_count{job=\"$job\"}[1m])", "legendFormat": "{{instance}}-{{protocol}}", "refId": "B" } @@ -2381,7 +2381,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(log_in_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(log_in_latency_seconds_sum{job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -2568,12 +2568,12 @@ "steppedLine": false, "targets": [ { - "expr": "sum(rate(event_in_latency_count{job=\"$job\"}[1m]))", + "expr": "sum(rate(event_in_latency_seconds_count{job=\"$job\"}[1m]))", "legendFormat": "total", "refId": "A" }, { - "expr": "rate(event_in_latency_count{job=\"$job\"}[1m])", + "expr": "rate(event_in_latency_seconds_count{job=\"$job\"}[1m])", "legendFormat": "{{instance}}-{{protocol}}", "refId": "B" } @@ -2662,7 +2662,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(event_in_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(event_in_latency_seconds_sum{job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -2849,12 +2849,12 @@ "steppedLine": false, "targets": [ { - "expr": "sum(rate(browser_perf_data_in_latency_count{job=\"$job\"}[1m]))", + "expr": "sum(rate(browser_perf_data_in_latency_seconds_count{job=\"$job\"}[1m]))", "legendFormat": "total", "refId": "A" }, { - "expr": "rate(browser_perf_data_in_latency_count{job=\"$job\"}[1m])", + "expr": "rate(browser_perf_data_in_latency_seconds_count{job=\"$job\"}[1m])", "legendFormat": "{{instance}}-{{protocol}}", "refId": "B" } @@ -2943,7 +2943,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(browser_perf_data_in_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(browser_perf_data_in_latency_seconds_sum{job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -3130,12 +3130,12 @@ "steppedLine": false, "targets": [ { - "expr": "sum(rate(browser_error_log_in_latency_count{job=\"$job\"}[1m]))", + "expr": "sum(rate(browser_error_log_in_latency_seconds_seconds_count{job=\"$job\"}[1m]))", "legendFormat": "total", "refId": "A" }, { - "expr": "rate(browser_error_log_in_latency_count{job=\"$job\"}[1m])", + "expr": "rate(browser_error_log_in_latency_seconds_seconds_count{job=\"$job\"}[1m])", "legendFormat": "{{instance}}-{{protocol}}", "refId": "B" } @@ -3224,7 +3224,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(browser_error_log_in_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(browser_error_log_in_latency_seconds_seconds_sum{job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -3692,13 +3692,13 @@ "steppedLine": false, "targets": [ { - "expr": "sum(increase(trace_in_latency_count{job=\"$job\",protocol=~\"kafka-fetcher|grpc\"}[1h]))", + "expr": "sum(increase(trace_in_latency_seconds_count{job=\"$job\",protocol=~\"kafka-fetcher|grpc\"}[1h]))", "interval": "1h", "legendFormat": "Current Week", "refId": "B" }, { - "expr": "sum(increase(trace_in_latency_count{job=\"$job\",protocol=~\"kafka-fetcher|grpc\"}[1h] offset 1w))", + "expr": "sum(increase(trace_in_latency_seconds_count{job=\"$job\",protocol=~\"kafka-fetcher|grpc\"}[1h] offset 1w))", "interval": "1h", "legendFormat": "Last Week", "refId": "A" @@ -3787,13 +3787,13 @@ "steppedLine": false, "targets": [ { - "expr": "sum(increase(trace_in_latency_count{job=\"$job\",protocol=~\"kafka-fetcher|grpc\"}[1d]))", + "expr": "sum(increase(trace_in_latency_seconds_count{job=\"$job\",protocol=~\"kafka-fetcher|grpc\"}[1d]))", "interval": "1d", "legendFormat": "Current Week", "refId": "B" }, { - "expr": "sum(increase(trace_in_latency_count{job=\"$job\",protocol=~\"kafka-fetcher|grpc\"}[1d] offset 1w))", + "expr": "sum(increase(trace_in_latency_seconds_count{job=\"$job\",protocol=~\"kafka-fetcher|grpc\"}[1d] offset 1w))", "interval": "1d", "legendFormat": "Last Week", "refId": "A" @@ -4066,12 +4066,12 @@ "steppedLine": false, "targets": [ { - "expr": "sum(rate(remote_in_latency_count{job=\"$job\"}[1m]))", + "expr": "sum(rate(remote_in_latency_seconds_count{job=\"$job\"}[1m]))", "legendFormat": "total", "refId": "A" }, { - "expr": "rate(remote_in_latency_count{job=\"$job\"}[1m])", + "expr": "rate(remote_in_latency_seconds_count{job=\"$job\"}[1m])", "legendFormat": "{{instance}}", "refId": "B" } @@ -4231,7 +4231,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(persistence_timer_bulk_prepare_latency_count{job=\"$job\"}[1m])", + "expr": "increase(persistence_timer_bulk_prepare_latency_seconds_count{job=\"$job\"}[1m])", "instant": false, "interval": "1m", "legendFormat": "{{instance}}", @@ -4322,7 +4322,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(persistence_timer_bulk_prepare_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(persistence_timer_bulk_prepare_latency_seconds_sum{job=\"$job\"}[1m])", "interval": "1m", "legendFormat": "{{instance}}", "refId": "A" @@ -4412,7 +4412,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(persistence_timer_bulk_execute_latency_count{job=\"$job\"}[1m])", + "expr": "increase(persistence_timer_bulk_execute_latency_seconds_count{job=\"$job\"}[1m])", "interval": "1m", "legendFormat": "{{instance}}", "refId": "A" @@ -4502,7 +4502,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(persistence_timer_bulk_execute_latency_sum{job=\"$job\"}[1m])", + "expr": "increase(persistence_timer_bulk_execute_latency_seconds_sum{job=\"$job\"}[1m])", "interval": "1m", "legendFormat": "{{instance}}", "refId": "A" diff --git a/docs/en/setup/backend/grafana-instance.json b/docs/en/setup/backend/grafana-instance.json index 530c995b9534..375fe4b64296 100644 --- a/docs/en/setup/backend/grafana-instance.json +++ b/docs/en/setup/backend/grafana-instance.json @@ -1787,7 +1787,7 @@ "steppedLine": false, "targets": [ { - "expr": "rate(trace_in_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "rate(trace_in_latency_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "intervalFactor": 1, @@ -1879,7 +1879,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(trace_in_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(trace_in_latency_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -2064,7 +2064,7 @@ "steppedLine": false, "targets": [ { - "expr": "rate(mesh_analysis_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "rate(mesh_analysis_latency_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "intervalFactor": 1, @@ -2156,7 +2156,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(mesh_analysis_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(mesh_analysis_latency_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -2426,7 +2426,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(k8s_als_in_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(k8s_als_in_latency_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "interval": "", "legendFormat": "", "refId": "A" @@ -2599,7 +2599,7 @@ "steppedLine": false, "targets": [ { - "expr": "rate(meter_in_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "rate(meter_in_latency_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "intervalFactor": 1, @@ -2691,7 +2691,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(meter_in_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(meter_in_latency_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -2876,7 +2876,7 @@ "steppedLine": false, "targets": [ { - "expr": "rate(log_in_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "rate(log_in_latency_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "intervalFactor": 1, @@ -2968,7 +2968,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(log_in_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(log_in_latency_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -3153,7 +3153,7 @@ "steppedLine": false, "targets": [ { - "expr": "rate(event_in_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "rate(event_in_latency_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "intervalFactor": 1, @@ -3245,7 +3245,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(event_in_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(event_in_latency_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -3430,7 +3430,7 @@ "steppedLine": false, "targets": [ { - "expr": "rate(browser_perf_data_in_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "rate(browser_perf_data_in_latency_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "intervalFactor": 1, @@ -3522,7 +3522,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(browser_perf_data_in_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(browser_perf_data_in_latency_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -3707,7 +3707,7 @@ "steppedLine": false, "targets": [ { - "expr": "rate(browser_error_log_in_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "rate(browser_error_log_in_latency_seconds_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "intervalFactor": 1, @@ -3799,7 +3799,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(browser_error_log_in_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(browser_error_log_in_latency_seconds_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "instant": false, @@ -4261,7 +4261,7 @@ "steppedLine": false, "targets": [ { - "expr": "sum(increase(trace_in_latency_count{job=\"$job\",instance=\"$instance\",protocol=~\"kafka-fetcher|grpc\"}[1h]))", + "expr": "sum(increase(trace_in_latency_seconds_count{job=\"$job\",instance=\"$instance\",protocol=~\"kafka-fetcher|grpc\"}[1h]))", "format": "time_series", "hide": false, "interval": "1h", @@ -4270,7 +4270,7 @@ "refId": "A" }, { - "expr": "sum(increase(trace_in_latency_count{job=\"$job\",instance=\"$instance\",protocol=~\"kafka-fetcher|grpc\"}[1h] offset 1w))", + "expr": "sum(increase(trace_in_latency_seconds_count{job=\"$job\",instance=\"$instance\",protocol=~\"kafka-fetcher|grpc\"}[1h] offset 1w))", "interval": "1h", "legendFormat": "Last Week", "refId": "B" @@ -4359,7 +4359,7 @@ "steppedLine": false, "targets": [ { - "expr": "sum(increase(trace_in_latency_count{job=\"$job\",instance=\"$instance\",protocol=~\"kafka-fetcher|grpc\"}[1d]))", + "expr": "sum(increase(trace_in_latency_seconds_count{job=\"$job\",instance=\"$instance\",protocol=~\"kafka-fetcher|grpc\"}[1d]))", "format": "time_series", "hide": false, "interval": "1d", @@ -4368,7 +4368,7 @@ "refId": "A" }, { - "expr": "sum(increase(trace_in_latency_count{job=\"$job\",instance=\"$instance\",protocol=~\"kafka-fetcher|grpc\"}[1d] offset 1w))", + "expr": "sum(increase(trace_in_latency_seconds_count{job=\"$job\",instance=\"$instance\",protocol=~\"kafka-fetcher|grpc\"}[1d] offset 1w))", "interval": "1d", "legendFormat": "Last Week", "refId": "B" @@ -4641,7 +4641,7 @@ "steppedLine": false, "targets": [ { - "expr": "rate(remote_in_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "rate(remote_in_latency_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "intervalFactor": 1, @@ -4796,7 +4796,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(persistence_timer_bulk_prepare_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(persistence_timer_bulk_prepare_latency_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "interval": "1m", @@ -4889,7 +4889,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(persistence_timer_bulk_prepare_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(persistence_timer_bulk_prepare_latency_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "interval": "1m", @@ -4982,7 +4982,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(persistence_timer_bulk_execute_latency_count{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(persistence_timer_bulk_execute_latency_seconds_count{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "interval": "1m", @@ -5075,7 +5075,7 @@ "steppedLine": false, "targets": [ { - "expr": "increase(persistence_timer_bulk_execute_latency_sum{instance=\"$instance\",job=\"$job\"}[1m])", + "expr": "increase(persistence_timer_bulk_execute_latency_seconds_sum{instance=\"$instance\",job=\"$job\"}[1m])", "format": "time_series", "hide": false, "interval": "1m", diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgHistogramFunction.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgHistogramFunction.java index 80b8872f2204..09099d825cf9 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgHistogramFunction.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgHistogramFunction.java @@ -48,8 +48,8 @@ * The acceptable bucket value should be a result from one of "increase", "rate" and "irate" query functions. That means * the value is the increase or per-second instant rate of increase in a specific range. * - * Example: "persistence_timer_bulk_execute_latency" is histogram, the possible PromQL format of acceptable bucket value - * should be: "increase(persistence_timer_bulk_execute_latency{service="oap-server", instance="localhost:1234"}[5m])" + * Example: "persistence_timer_bulk_execute_latency_seconds" is histogram, the possible PromQL format of acceptable bucket value + * should be: "increase(persistence_timer_bulk_execute_latency_seconds{service="oap-server", instance="localhost:1234"}[5m])" */ @MeterFunction(functionName = "avgHistogram") @Slf4j diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgHistogramPercentileFunction.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgHistogramPercentileFunction.java index 570d7ab24747..4ed1787fc77c 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgHistogramPercentileFunction.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgHistogramPercentileFunction.java @@ -62,8 +62,8 @@ * Then AvgPercentileFunction calculates percentile based on the above buckets. * * Example: - * "persistence_timer_bulk_execute_latency" is histogram, the possible PromQL format of acceptable bucket value should be: - * "increase(persistence_timer_bulk_execute_latency{service="oap-server", instance="localhost:1234"}[5m])" + * "persistence_timer_bulk_execute_latency_seconds" is histogram, the possible PromQL format of acceptable bucket value should be: + * "increase(persistence_timer_bulk_execute_latency_seconds{service="oap-server", instance="localhost:1234"}[5m])" */ @MeterFunction(functionName = "avgHistogramPercentile") @Slf4j diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/remote/RemoteServiceHandler.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/remote/RemoteServiceHandler.java index 05df02633b13..2b38c7b1d23f 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/remote/RemoteServiceHandler.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/remote/RemoteServiceHandler.java @@ -87,7 +87,7 @@ public RemoteServiceHandler(ModuleDefineHolder moduleDefineHolder) { .provider() .getService(MetricsCreator.class) .createHistogramMetric( - "remote_in_latency", + "remote_in_latency_seconds", "The latency(server side) of inside remote inside aggregate rpc.", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE ); diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/PersistenceTimer.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/PersistenceTimer.java index f191057370e5..80cfbb32efad 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/PersistenceTimer.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/PersistenceTimer.java @@ -68,14 +68,14 @@ public void start(ModuleManager moduleManager, CoreModuleConfig moduleConfig) { MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE ); prepareLatency = metricsCreator.createHistogramMetric( - "persistence_timer_bulk_prepare_latency", + "persistence_timer_bulk_prepare_latency_seconds", "Latency of the prepare stage in persistence timer", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE, // 50ms -> 30s should be a proper range for the persistence timer prepare stage .05, .075, .1, .25, .5, .75, 1, 3, 5, 10, 30 ); executeLatency = metricsCreator.createHistogramMetric( - "persistence_timer_bulk_execute_latency", + "persistence_timer_bulk_execute_latency_seconds", "Latency of the execute stage in persistence timer", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE, // 500ms -> 2min should be a proper range for the persistence timer execute stage @@ -83,7 +83,7 @@ public void start(ModuleManager moduleManager, CoreModuleConfig moduleConfig) { 0.5, 1, 3, 5, 10, 15, 20, 25, 50, 120 ); allLatency = metricsCreator.createHistogramMetric( - "persistence_timer_bulk_all_latency", "Latency of the all stage in persistence timer", + "persistence_timer_bulk_all_latency_seconds", "Latency of the all stage in persistence timer", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE, // 500ms -> 2min should be a proper range for the persistence timer 0.5, 1, 3, 5, 10, 15, 20, 25, 50, 120 diff --git a/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/LogHandler.java b/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/LogHandler.java index c563d7a5cc60..2af64c9fbb3b 100644 --- a/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/LogHandler.java +++ b/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/LogHandler.java @@ -49,7 +49,7 @@ public LogHandler(final ModuleManager moduleManager, .provider() .getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "log_in_latency", + "log_in_latency_seconds", "The process latency of log", new MetricsTag.Keys("protocol", "data_format"), new MetricsTag.Values("kafka", getDataFormat()) diff --git a/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/MeterServiceHandler.java b/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/MeterServiceHandler.java index 25efc830500c..b3c3a2862a3a 100644 --- a/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/MeterServiceHandler.java +++ b/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/MeterServiceHandler.java @@ -50,13 +50,13 @@ public MeterServiceHandler(ModuleManager manager, KafkaFetcherConfig config) { .provider() .getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "meter_in_latency", + "meter_in_latency_seconds", "The process latency of meter", new MetricsTag.Keys("protocol"), new MetricsTag.Values("kafka") ); histogramBatch = metricsCreator.createHistogramMetric( - "meter_batch_in_latency", + "meter_batch_in_latency_seconds", "The process latency of meter", new MetricsTag.Keys("protocol"), new MetricsTag.Values("kafka") diff --git a/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/ProfileTaskHandler.java b/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/ProfileTaskHandler.java index 98a851afcd8b..7c4d4250b592 100644 --- a/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/ProfileTaskHandler.java +++ b/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/ProfileTaskHandler.java @@ -49,7 +49,7 @@ public ProfileTaskHandler(ModuleManager manager, KafkaFetcherConfig config) { .provider() .getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "profile_task_in_latency", + "profile_task_in_latency_seconds", "The process latency of profile task", new Keys("protocol"), new Values("kafka") diff --git a/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/TraceSegmentHandler.java b/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/TraceSegmentHandler.java index 8eee60589fc3..6e2cd2c3bf17 100644 --- a/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/TraceSegmentHandler.java +++ b/oap-server/server-fetcher-plugin/kafka-fetcher-plugin/src/main/java/org/apache/skywalking/oap/server/analyzer/agent/kafka/provider/handler/TraceSegmentHandler.java @@ -54,7 +54,7 @@ public TraceSegmentHandler(ModuleManager moduleManager, KafkaFetcherConfig confi .provider().getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "trace_in_latency", + "trace_in_latency_seconds", "The process latency of trace data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("kafka") diff --git a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryHandler.java b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryHandler.java index bb51696637b2..dcc8a97bbb7f 100644 --- a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryHandler.java +++ b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryHandler.java @@ -48,7 +48,7 @@ public class GraphQLQueryHandler { .provider() .getService(MetricsCreator.class) .createHistogramMetric( - "graphql_query_latency", + "graphql_query_latency_seconds", "The processing latency of graphql query", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE); diff --git a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/AccessLogServiceGRPCHandler.java b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/AccessLogServiceGRPCHandler.java index 2406ea1c8b85..9d56f2e14b4a 100644 --- a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/AccessLogServiceGRPCHandler.java +++ b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/AccessLogServiceGRPCHandler.java @@ -86,7 +86,7 @@ public AccessLogServiceGRPCHandler(ModuleManager manager, MetricsTag.EMPTY_VALUE ); histogram = metricCreator.createHistogramMetric( - "envoy_als_in_latency", "The process latency of service ALS metric receiver", MetricsTag.EMPTY_KEY, + "envoy_als_in_latency_seconds", "The process latency of service ALS metric receiver", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE ); sourceDispatcherCounter = metricCreator.createCounter( diff --git a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java index bb40f18f3a84..05ecc749f510 100644 --- a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java +++ b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java @@ -69,7 +69,7 @@ public MetricServiceGRPCHandler(final ModuleManager moduleManager, MetricsTag.EMPTY_VALUE ); histogram = metricsCreator.createHistogramMetric( - "envoy_metric_in_latency", "The process latency of service metrics receiver", MetricsTag.EMPTY_KEY, + "envoy_metric_in_latency_seconds", "The process latency of service metrics receiver", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE ); diff --git a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryLogHandler.java b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryLogHandler.java index 35c75b7ace75..101360d63878 100644 --- a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryLogHandler.java +++ b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryLogHandler.java @@ -64,7 +64,7 @@ public class OpenTelemetryLogHandler @Getter(lazy = true) private final HistogramMetrics processHistogram = getMetricsCreator().createHistogramMetric( - "otel_logs_latency", + "otel_logs_latency_seconds", "The latency to process the logs request", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE diff --git a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java index ae60bdbade3c..0ceb3152d231 100644 --- a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java +++ b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java @@ -85,7 +85,7 @@ public class OpenTelemetryMetricRequestProcessor implements Service { @Getter(lazy = true) private final HistogramMetrics processHistogram = getMetricsCreator().createHistogramMetric( - "otel_metrics_latency", + "otel_metrics_latency_seconds", "The latency to process the metrics request", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE, diff --git a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryTraceHandler.java b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryTraceHandler.java index f1b687ba50d7..f5931512c6a4 100644 --- a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryTraceHandler.java +++ b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryTraceHandler.java @@ -74,7 +74,7 @@ public class OpenTelemetryTraceHandler @Getter(lazy = true) private final HistogramMetrics processHistogram = getMetricsCreator().createHistogramMetric( - "otel_spans_latency", + "otel_spans_latency_seconds", "The latency to process the span request", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE diff --git a/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/grpc/BrowserPerfServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/grpc/BrowserPerfServiceHandler.java index 61f55f848b41..8c5496fa4021 100644 --- a/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/grpc/BrowserPerfServiceHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/grpc/BrowserPerfServiceHandler.java @@ -69,7 +69,7 @@ public BrowserPerfServiceHandler(ModuleManager moduleManager, // performance perfHistogram = metricsCreator.createHistogramMetric( - "browser_perf_data_in_latency", "The process latency of browser performance data", + "browser_perf_data_in_latency_seconds", "The process latency of browser performance data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("grpc") ); perfErrorCounter = metricsCreator.createCounter( @@ -79,7 +79,7 @@ public BrowserPerfServiceHandler(ModuleManager moduleManager, // error log errorLogHistogram = metricsCreator.createHistogramMetric( - "browser_error_log_in_latency", "The process latency of browser error log", new MetricsTag.Keys("protocol"), + "browser_error_log_in_latency_seconds_seconds", "The process latency of browser error log", new MetricsTag.Keys("protocol"), new MetricsTag.Values("grpc") ); logErrorCounter = metricsCreator.createCounter( diff --git a/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/rest/BrowserPerfServiceHTTPHandler.java b/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/rest/BrowserPerfServiceHTTPHandler.java index cd55a9adaa45..2470c7bb60f2 100644 --- a/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/rest/BrowserPerfServiceHTTPHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-browser-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/browser/provider/handler/rest/BrowserPerfServiceHTTPHandler.java @@ -64,7 +64,7 @@ public BrowserPerfServiceHTTPHandler(ModuleManager moduleManager, .getService(MetricsCreator.class); perfHistogram = metricsCreator.createHistogramMetric( - "browser_perf_data_in_latency", "The process latency of browser performance data", + "browser_perf_data_in_latency_seconds", "The process latency of browser performance data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("http") ); perfErrorCounter = metricsCreator.createCounter( @@ -73,7 +73,7 @@ public BrowserPerfServiceHTTPHandler(ModuleManager moduleManager, ); errorLogHistogram = metricsCreator.createHistogramMetric( - "browser_error_log_in_latency", "The process latency of browser error log", new MetricsTag.Keys("protocol"), + "browser_error_log_in_latency_seconds_seconds", "The process latency of browser error log", new MetricsTag.Keys("protocol"), new MetricsTag.Values("http") ); logErrorCounter = metricsCreator.createCounter( diff --git a/oap-server/server-receiver-plugin/skywalking-ebpf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/ebpf/provider/handler/AccessLogServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-ebpf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/ebpf/provider/handler/AccessLogServiceHandler.java index cd1421678a8a..f69dd9507ac0 100644 --- a/oap-server/server-receiver-plugin/skywalking-ebpf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/ebpf/provider/handler/AccessLogServiceHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-ebpf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/ebpf/provider/handler/AccessLogServiceHandler.java @@ -110,7 +110,7 @@ public AccessLogServiceHandler(ModuleManager moduleManager) { "k8s_als_error_streams", "The error count of eBPF log streams that OAP failed to process", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE); this.processHistogram = metricsCreator.createHistogramMetric( - "k8s_als_in_latency", "The processing latency of eBPF log streams", MetricsTag.EMPTY_KEY, + "k8s_als_in_latency_seconds", "The processing latency of eBPF log streams", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE); this.dropCounter = metricsCreator.createCounter( "k8s_als_drop_count", "The count of eBPF log entries dropped", MetricsTag.EMPTY_KEY, diff --git a/oap-server/server-receiver-plugin/skywalking-event-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/event/grpc/EventGrpcServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-event-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/event/grpc/EventGrpcServiceHandler.java index 005afd0580bb..5e8795f7e917 100644 --- a/oap-server/server-receiver-plugin/skywalking-event-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/event/grpc/EventGrpcServiceHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-event-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/event/grpc/EventGrpcServiceHandler.java @@ -54,7 +54,7 @@ public EventGrpcServiceHandler(ModuleManager moduleManager) { .getService(EventAnalyzerService.class); histogram = metricsCreator.createHistogramMetric( - "event_in_latency", "The process latency of event data", + "event_in_latency_seconds", "The process latency of event data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("grpc") ); errorCounter = metricsCreator.createCounter( diff --git a/oap-server/server-receiver-plugin/skywalking-event-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/event/rest/EventRestServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-event-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/event/rest/EventRestServiceHandler.java index 13ca96bf1920..33ac7062f5b9 100644 --- a/oap-server/server-receiver-plugin/skywalking-event-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/event/rest/EventRestServiceHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-event-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/event/rest/EventRestServiceHandler.java @@ -52,7 +52,7 @@ public EventRestServiceHandler(final ModuleManager manager) { .getService(EventAnalyzerService.class); histogram = metricsCreator.createHistogramMetric( - "event_in_latency", "The process latency of event data", + "event_in_latency_seconds", "The process latency of event data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("http") ); errorCounter = metricsCreator.createCounter( diff --git a/oap-server/server-receiver-plugin/skywalking-log-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/log/provider/handler/grpc/LogReportServiceGrpcHandler.java b/oap-server/server-receiver-plugin/skywalking-log-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/log/provider/handler/grpc/LogReportServiceGrpcHandler.java index a85d969b58d7..5a90eb86bf43 100644 --- a/oap-server/server-receiver-plugin/skywalking-log-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/log/provider/handler/grpc/LogReportServiceGrpcHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-log-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/log/provider/handler/grpc/LogReportServiceGrpcHandler.java @@ -52,7 +52,7 @@ public LogReportServiceGrpcHandler(final ModuleManager moduleManager) { .getService(ILogAnalyzerService.class); histogram = metricsCreator.createHistogramMetric( - "log_in_latency", "The process latency of log", + "log_in_latency_seconds", "The process latency of log", new MetricsTag.Keys("protocol"), new MetricsTag.Values("grpc") ); errorCounter = metricsCreator.createCounter("log_analysis_error_count", "The error number of log analysis", diff --git a/oap-server/server-receiver-plugin/skywalking-log-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/log/provider/handler/rest/LogReportServiceHTTPHandler.java b/oap-server/server-receiver-plugin/skywalking-log-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/log/provider/handler/rest/LogReportServiceHTTPHandler.java index b196a809344f..4d5788bdcbb7 100644 --- a/oap-server/server-receiver-plugin/skywalking-log-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/log/provider/handler/rest/LogReportServiceHTTPHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-log-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/log/provider/handler/rest/LogReportServiceHTTPHandler.java @@ -49,7 +49,7 @@ public LogReportServiceHTTPHandler(final ModuleManager moduleManager) { .getService(ILogAnalyzerService.class); histogram = metricsCreator.createHistogramMetric( - "log_in_latency", "The process latency of log", + "log_in_latency_seconds", "The process latency of log", new MetricsTag.Keys("protocol"), new MetricsTag.Values("http") ); errorCounter = metricsCreator.createCounter( diff --git a/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/TelemetryDataDispatcher.java b/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/TelemetryDataDispatcher.java index 11cdf191acbc..4142780e49fb 100644 --- a/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/TelemetryDataDispatcher.java +++ b/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/TelemetryDataDispatcher.java @@ -77,7 +77,7 @@ public static void init(ModuleManager moduleManager) { .provider() .getService(NamingControl.class); MESH_ANALYSIS_METRICS = metricsCreator.createHistogramMetric( - "mesh_analysis_latency", "The process latency of service mesh telemetry", MetricsTag.EMPTY_KEY, + "mesh_analysis_latency_seconds", "The process latency of service mesh telemetry", MetricsTag.EMPTY_KEY, MetricsTag.EMPTY_VALUE ); MESH_ERROR_METRICS = metricsCreator.createCounter("mesh_analysis_error_count", diff --git a/oap-server/server-receiver-plugin/skywalking-meter-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/meter/provider/handler/MeterServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-meter-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/meter/provider/handler/MeterServiceHandler.java index c38ebd9e50a5..93cfedc49675 100644 --- a/oap-server/server-receiver-plugin/skywalking-meter-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/meter/provider/handler/MeterServiceHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-meter-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/meter/provider/handler/MeterServiceHandler.java @@ -51,7 +51,7 @@ public MeterServiceHandler(ModuleManager manager, IMeterProcessService processSe .provider() .getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "meter_in_latency", "The process latency of meter", + "meter_in_latency_seconds", "The process latency of meter", new MetricsTag.Keys("protocol"), new MetricsTag.Values("grpc") ); errorCounter = metricsCreator.createCounter("meter_analysis_error_count", "The error number of meter analysis", diff --git a/oap-server/server-receiver-plugin/skywalking-telegraf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/telegraf/provider/handler/TelegrafServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-telegraf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/telegraf/provider/handler/TelegrafServiceHandler.java index cd4dde417006..2cb355b66dd4 100644 --- a/oap-server/server-receiver-plugin/skywalking-telegraf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/telegraf/provider/handler/TelegrafServiceHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-telegraf-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/telegraf/provider/handler/TelegrafServiceHandler.java @@ -59,7 +59,7 @@ public TelegrafServiceHandler(ModuleManager moduleManager, MeterSystem meterSyst .getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "telegraf_in_latency", "The process latency of telegraf data", + "telegraf_in_latency_seconds", "The process latency of telegraf data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("http") ); diff --git a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/grpc/TraceSegmentReportServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/grpc/TraceSegmentReportServiceHandler.java index 1512430c4b4f..d010447e80fa 100644 --- a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/grpc/TraceSegmentReportServiceHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/grpc/TraceSegmentReportServiceHandler.java @@ -51,7 +51,7 @@ public TraceSegmentReportServiceHandler(ModuleManager moduleManager) { .provider() .getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "trace_in_latency", "The process latency of trace data", + "trace_in_latency_seconds", "The process latency of trace data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("grpc") ); errorCounter = metricsCreator.createCounter("trace_analysis_error_count", "The error number of trace analysis", diff --git a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/rest/TraceSegmentReportHandler.java b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/rest/TraceSegmentReportHandler.java index b64106babceb..1e87c836df1f 100644 --- a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/rest/TraceSegmentReportHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/handler/v8/rest/TraceSegmentReportHandler.java @@ -46,7 +46,7 @@ public TraceSegmentReportHandler(ModuleManager moduleManager) { .provider() .getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "trace_in_latency", "The process latency of trace data", + "trace_in_latency_seconds", "The process latency of trace data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("http") ); errorCounter = metricsCreator.createCounter( diff --git a/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/handler/ZipkinSpanHTTPHandler.java b/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/handler/ZipkinSpanHTTPHandler.java index ea42404adeee..cf14cffd9a9a 100644 --- a/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/handler/ZipkinSpanHTTPHandler.java +++ b/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/handler/ZipkinSpanHTTPHandler.java @@ -51,7 +51,7 @@ public ZipkinSpanHTTPHandler(SpanForward forward, ModuleManager manager) { .provider() .getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "trace_in_latency", "The process latency of trace data", + "trace_in_latency_seconds", "The process latency of trace data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("zipkin-http") ); errorCounter = metricsCreator.createCounter( diff --git a/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/kafka/KafkaHandler.java b/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/kafka/KafkaHandler.java index bdcac89ff46f..839c2b934979 100644 --- a/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/kafka/KafkaHandler.java +++ b/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/kafka/KafkaHandler.java @@ -91,7 +91,7 @@ public KafkaHandler(final ZipkinReceiverConfig config, SpanForward forward, Modu .provider() .getService(MetricsCreator.class); histogram = metricsCreator.createHistogramMetric( - "trace_in_latency", + "trace_in_latency_seconds", "The process latency of trace data", new MetricsTag.Keys("protocol"), new MetricsTag.Values("zipkin-kafka") diff --git a/oap-server/server-starter/src/main/resources/otel-rules/oap.yaml b/oap-server/server-starter/src/main/resources/otel-rules/oap.yaml index 72e6b92284f5..6271c941e475 100644 --- a/oap-server/server-starter/src/main/resources/otel-rules/oap.yaml +++ b/oap-server/server-starter/src/main/resources/otel-rules/oap.yaml @@ -49,15 +49,15 @@ metricsRules: .tag({tags -> if (tags['gc'] == 'PS Scavenge' || tags['gc'] == 'Copy' || tags['gc'] == 'ParNew' || tags['gc'] == 'G1 Young Generation') {tags.gc = 'young_gc_time'} }) .tag({tags -> if (tags['gc'] == 'PS MarkSweep' || tags['gc'] == 'MarkSweepCompact' || tags['gc'] == 'ConcurrentMarkSweep' || tags['gc'] == 'G1 Old Generation') {tags.gc = 'old_gc_time'} }) - name: instance_trace_count - exp: trace_in_latency_count.sum(['service', 'host_name']).increase('PT1M') + exp: trace_in_latency_seconds_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_trace_latency_percentile - exp: trace_in_latency.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) + exp: trace_in_latency_seconds.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) - name: instance_trace_analysis_error_count exp: trace_analysis_error_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_mesh_count - exp: mesh_analysis_latency_count.sum(['service', 'host_name']).increase('PT1M') + exp: mesh_analysis_latency_seconds_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_mesh_latency_percentile - exp: mesh_analysis_latency.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) + exp: mesh_analysis_latency_seconds.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) - name: instance_mesh_analysis_error_count exp: mesh_analysis_error_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_metrics_aggregation @@ -65,15 +65,15 @@ metricsRules: metrics_aggregation.tagEqual('dimensionality', 'minute').sum(['service', 'host_name', 'level']).increase('PT1M') .tag({tags -> if (tags['level'] == '1') {tags.level = 'L1 aggregation'} }).tag({tags -> if (tags['level'] == '2') {tags.level = 'L2 aggregation'} }) - name: instance_persistence_execute_percentile - exp: persistence_timer_bulk_execute_latency.sum(['le', 'service', 'host_name']).increase('PT5M').histogram().histogram_percentile([50,70,90,99]) + exp: persistence_timer_bulk_execute_latency_seconds.sum(['le', 'service', 'host_name']).increase('PT5M').histogram().histogram_percentile([50,70,90,99]) - name: instance_persistence_prepare_percentile - exp: persistence_timer_bulk_prepare_latency.sum(['le', 'service', 'host_name']).increase('PT5M').histogram().histogram_percentile([50,70,90,99]) + exp: persistence_timer_bulk_prepare_latency_seconds.sum(['le', 'service', 'host_name']).increase('PT5M').histogram().histogram_percentile([50,70,90,99]) - name: instance_persistence_error_count exp: persistence_timer_bulk_error_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_persistence_execute_count - exp: persistence_timer_bulk_execute_latency_count.sum(['service', 'host_name']).increase('PT1M') + exp: persistence_timer_bulk_execute_latency_seconds_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_persistence_prepare_count - exp: persistence_timer_bulk_prepare_latency_count.sum(['service', 'host_name']).increase('PT1M') + exp: persistence_timer_bulk_prepare_latency_seconds_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_metrics_persistent_cache exp: metrics_persistent_cache.sum(['service', 'host_name', 'status']).increase('PT1M') - name: jvm_thread_live_count @@ -101,26 +101,26 @@ metricsRules: - name: instance_k8s_als_drop exp: k8s_als_drop_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_k8s_als_latency_percentile - exp: k8s_als_in_latency.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) + exp: k8s_als_in_latency_seconds.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) - name: instance_k8s_als_streams - exp: k8s_als_in_latency_count.sum(['service', 'host_name']).increase('PT1M') + exp: k8s_als_in_latency_seconds_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_k8s_als_error_streams exp: k8s_als_error_streams.sum(['service', 'host_name']).increase('PT1M') - name: otel_metrics_received - exp: otel_metrics_latency_count.sum(['service', 'host_name']).increase('PT1M') + exp: otel_metrics_latency_seconds_count.sum(['service', 'host_name']).increase('PT1M') - name: otel_logs_received - exp: otel_logs_latency_count.sum(['service', 'host_name']).increase('PT1M') + exp: otel_logs_latency_seconds_count.sum(['service', 'host_name']).increase('PT1M') - name: otel_spans_received - exp: otel_spans_latency_count.sum(['service', 'host_name']).increase('PT1M') - - name: otel_metrics_latency_percentile - exp: otel_metrics_latency.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) - - name: otel_logs_latency_percentile - exp: otel_logs_latency.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) - - name: otel_spans_latency_percentile - exp: otel_spans_latency.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) - - name: graphql_query_latency_percentile - exp: graphql_query_latency.sum(['le', 'service', 'host_name']).increase('PT5M').histogram().histogram_percentile([50,70,90,99]) + exp: otel_spans_latency_seconds_count.sum(['service', 'host_name']).increase('PT1M') + - name: otel_metrics_latency_seconds_percentile + exp: otel_metrics_latency_seconds.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) + - name: otel_logs_latency_seconds_percentile + exp: otel_logs_latency_seconds.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) + - name: otel_spans_latency_seconds_percentile + exp: otel_spans_latency_seconds.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) + - name: graphql_query_latency_seconds_percentile + exp: graphql_query_latency_seconds.sum(['le', 'service', 'host_name']).increase('PT5M').histogram().histogram_percentile([50,70,90,99]) - name: instance_graphql_query_count - exp: graphql_query_latency_count.sum(['service', 'host_name']).increase('PT1M') + exp: graphql_query_latency_seconds_count.sum(['service', 'host_name']).increase('PT1M') - name: instance_graphql_query_error_count exp: graphql_query_error_count.sum(['service', 'host_name']).increase('PT1M') diff --git a/oap-server/server-starter/src/main/resources/ui-initialized-templates/so11y_oap/so11y-instance.json b/oap-server/server-starter/src/main/resources/ui-initialized-templates/so11y_oap/so11y-instance.json index 3a9403c26043..de4174d29837 100644 --- a/oap-server/server-starter/src/main/resources/ui-initialized-templates/so11y_oap/so11y-instance.json +++ b/oap-server/server-starter/src/main/resources/ui-initialized-templates/so11y_oap/so11y-instance.json @@ -324,7 +324,7 @@ "i": "16", "type": "Widget", "expressions": [ - "relabels(meter_oap_graphql_query_latency_percentile{p='50,75,90,95,99'},p='50,75,90,95,99',percentile='50,75,90,95,99')" + "relabels(meter_oap_graphql_query_latency_seconds_percentile{p='50,75,90,95,99'},p='50,75,90,95,99',percentile='50,75,90,95,99')" ], "graph": { "type": "Line", @@ -606,7 +606,7 @@ "i": "22", "type": "Widget", "expressions": [ - "relabels(meter_oap_otel_metrics_latency_percentile{p='50,75,90,95,99'},p='50,75,90,95,99',percentile='50,75,90,95,99')" + "relabels(meter_oap_otel_metrics_latency_seconds_percentile{p='50,75,90,95,99'},p='50,75,90,95,99',percentile='50,75,90,95,99')" ], "graph": { "type": "Line", @@ -628,7 +628,7 @@ "i": "23", "type": "Widget", "expressions": [ - "relabels(meter_oap_otel_spans_latency_percentile{p='50,75,90,95,99'},p='50,75,90,95,99',percentile='50,75,90,95,99')" + "relabels(meter_oap_otel_spans_latency_seconds_percentile{p='50,75,90,95,99'},p='50,75,90,95,99',percentile='50,75,90,95,99')" ], "graph": { "type": "Line", @@ -650,7 +650,7 @@ "i": "24", "type": "Widget", "expressions": [ - "relabels(meter_oap_otel_logs_latency_percentile{p='50,75,90,95,99'},p='50,75,90,95,99',percentile='50,75,90,95,99')" + "relabels(meter_oap_otel_logs_latency_seconds_percentile{p='50,75,90,95,99'},p='50,75,90,95,99',percentile='50,75,90,95,99')" ], "graph": { "type": "Line", diff --git a/test/e2e-v2/cases/exporter/kafka/exporter-cases.yaml b/test/e2e-v2/cases/exporter/kafka/exporter-cases.yaml index c77185c388da..3c1f6deb3d8d 100644 --- a/test/e2e-v2/cases/exporter/kafka/exporter-cases.yaml +++ b/test/e2e-v2/cases/exporter/kafka/exporter-cases.yaml @@ -17,7 +17,7 @@ cases: # verify traces - query: | sleep 10; - trace_in=$(curl -s http://${oap_host}:${oap_1234} | grep trace_in_latency_count{ | awk '{print $2}'); \ + trace_in=$(curl -s http://${oap_host}:${oap_1234} | grep trace_in_latency_seconds_count{ | awk '{print $2}'); \ trace_out=$(curl -s http://${oap_host}:${oap_1234} | grep kafka_exporter_trace_success_count{ | awk '{print $2}'); \ awk 'BEGIN {print '$trace_out/$trace_in'}' | yq e '{"result": .}' - expected: expected/result.yml @@ -28,7 +28,7 @@ cases: curl -X POST http://${provider_host}:${provider_9090}/logs/trigger > /dev/null; curl -X POST http://${provider_host}:${provider_9090}/logs/trigger > /dev/null; sleep 10; - log_in=$(curl -s http://${oap_host}:${oap_1234} | grep log_in_latency_count{ | awk '{print $2}'); \ + log_in=$(curl -s http://${oap_host}:${oap_1234} | grep log_in_latency_seconds_count{ | awk '{print $2}'); \ log_out=$(curl -s http://${oap_host}:${oap_1234} | grep kafka_exporter_log_success_count{ | awk '{print $2}'); \ awk 'BEGIN {print '$log_out/$log_in'}' | yq e '{"result": .}' - expected: expected/result.yml diff --git a/tools/migrate-so11y-metrics-names.sh b/tools/migrate-so11y-metrics-names.sh new file mode 100755 index 000000000000..f7f962cbbc7d --- /dev/null +++ b/tools/migrate-so11y-metrics-names.sh @@ -0,0 +1,55 @@ +#!/usr/bin/env bash +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# This script relies on few environment variables to determine source code package +# behavior, those variables are: +# RELEASE_VERSION -- The version of this source package. +# For example: RELEASE_VERSION=5.0.0-alpha + +NAME_MAPPINGS=$(cat <