Para enviar un check de servicio a Datadog dentro de un check personalizado del Agent, utiliza la función predefinids service_check() en la clase Agentcheck.
A continuación, encontrarás los distintos parámetros y tipos de datos disponibles para la función service_check():
Parámetro
Tipo
Obligatorio
Valor por defecto
Descripción
name
Cadena
Sí
-
Nombre del check de servicio.
status
Int
Sí
-
Constante que describe el estado del servicio: 0 para OK (Normal), 1 para WARN (Advertencia), 2 para CRITICAL (Crítico) y 3 para UNKNOWN (Desconocido).
tags
Lista de cadenas
No
None
Lista de etiquetas (tags) para asociar al check de servicio.
hostname
Cadena
No
Host actual
Nombre de host para asociar al check de servicio. Por defecto es el host actual.
message
Cadena
No
None
Información adicional o una descripción de por qué se ha producido este estado.
Ejemplo
El siguiente es un ejemplo de un check del Agent ficticio enviando sólo un check de servicio periódicamente. Para obtener más información, consulta Escribir un check personalizado del Agent.
Crea un nuevo directorio, service_check_example.d/, en la carpetaconf.d/ de tu Agent.
En tu carpeta service_check_example.d/, crea un archivo de configuración vacío llamado service_check_example.yaml con el siguiente contenido:
instances:[{}]
Subiendo un nivel desde la carpeta conf.d/, ve a la carpeta checks.d/.
Dentro de esta carpeta, crea un archivo de check personalizado llamado service_check_example.py con el siguiente contenido:
service_check_example.py
fromdatadog_checks.baseimportAgentcheck__version__="1.0.0"classMyClass(AgentCheck):defcheck(self,instance):self.service_check('example_service_check',0,message='Example application is up and running.')