Solución:
La métrica que desea ver es “mensajes no entregados”. Debería poder configurar alertas o gráficos que supervisen esta métrica en Google Cloud Monitoring bajo el tipo de recurso “Suscripción a Pub / Sub”. El número de mensajes que aún no han sido reconocidos por los suscriptores, es decir, el tamaño de la cola, es una métrica por suscripción en contraposición a una métrica por tema. Para obtener información sobre la métrica, consulte pubsub.googleapis.com/subscription/num_undelivered_messages
en la lista de métricas de GCP (y otras para todas las métricas de Pub / Sub disponibles).
La respuesta a su pregunta es “no”, no hay ninguna función para PubSub que muestre estos recuentos. La forma en que debe hacerlo es a través de la supervisión de eventos de registro con Stackdriver (también me tomó un tiempo descubrirlo).
La respuesta coloquial a esto es hacer lo siguiente, paso a paso:
- Navegue desde la Consola de administración de GCloud a:
Monitoring
- Esto abre una nueva ventana con una consola de Stackdriver separada
- Navega en Stackdriver:
Dashboards
>Create Dashboard
- Haga clic en el
Add Chart
botón en la parte superior derecha de la pantalla del tablero
- En el cuadro de entrada, escriba
num_undelivered_messages
y luegoSAVE
Esto podría ayudar si está buscando una forma programática de lograrlo:
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])