Solucionar problemas con una suscripción con transformaciones de un solo mensaje (SMTs)

En esta página se ofrecen algunos consejos habituales para solucionar problemas con las suscripciones con SMTs.

Monitorizar SMTs

Para conocer el rendimiento y el impacto de las SMTs en una suscripción, usa las siguientes métricas de monitorización:

La métrica subscription/message_transform_latencies mide el tiempo que tardan en aplicarse las transformaciones de mensajes de suscripción a un mensaje. La métrica solo mide la latencia de SMT y no incluye otras partes del tiempo de entrega de mensajes.

La métrica proporciona dos etiquetas clave:

  • status: indica si la transformación se ha realizado correctamente o si ha habido algún problema.

  • filtered: indica si el SMT ha provocado que el mensaje se filtre. Cuando un SMT filtra un mensaje en una suscripción, Pub/Sub lo confirma y el mensaje nunca se envía a los suscriptores. La etiqueta filtered solo es verdadera cuando un SMT realiza el filtrado. Los mensajes filtrados mediante las funciones de filtrado integradas de Pub/Sub no se reflejan en esta métrica específica.

La métrica subscription/byte_cost se usa para identificar los mensajes que se filtran por SMTs o en los que los SMTs han fallado. Busca estos valores específicos:

  • Cuando un SMT filtra un mensaje, el valor de operation_type es smt_subscribe_filter_drop.

  • Si un SMT no puede transformar un mensaje, verás un response_code que no es OK.

Se está acumulando un backlog

Si ves que se acumula un gran número de mensajes en la suscripción, comprueba si hay errores de INVALID_ARGUMENT en subscription/message_transform_latencies.

Para solucionar los errores de INVALID_ARGUMENT, añade un tema de mensajes fallidos a la suscripción que te interese. El tema de mensajes fallidos captura los mensajes que no se han podido entregar a los suscriptores, junto con un atributo llamado CloudPubSubDeadLetterSourceSMTErrorMessage que explica el motivo del fallo.

Siguientes pasos

  • Si sigues teniendo problemas con tus SMTs de suscripción, consulta la sección Obtener asistencia.