Télémétrie MySQL et OCI Log Analytics

Exporte les journaux de serveur MySQL vers OCI Log Analytics.

La télémétrie fournit une méthode pratique pour afficher et analyser les journaux du serveur MySQL à l'aide du service OCI Log Analytics au lieu de s'appuyer uniquement sur le client de ligne de commande MySQL.

Prérequis

Prérequis pour l'envoi de journaux MySQL à OCI Log Analytics.

Pour envoyer des journaux MySQL à OCI Log Analytics, assurez-vous des éléments suivants :

  • Vous avez accès au service OCI Log Analytics et aux droits d'accès appropriés.
    Remarque

    Log Analytics est un service facturable. Il n'est pas inclus dans votre abonnement au service MySQL HeatWave et doit être activé séparément. Pour plus d'informations, reportez-vous à Log Analytics.
  • Vous avez créé au moins un groupe de journaux Log Analytics. Ceci est requis pour stocker les journaux MySQL.
  • Le système de base de données exécute MySQL version 9.6.1 ou supérieure.
  • Le système de base de données est autonome. L'export des journaux MySQL vers OCI Log Analytics n'est actuellement pas pris en charge par les systèmes de base de données haute disponibilité ou les systèmes de base de données avec des répliques de lecture.
  • Votre système de base de données n'est pas de niveau Toujours gratuit, qui n'a pas accès à Log Analytics.
  • Vous avez défini des stratégies IAM comme décrit dans Stratégies.
  • Pour consigner des instructions SQL dans le journal d'audit, vous devez définir des filtres de journal d'audit. Voir la section Audit Log Filtering.

Journaux MySQL

Exporte les journaux de serveur MySQL vers OCI Log Analytics ou vers des adresses OpenTelemetry personnalisées.

Les journaux suivants peuvent être exportés :

  • Journal d'erreurs : contient un enregistrement des heures de démarrage et d'arrêt de mysqld. Il contient également des messages de diagnostic tels que les erreurs, les avertissements et les notes qui se produisent pendant le démarrage et l'arrêt du serveur, et pendant l'exécution du serveur.
  • Journal de requêtes lentes : contient des instructions SQL qui prennent plus de long_query_time secondes à s'exécuter et qui nécessitent au moins min_examined_row_limit lignes à examiner. Le journal des requêtes lentes peut être utilisé pour rechercher des requêtes qui prennent beaucoup de temps à s'exécuter et sont donc susceptibles d'être optimisées.
  • Journal d'audit : contient les détails de connexion et de déconnexion du client, ainsi que les actions qu'il effectue lorsqu'il est connecté, telles que les bases de données et les tables auxquelles il accède.
  • Journal général : enregistrement général de ce que fait mysqld. Le serveur écrit des informations dans ce journal lorsque les clients se connectent ou se déconnectent, et consigne chaque instruction SQL reçue des clients.

Affichage des journaux MySQL dans OCI Log Analytics

Vous pouvez visualiser les journaux MySQL configurés dans l'explorateur de journaux OCI Log Analytics.

Cette tâche suppose que vous avez configuré tous les prérequis requis.
  1. Accédez à l'explorateur de journaux OCI Log Analytics.
  2. Sélectionnez le compartiment approprié dans le filtre et cliquez sur Appliquer.
  3. Les sources de journal Journaux télémétriques ouverts et Journaux JSON d'audit MySQL Database sont affichées dans la table Source de journal.
    Les journaux de télémétrie ouverts contiennent les journaux d'erreur, de requête générale et de requête lente, et les journaux JSON d'audit MySQL Database contiennent les journaux d'audit.

Affichage de la télémétrie MySQL et de la table OCI Log Analytics

La télémétrie MySQL et la table OCI Log Analytics stockent les données de surveillance pour les journaux exportés dans le schéma de performances de MySQL Server.

Utilisation d'un client de ligne de commande

Utilisez un Client de ligne de commande tel que le client MySQL ou MySQL Shell pour afficher la table de télémétrie MySQL et OCI Log Analytics.

Cette tâche requiert les éléments suivants :
  1. Pour MySQL Shell, passez en mode SQL en saisissant la commande \sql.
  2. Entrez l'instruction SQL suivante, en indiquant la table à afficher :
    SELECT * FROM performance_schema.<table_name>;

    Par exemple, pour afficher le statut des journaux exportés, utilisez la commande SQL suivante :

    SELECT * FROM performance_schema.telemetry_oci_export_status;
    Remarque

    Pour visualiser la liste complète des tables, vous pouvez l'indiquer dans <table_name>. Reportez-vous à Table Télémétrie MySQL et OCI Log Analytics.
Vous obtenez une réponse semblable à la suivante :
+--------------+---------------+----------------------+--------------------+------------------------+----------------------+-----------------+--------------------+-----------------------+
| CHANNEL_NAME | SERVICE_STATE | EXPORT_SUCCESS_COUNT | EXPORT_ERROR_COUNT | LAST_SUCCESS_TIMESTAMP | LAST_ERROR_TIMESTAMP | LAST_ERROR_CODE | LAST_ERROR_MESSAGE | LAST_ERROR_REQUEST_ID |
+--------------+---------------+----------------------+--------------------+------------------------+----------------------+-----------------+--------------------+-----------------------+
| ERROR_LOG    | OFF           |                    0 |                  0 | NULL                   | NULL                 | NULL            | NULL               | NULL                  |
| GENERAL_LOG  | OFF           |                    0 |                  0 | NULL                   | NULL                 | NULL            | NULL               | NULL                  |
| SLOW_LOG     | OFF           |                    0 |                  0 | NULL                   | NULL                 | NULL            | NULL               | NULL                  |
+--------------+---------------+----------------------+--------------------+------------------------+----------------------+-----------------+--------------------+-----------------------+                

Télémétrie MySQL et table OCI Log Analytics

Le schéma de performance inclut la télémétrie MySQL et la table OCI Log Analytics suivantes :

table performance_schema.telemetry_oci_export_status

Tableau 17-14 Table des schémas de performance telemetry_oci_export_status

Colonne Description
CHANNEL_NAME Indique les types de journal envoyés à OCI Log Analytics.

Les valeurs valides sont : ERROR_LOG, GENERAL_LOG et SLOW_LOG.

SERVICE_STATE Indique si les données sont collectées pour chaque type de journal.
EXPORT_SUCCESS_COUNT Indique le nombre d'exports réussis.
EXPORT_ERROR_COUNT Indique le Nombre d'exports en échec.
LAST_SUCCESS_TIMESTAMP Horodatage de la dernière exportation réussie.
LAST_ERROR_TIMESTAMP Horodatage du dernier échec d'export.
LAST_ERROR_CODE Code d'erreur du dernier échec d'export.
LAST_ERROR_MESSAGE Message d'erreur de la dernière exportation ayant échoué.
LAST_ERROR_REQUEST_ID ID de demande de l'appel d'API REST OCI Log Analytics pour le dernier export ayant échoué, le cas échéant.

Affichage des variables de statut de la télémétrie MySQL et d'OCI Log Analytics

Les variables de statut MySQL Telemetry et OCI Log Analytics sont des indicateurs statiques qui vous permettent de surveiller le statut de différents composants MySQL Telemetry et OCI Log Analytics. Vous ne pouvez pas modifier les valeurs de ces variables.

Utilisation d'un client de ligne de commande

Utilisez un serveur de ligne de commande tel que le client MySQL ou MySQL Shell pour afficher les variables de statut et leurs valeurs.

Cette tâche requiert les éléments suivants :
  • Système de base de données en cours d'exécution.
  • Client de ligne de commande tel que le client MySQL ou MySQL Shell connecté au système de base de données. Reportez-vous à Connexion à un système de base de données.
Pour afficher les variables de l'outil de surveillance de l'état, procédez comme suit :
  1. Pour MySQL Shell, passez en mode SQL en saisissant la commande \sql.
  2. Entrez l'instruction SQL suivante :
    show status like '<variable_name>';

    Par exemple :

    show status like 'telemetry_oci.run_level';
Vous obtenez une réponse semblable à la suivante :
+-------------------------+-----------+
| Variable_name           | Value     |
+-------------------------+-----------+
| telemetry_oci.run_level | CONFIGURE |
+-------------------------+-----------+

Variables de statut de la télémétrie MySQL et d'OCI Log Analytics

Tableau 17-15 Variables de statut de MySQL Telemetry et d'OCI Log Analytics

Variable système Description Valeurs possibles
log_offload.log_analytics_last_error_code Code d'erreur du dernier échec d'export. Valeur de chaîne.
log_offload.log_analytics_last_error_message Message d'erreur de la dernière exportation ayant échoué. Valeur de chaîne.
log_offload.log_analytics_last_error_opc_request_id ID de demande de l'appel d'API REST OCI Log Analytics pour le dernier export ayant échoué. Une valeur de chaîne, semblable à l'exemple suivant : /C8DBC62DADE6ECAC222ABF9CAABBC11C/13B10A00F071D7C39DAE333C3CB0DCD8
log_offload.log_analytics_last_error_timestamp Horodatage du dernier échec d'export. Valeur de chaîne, indiquant l'heure locale avec des décimales de 6 microsecondes, semblable à l'exemple suivant : 2025-01-29 04:46:44.009907.
log_offload.log_analytics_ops_skipped Indique le nombre de fichiers qui ont été ignorés de l'export. Une valeur entière.
telemetry_oci.exports_failed_error_log Indique le nombre d'exports ayant échoué pour le journal des erreurs. Une valeur entière.
telemetry_oci.exports_failed_general_log Indique le nombre d'exports ayant échoué pour le journal général. Une valeur entière.
telemetry_oci.exports_failed_slow_log Indique le nombre d'exports ayant échoué pour le journal général. Une valeur entière.
telemetry_oci.exports_success_error_log Indique le nombre d'exports réussis pour le journal des erreurs. Une valeur entière.
telemetry_oci.exports_success_general_log Indique le nombre d'exports réussis pour le journal général. Une valeur entière.
telemetry_oci.exports_success_slow_log Indique le nombre d'exports réussis pour le journal lent. Une valeur entière.
telemetry_oci.run_level Indique l'état du composant.
  • BOOT : le composant est en cours de chargement et l'initialisation a démarré. Cet état est temporaire.
  • CONFIGURE : le composant est prêt pour la configuration.
  • READY : la configuration a été effectuée.
  • FAILED : échec de la configuration.
  • UNINSTALL : le composant est en cours de désinstallation puis de déchargement.