googleapis / googleapis/google-cloud-java

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

オープン
#12,256 コメント 1 件 リアクション 0 件 担当者 1 名 @rahul2393 が担当を希望しています GitHub で見る
api: spanner priority: p1
主要言語
Java
スター
2.1k
フォーク
1.2k
平均マージ
1日 23時間
マージ済み PR(30日)
154

説明

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
```
```

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。