Cette traduction automatique est fournie pour votre commodité.
En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.
Sur RDS, ce paramètre ne persiste pas après les redémarrages. Accordez à l’utilisateur de monitoring les privilèges UPDATE sur performance_schema.setup_consumers afin que le collecteur puisse le réactiver automatiquement.
Symptômes :mysql.query_plan est vide pour certaines requêtes, en particulier les plus longues.
Cause : le texte de l'instruction est tronqué par les limites de longueur de résumé de MySQL, ce qui amène le Récepteur à ignorer EXPLAIN.
Solution : augmentez les paramètres du serveur MySQL :
Symptômes : Aucun plan de requête disponible dans les événements db.server.top_query.
Cause : comportement attendu — query_sample_text n’existe pas sur MySQL 5.7.x ou de 8.0.0à8.0.2.
Solutions : mettez à niveau vers MySQL 8.0.3 ou une version ultérieure pour la prise en charge du plan de requête.
Symptômes : plans de requête manquants pour les instructions UPDATE, INSERT, DELETE ou REPLACE.
Cause : l'utilisateur de monitoring manque de privilèges DML et explain_mode est défini sur inline.
Solution : Passez en mode procedure dans la configuration de votre Récepteur :
nrmysql:
explain_mode: procedure
Cela utilise une procédure SQL SECURITY DEFINER pour expliquer les instructions d’écriture sans accorder de privilèges DML à l’utilisateur de monitoring.
Symptômes : l'attribut mysql.session.client_name est vide pour certaines connexions de base de données.
Cause : pas un bug — certains pilotes clients n’envoient pas d’attributs de connexion par défaut.
Remarques :
Il s'agit d'un comportement dépendant des données
Les différentes bibliothèques clientes MySQL ont une prise en charge variable des attributs de connexion
Toutes les applications ne configurent pas leurs pilotes pour envoyer ces informations
Symptômes : les tags de corrélation APM ne sont pas extraits des commentaires SQL.
Cause : l'extraction du tag de commentaire n'est pas configurée.
Solution : ajoutez allowed_comment_keys aux deux blocs de collecte dans votre configuration :
query_sample_collection:
allowed_comment_keys:[nr_service_guid]
top_query_collection:
allowed_comment_keys:[nr_service_guid]
L'extraction de tag de commentaire est vide par défaut pour des raisons de sécurité.
Symptômes :
Entité MySQL manquante dans l'explorateur d'entités
L'application APM n'affiche pas les relations de la base de données
Cause : attributs de ressource server.address et server.port manquants requis pour la synthèse d'entité.
Solution : ajoutez un processeur de ressources à votre configuration du collecteur :
processors:
resource/mysql:
attributes:
-key: server.address
value:"<YOUR_DB_HOST>"
action: upsert
-key: server.port
value: <YOUR_DB_PORT>
action: upsert
service:
pipelines:
metrics:
receivers:[nrmysql]
processors:[resource/mysql, batch]
exporters:[otlp/newrelic]
logs:
receivers:[nrmysql]
processors:[resource/mysql, batch]
exporters:[otlp/newrelic]
Symptômes :
Erreurs « connexion refusée »
Échecs d'authentification "Access denied"
Solutions :
Pour la connexion refusée :
Vérifiez que MySQL est en cours d'exécution :
bash
$
systemctl status mysql
Vérifiez que les règles du pare-feu autorisent les connexions sur le port MySQL (3306 par défaut)
Vérifiez que bind-address dans la configuration MySQL autorise les connexions externes
Pour les erreurs d'authentification :
Vérifiez que l'utilisateur existe et possède les privilèges corrects :
SELECTUser, Host FROM mysql.userWHEREUser='<YOUR_DB_USERNAME>';
SHOW GRANTS FOR'<YOUR_DB_USERNAME>'@'%';
Vérifier que le mot de passe est correct
Pour RDS, assurez-vous que le groupe de sécurité autorise les connexions entrantes
Réinitialisations du consommateur RDS Performance Schema : le consommateur events_waits_current se désactive automatiquement lors du redémarrage/basculement RDS. Accordez les privilèges UPDATE sur performance_schema.setup_consumers pour que le collecteur puisse le réactiver :
Sécurité réseau RDS : assurez-vous que votre groupe de sécurité RDS autorise le trafic entrant sur le port 3306 à partir de l'adresse IP ou du groupe de sécurité du Collector NRDOT.
Symptômes : Le collecteur ne parvient pas à se connecter, avec une erreur liée au certificat ou à TLS.
Cause : RDS impose TLS. Le collecteur ne fait pas confiance à l’autorité de certification RDS d’Amazon par défaut.
Solution : Définissez tls.ca_file (ou tls.ca_pem) sur le groupe de certificats Amazon RDS, et laissez tls.insecure/tls.insecure_skip_verify à false:
nrmysql:
tls:
insecure:false
insecure_skip_verify:false
ca_file: /path/to/global-bundle.pem
Exemples de requêtes NRQL
Utilisez ces requêtes NRQL pour dépanner et vérifier votre monitoring MySQL :
Vérifier les requêtes bloquées
FROM Log SELECT*WHERE event.name ='db.server.query_sample'
AND mysql.blocking.blocker.count >0
SINCE 1hour ago
Conseil
Filtrez avec mysql.blocking.blocker.count > 0, et non != 0 — en NRQL, null != 0 s'évalue à TRUE, ce qui inclurait silencieusement les sessions non bloquées dans vos résultats.