googleapis / googleapis/google-cloud-java

[sdk-platform-java] Metrics related to gax

Đang mở
#12,516 3 bình luận 0 reaction 0 người được giao Xem trên GitHub
priority: p3 type: feature request
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ả

## Question

This is a general question regarding how to get metrics around gax. (Or, maybe this is a feature request?)

Recently we realized that gax (transitive dependencies introduced by `java-bigtable` client library) tends to create a fairly large thread pool of many system threads to handle IO with Bigtable server. These threads are named with prefix `Gax-` so we think it is probably related to this `gax-java` library according to [this line](https://github.com/googleapis/gax-java/blob/1c4d535917cb1642f8da38a2a2c23ada4c15f394/gax/src/main/java/com/google/api/gax/core/InstantiatingExecutorProvider.java#L52).

We're not sure if the size of the thread pool is the culprit of causing regression of our service performance when the traffic goes high. Thus we'd like gain some observability into the gax threads first. However, I cannot find a good way to export the metrics such as "the number of gax threads" from time to time. For example, an option to register this metric to prometheus-metric client would be great.

We also noticed that Gax has a [channel pool resizing behavior](https://github.com/googleapis/gax-java/blob/fff2babaf2620686c2e0be1b6d338ac088248cf6/gax-grpc/src/main/java/com/google/api/gax/grpc/ChannelPool.java#L112-L125) over the time. It would also be nice to get metrics of channel pool size over the time and watch how the pool size get resized under different traffic patterns.

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.