googleapis / googleapis/google-cloud-java

[java-spanner] Not able to add custom dimensions to spanner metrics

Đang mở
#12,256 1 bình luận 0 reaction 1 người được giao Được @rahul2393 nhận Xem trên GitHub
api: spanner priority: p1
Ngôn ngữ chính
Java
Star
2.1k
Fork
1.2k
Merge trung bình
1 ngày 23 giờ
Pull request đã merge (30 ngày)
154

Mô tả

Hello Team,

I'm creating java-spanner client and using the PrometheusHttpServer as the metrics collector.

```
PROMETHEUS_SERVER = PrometheusHttpServer.builder().setPort(portNumber).build();
```

I want to add custom dimensions to SDK provided metrics and for that I'm using the Resource like below,

```
SpannerOptions.enableOpenTelemetryMetrics();

Resource resource = Resource.getDefault().merge(Resource.create(Attributes.of(
SERVICE_NAME, MY_SERVICE_NAME,
SERVICE_VERSION, "1.0.0"
)));

SdkMeterProvider sdkMeterProvider =
SdkMeterProvider.builder()
.setResource(resource)
.registerMetricReader(PROMETHEUS_SERVER)
.build();

OpenTelemetry openTelemetry =
OpenTelemetrySdk.builder().setMeterProvider(sdkMeterProvider).build();

optionsBuilder.setOpenTelemetry(openTelemetry);

```

However, when I start my application, I'm not able to see any custom dimensions attached to the SDK metrics.
```
# HELP spanner_get_session_timeouts_ratio_total The number of get sessions timeouts due to pool exhaustion
# TYPE spanner_get_session_timeouts_ratio_total counter
spanner_get_session_timeouts_ratio_total{client_id="client-1",database="test-db",instance_id="test-projects",otel_scope_name="cloud.google.com/java"} 0.0
# HELP spanner_gfe_header_missing_count_ratio_total Number of RPC responses received without the server-timing header, most likely means that the RPC never reached Google's network
# TYPE spanner_gfe_header_missing_count_ratio_total counter
spanner_gfe_header_missing_count_ratio_total{database="test-db",instance_id="instance-id",method="google.spanner.v1.Spanner/BatchCreateSessions",otel_scope_name="cloud.google.com/java",project_id="test-id"} 0.0
# HELP spanner_max_allowed_sessions_ratio The maximum number of sessions allowed. Configurable by the user.
# TYPE spanner_max_allowed_sessions_ratio gauge
spanner_max_allowed_sessions_ratio{{client_id="client-1",database="test-db",instance_id="test-projects",otel_scope_name="cloud.google.com/java"} 401.0
# HELP spanner_max_in_use_sessions_ratio The maximum number of sessions in use during the last 10 minute interval.
# TYPE spanner_max_in_use_sessions_ratio gauge
spanner_max_in_use_sessions_ratio{{client_id="client-1",database="test-db",instance_id="test-projects",otel_scope_name="cloud.google.com/java"} 0.0
```

Only I see 1 data which is not the SDK metric
```
# TYPE target_info gauge
target_info{service_name="my-service-name",service_version="1.0.0",telemetry_sdk_language="java",telemetry_sdk_name="opentelemetry",telemetry_sdk_version="1.41.0"} 1
```
```

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.