Configure el monitoreo de MySQL utilizando el Collector de NRDOT en entornos autohospedados, incluyendo servidores físicos, máquinas virtuales e instalaciones independientes.
Instalación guiada
Para instalar a través de la UI de New Relic en su lugar, vaya a one.newrelic.com > Integrations & Agents > MySQL (Database 360) . Esta página solo cubre la instalación manual.
Requisitos previos
Antes de instalar, asegúrese de tener:
Una clave de licencia de New Relic.
Acceso administrativo a su instancia de MySQL.
Conectividad de red entre el host donde instala el NRDOT Collector y su base de datos MySQL.
Conectividad de red a la documentación de los extremos OTLP de New Relic
Para conocer las versiones de MySQL compatibles, los permisos requeridos y los requisitos de
performance_schema, consulte Compatibilidad y requisitos previos.
Configurar NRDOT Collector
Instale el NRDOT Collector en su sistema:
Configurar el usuario de la base de datos
Cree un usuario de monitoreo con los privilegios necesarios para su instancia de base de datos MySQL.
- Para crear un usuario de monitoreo, ejecute el siguiente comando en su base de datos MySQL:
CREATE USER '<YOUR_DB_USERNAME>'@'%' IDENTIFIED BY '<YOUR_DB_PASSWORD>';- Para recopilar muestras de consultas y las consultas principales, otorgue los siguientes privilegios al usuario de monitoreo:
GRANT SELECT ON performance_schema.* TO '<YOUR_DB_USERNAME>'@'%'; GRANT SELECT ON *.* TO '<YOUR_DB_USERNAME>'@'%'; GRANT REPLICATION CLIENT ON *.* TO '<YOUR_DB_USERNAME>'@'%'; GRANT PROCESS ON *.* TO '<YOUR_DB_USERNAME>'@'%';- (Opcional) Para ver los datos de tiempo de espera en la plataforma New Relic, otorgue los siguientes privilegios al usuario de monitoreo:
GRANT UPDATE ON performance_schema.setup_consumers TO '<YOUR_DB_USERNAME>'@'%';- (Opcional) Para verificar la conexión y los permisos, ejecute:
$mysql -h <YOUR_DB_HOST> -P <YOUR_DB_PORT> -u <YOUR_DB_USERNAME> -p -e "SELECT 1;"Si el comando se completa sin errores, el usuario de monitoreo, el host y el puerto son correctos.
Configurar el Colector NRDOT
Configure el NRDOT Collector con la configuración específica de MySQL.
Esta configuración se centra en el monitoreo esencial de MySQL únicamente con el receptor nrmysql.
configuración completa
Esta configuración de línea de base captura métricas esenciales. Para ver el catálogo completo de métricas, consulte la referencia de configuración.
- Cree un archivo de configuración llamado
mysql-config.yaml:
$sudo nano /etc/nrdot-collector/mysql-config.yaml- Agregue la siguiente configuración al archivo
mysql-config.yamlque creó en el paso anterior.
receivers: nrmysql: endpoint: "<YOUR_DB_HOST>:<YOUR_DB_PORT>" transport: tcp username: "<YOUR_DB_USERNAME>" password: "<YOUR_DB_PASSWORD>" allow_native_passwords: true collection_interval: 15s initial_delay: 1s explain_mode: procedure statement_events: digest_text_limit: 4096 time_limit: 24h limit: 500 query_sample_collection: max_rows_per_query: 100 allowed_comment_keys: [nr_service_guid] top_query_collection: lookback_time: 60 max_query_sample_count: 5000 top_query_count: 200 collection_interval: 60s query_plan_cache_size: 1000 query_plan_cache_ttl: 1h allowed_comment_keys: [nr_service_guid] events: db.server.query_sample: enabled: true db.server.top_query: enabled: true db.server.query_plan: enabled: true resource_attributes: db.system.version: enabled: true metrics: mysql.query.count: enabled: true mysql.query.slow.count: enabled: true mysql.commands: enabled: true mysql.innodb.data_file.io: enabled: true
processors: batch:
exporters: otlp/newrelic: endpoint: "<YOUR_NEWRELIC_OTLP_ENDPOINT>" headers: api-key: "<YOUR_NEWRELIC_LICENSE_KEY>" compression: gzip retry_on_failure: enabled: true initial_interval: 5s max_interval: 30s max_elapsed_time: 300s
service: pipelines: metrics: receivers: [nrmysql] processors: [batch] exporters: [otlp/newrelic] logs: receivers: [nrmysql] processors: [batch] exporters: [otlp/newrelic]Sugerencia
Esta configuración omite los campos opcionales database y tls. De forma predeterminada, el receptor monitorea cada base de datos a la que puede acceder el usuario de monitoreo y se conecta sin TLS. Para monitorear una base de datos específica o para habilitar TLS (necesario para la mayoría de las instancias de Amazon RDS/Aurora), consulte Habilitar información valiosa detallada.
Parámetro de configuración
La siguiente tabla describe los parámetros de configuración clave para el receptor nrmysql:
| Parámetro | Descripción |
|---|---|
<YOUR_DB_HOST> | Ingrese el nombre de host o la dirección IP de MySQL. |
<YOUR_DB_PORT> | Ingrese el número de puerto de MySQL. El valor predeterminado es 3306. |
<YOUR_DB_USERNAME> | Ingrese el nombre de usuario del usuario de monitoreo que creó en Configurar usuario de base de datos. |
<YOUR_DB_PASSWORD> | Ingrese la contraseña del usuario de monitoreo que creó en Configurar usuario de base de datos. |
<YOUR_NEWRELIC_OTLP_ENDPOINT> | Ingrese el extremo OTLP de New Relic. Para obtener más información, consulte Extremos OTLP de New Relic. |
<YOUR_NEWRELIC_LICENSE_KEY> | Ingrese su clave de licencia de New Relic. |
transport | El valor predeterminado está establecido en tcp para conectarse a través de la red. Si su NRDOT Collector se ejecuta en el mismo host que MySQL, use unix para conectarse a través de un socket de dominio Unix en su lugar. |
collection_interval | Ingrese el intervalo entre los raspados de métricas. Predeterminado: 15s. |
explain_mode | El valor predeterminado está establecido en inline. Establezca el valor en procedure para recopilar planes de consulta para sentencias de escritura sin otorgar privilegios DML al usuario de monitoreo. Consulte Planes de consulta para sentencias de escritura. |
Valide la configuración de NRDOT Collector
- Actualice la ruta de configuración para que apunte a su nuevo archivo
mysql-config.yaml:
$sudo sed -i 's|OTELCOL_OPTIONS="--config=/etc/nrdot-collector/config.yaml"|OTELCOL_OPTIONS="--config=/etc/nrdot-collector/mysql-config.yaml"|' /etc/nrdot-collector/nrdot-collector.conf- Valide la configuración del NRDOT Collector para asegurarse de que tenga el formato correcto y funcione correctamente:
$sudo /usr/bin/nrdot-collector validate --config=/etc/nrdot-collector/mysql-config.yamlSugerencia
Tú también puedes:
Configure múltiples receptores: para monitorear múltiples instancias de MySQL desde un recolector. Vincule su base de datos MySQL con APM: para correlacionar el rendimiento de la aplicación con las operaciones de la base de datos. Esto le permite ver exactamente qué aplicaciones están generando cargas de trabajo de base de datos específicas. Configurar la gestión de secretos: para administrar de forma segura información confidencial, como las credenciales de bases de datos. Esto ayuda a mejorar la seguridad de su configuración de monitoreo al evitar la codificación rígida de datos sensibles en los archivos de configuración.
Reiniciar NRDOT Collector
Después de actualizar su configuración, reinicie el servicio NRDOT Collector:
$sudo systemctl restart nrdot-collectorSugerencia
Siempre reinicie el servicio NRDOT Collector después de realizar cambios de configuración para garantizar que los nuevos ajustes surtan efecto.
Para verificar que el recolector se esté ejecutando correctamente, verifique el estado del servicio:
$sudo systemctl status nrdot-collectorEncuentra y utiliza tus datos
Una vez que sus datos se estén recopilando, puede acceder al monitoreo integral de bases de datos MySQL a través de la UI de New Relic.
Para encontrar su entidad de base de datos MySQL en New Relic:
Vaya a https://one.newrelic.com > All Capabilities > Databases.
En el menú desplegable Entity type, seleccione MySQL instance y luego haga clic en Apply.
Seleccione su base de datos MySQL de la lista de entidades.
Después de configurar el monitoreo de bases de datos MySQL con NRDOT:
- Crea dashboards personalizados para visualizar las métricas de tu base de datos
- Configura alertas para umbrales críticos de rendimiento de la base de datos
Documentación relacionada
Guía de solución de problemas
Aprenda a solucionar problemas comunes con el monitoreo de MySQL.
Referencia de métricas
Obtenga información sobre las métricas disponibles recopiladas por NRDOT Collector.
Instrumentación en entornos RDS
Aprenda a configurar el monitoreo de MySQL en entornos RDS con New Relic.