Skip to main content
El puerto de gestión lleva profundidades de cola, nombres de proveedor, estado de bind y los controles que detienen a un proveedor. Está guardado por dos secretos compartidos:

La división

De esa forma un dashboard o sistema de monitorización puede tener el token de lectura sin poder también detener a un proveedor.
Deben diferir. Establecer ambos al mismo valor se trata como ninguna separación en absoluto. Los controles se apagan y el gateway registra por qué.Dejar el token admin sin establecer hace lo mismo, que es la dirección segura: pierdes los controles en lugar de exponerlos.

Un token sin establecer responde 404, no 401

Configuración ausente deshabilita el endpoint en lugar de dejarlo abierto. Un token equivocado obtiene el mismo 404 en lugar de un 401, así que un llamador no puede saber si hay algo aquí para lo que valga la pena encontrar un token.
Si tu dashboard reporta 404, comprueba el token en ambos lados antes de asumir que el gateway está caído. Esa confusión es el coste de no filtrar la existencia del endpoint, y merece la pena conocerlo antes de un incidente en lugar de durante uno.

Deliberadamente no está bajo /secure

Ese prefijo se autentica con credenciales de mensajería, que pertenecen a clientes. Profundidades de cola, nombres de proveedor y estado de bind son de todo el gateway, así que publicarlos ahí entregaría a cada cliente que pueda enviar un SMS una vista del gateway entero. El puerto de gestión lleva su propio token en su lugar. Y una credencial de mensajería no lo abre.

Mantén el puerto fuera de la red pública

Mantén 9000 en una red admin y no lo publiques. El token es una segunda línea, no la primera.

Ausente no es cero

Esta regla recorre cada campo en /ops/health, y leerla mal produce conclusiones confiadamente equivocadas:
tps_measured es el que pilla a la gente. Cero es un valor real que significa una sesión conectada que no envía nada. Que es un estancamiento que merece una alerta. Ausente significa que el gateway aún no ha medido, porque una lectura de un contador acumulativo es una línea base y aún no una tasa.Una alerta que trate ausente como cero se dispara en cada reinicio.

cdr.failed son datos de facturación perdidos

Un batch fallido nunca se reintenta y esos registros se han ido. No es transitorio. Alerta con cualquier valor distinto de cero. Este es ingreso que no puedes facturar, y nada más te lo dirá.

Una búsqueda por subcadena no es una comprobación de identidad

q=ACME en el endpoint de sesiones también devuelve ACMEINTL. Cualquier cosa que actúe sobre un resultado (desconectar los binds de un login, por ejemplo) debe comparar system_id exactamente en lugar de confiar en la coincidencia.

Relacionado

El puerto de gestión

Cada endpoint y su token.

Salud en vivo

Leer la carga útil que esos tokens desbloquean.