Versión de la integración5.0.0

Realiza un seguimiento del uso de memoria de tus servicios Go y recopila métricas instrumentadas desde el paquete Expvar Go.
Si prefieres instrumentar tu código Go utilizando únicamente dogstats-go, puedes seguir utilizando esta integración para recopilar métricas relacionadas con la memoria.
Configuración
Instalación
El check de Go Expvar esta incluido en el paquete del Agent, por lo que solo tienes que instalar el Agent dondequiera que ejecutes servicios Go para recopilar métricas.
Configuración
Preparación del servicio
Si tu servicio Go no utiliza ya el paquete expvar, impórtalo (import "expvar"). Si no quieres instrumentar tus propias métricas con expvar; es decir, si solo quieres recopilar métricas de memoria de tu servicio, importa el paquete utilizando el identificador en blanco (import _ "expvar"). Si tu servicio aún no escucha solicitudes HTTP (con el paquete http), haz que escuche localmente solo el Datadog Agent.
host
Para configurar este check para un Agent que se ejecuta en un host:
Conexión del Agent
Edita el archivo go_expvar.d/conf.yaml, en la carpeta conf.d/ en la raíz de tu directorio de configuración del Agent. Consulta el ejemplo go_expvar.d/conf.yaml para conocer todas las opciones de configuración disponibles.
Nota: Si no configuras una lista de metrics, el Agent sigue recopilando métricas memstat. Utiliza metrics para indicar al Agent qué variables expvar debe recopilar.
Reinicia el Agent.
Nota: La integración Go Expvar puede potencialmente emitir métricas personalizadas, lo que puede afectar a tu facturación. Por defecto, hay un límite de 350 métricas. Si necesitas métricas adicionales, ponte en contacto con el servicio de asistencia de Datadog.
En contenedores
Para entornos en contenedores, consulta las plantillas de integración de Autodiscovery para obtener orientación sobre la aplicación de los parámetros que se indican a continuación.
| Parámetro | Valor |
|---|
<INTEGRATION_NAME> | go_expvar |
<INIT_CONFIG> | en blanco o {} |
<INSTANCE_CONFIG> | {"expvar_url": "http://%%host%%:8080"} |
Validación
[Ejecuta el subcomando de estado del Agent(https://docs.datadoghq.com/agent/guide/agent-commands/#agent-status-and-information) y busca go_expvar en la sección Checks.
Datos recopilados
Métricas
| |
|---|
go_expvar.memstats.alloc (gauge) | Bytes asignados y aún no liberados Se muestra en bytes |
go_expvar.memstats.frees (gauge) | Número de libres Se muestra como operación |
go_expvar.memstats.heap_alloc (gauge) | Bytes asignados y aún no liberados Se muestra en bytes |
go_expvar.memstats.heap_idle (gauge) | Bytes en tramos inactivos Se muestra en bytes |
go_expvar.memstats.heap_inuse (gauge) | Bytes en tramos no inactivos Se muestra en bytes |
go_expvar.memstats.heap_objects (gauge) | Número total de objetos asignados Se muestra como elemento |
go_expvar.memstats.heap_released (gauge) | Bytes liberados al SO Se muestra en bytes |
go_expvar.memstats.heap_sys (gauge) | Bytes obtenidos del sistema Se muestra en bytes |
go_expvar.memstats.lookups (gauge) | Número de búsquedas de punteros Se muestra como operación |
go_expvar.memstats.mallocs (gauge) | Número de mallocs Se muestra como operación |
go_expvar.memstats.num_gc (gauge) | Número de recolecciones de basura Se muestra como recolección de basura |
go_expvar.memstats.pause_ns.95percentile (gauge) | Percentil 95 de las duraciones de pausas de recolección de basura recientes Se muestra en nanosegundos |
go_expvar.memstats.pause_ns.avg (gauge) | Media de las últimas pausas de recolección de basura Se muestra en nanosegundos |
go_expvar.memstats.pause_ns.count (rate) | Número de duraciones de las pausas de recolección de basura enviadas Se muestra como muestra |
go_expvar.memstats.pause_ns.max (gauge) | Duración máxima de la pausa de recolección de basura Se muestra en nanosegundos |
go_expvar.memstats.pause_ns.median (gauge) | Mediana de la duración de la pausa de recolección de basura Se muestra en nanosegundos |
go_expvar.memstats.pause_total_ns (gauge) | Duración total de la pausa de recolección de basura a lo largo de la vida del proceso Se muestra en nanosegundos |
go_expvar.memstats.total_alloc (gauge) | Bytes asignados (incluso liberados) Se muestra en bytes |
go_expvar.memstats.total_alloc.count (count) | Bytes asignados (incluso liberados) como recuento monotónico Se muestra en bytes |
Eventos
El check de Expvar Go no incluye eventos.
Checks de servicio
El check de Expvar Go no incluye checks de servicio.
Solucionar problemas
¿Necesitas ayuda? Ponte en contacto con el servicio de asistencia de Datadog.
Referencias adicionales