私はGoogleのPubSubのドキュメントを調べ、Google Cloud Monitoringも調べてみましたが、私のトピックでキューサイズが何であるかを理解する手段が見つかりませんでした。
分析にPubSubを使用することを計画しているので、キューカウントを監視することが重要なので、サブスクライバーカウントを拡大/縮小できます。
何が欠けていますか?
確認したい指標は「配信されなかったメッセージ」です。 「Pub/Sub Subscription」リソースタイプの下にある Google Cloud Monitoring でこのメトリックを監視するアラートまたはチャートを設定できるはずです。サブスクライバーによってまだ確認されていないメッセージの数、つまりキューサイズは、トピックごとのメトリックではなく、サブスクリプションごとのメトリックです。指標の詳細については、 GCP指標リスト のpubsub.googleapis.com/subscription/num_undelivered_messages
を参照してください(および利用可能なすべてのPub/Sub指標のその他の情報)。
あなたの質問への答えは「いいえ」です。これらのカウントを表示するPubSubの機能はありません。あなたがそれをしなければならない方法は、Stackdriverを使用してログイベントを監視することです(それを見つけるのにも少し時間がかかりました)。
これに対する口語的な答えは、次のステップバイステップです。
Monitoring
Dashboards
> Create Dashboard
Add Chart
ボタンをクリックしますnum_undelivered_messages
と入力し、次にSAVE
と入力しますこれを実現するためのプログラム的な方法を検討している場合、これが役立つ場合があります。
from google.cloud import monitoring_v3
from google.cloud.monitoring_v3 import query
project = "my-project"
client = monitoring_v3.MetricServiceClient()
result = query.Query(
client,
project,
'pubsub.googleapis.com/subscription/num_undelivered_messages',
minutes=60).as_dataframe()
print(result['pubsub_subscription'][project]['subscription_name'][0])