Configuration de la surveillance d'instance de base de données
Oracle Logging Analytics peut extraire des enregistrements d'instance de base de données en fonction de la requête SQL que vous fournissez dans la configuration de source de journal.
Pour Oracle Real Application Clusters (RAC), où plusieurs instances de base de données pointent vers le même stockage de base de données, utilisez le type d'entité Oracle Database au lieu d'Oracle Database Instance. Installez un agent distant qui peut accéder à la base de données à l'aide de l'adresse IP SCAN. Ne configurez pas les agents pour exécuter des requêtes SQL sur des instances de base de données individuelles.
Prérequis
Assurez-vous que la connexion à la base de données fonctionne de l'hôte de l'agent à la base de données. Si la base de données et l'agent se trouvent sur le même hôte, utilisez la commande sqlplus
, tnsping
ou trcroute
pour tester la connectivité à la base de données. Reportez-vous à Test des connexions dans le Guide de l'administrateur Database Net Services.
Si la base de données et l'agent ne se trouvent pas sur le même hôte, exécutez les étapes suivantes sur l'hôte de l'agent :
sqlplus
(s'il est installé sur l'agent)- Ping de l'agent vers la base de données. Cela devrait fonctionner à moins que les pare-feu bloquent le ping. Si le ping est bloqué, alors :
- telnet vers votre serveur de base de données avec le port de base de données pour vérifier si le processus d'écoute accepte la connexion, par exemple,
telnet <database_server_hostname> 1521
.
- telnet vers votre serveur de base de données avec le port de base de données pour vérifier si le processus d'écoute accepte la connexion, par exemple,
Flux global de collecte des journaux de base de données
Voici les tâches de haut niveau pour la collecte des informations de journal stockées dans une base de données :
-
Installez l'agent OMA sur un hôte pouvant accéder à la base de données. Reportez-vous à Configuration de la collecte continue de journaux à partir des hôtes.
-
Associez l'entité de base de données à la source. Reportez-vous à Configuration d'une nouvelle association source-entité.
-
Fournissez les informations d'identification de l'entité de base de données.
-
Affichage de l'entité de base de données dans Database Management Service
Oracle Database
Oracle Database inclut
- Base de données pluggable (PDB), Base de données Conteneur colocative (CDB) et Conteneur d'applications
- Oracle Database Instance
- Oracle Real Application Clusters (RAC)
- Oracle Autonomous Database
- Autonomous Data Warehouse (ADW)
- Autonomous Transaction Processing (ATP)
Pour obtenir un exemple de collecte de journaux à partir de tables ou de vues dans Oracle Autonomous Database, reportez-vous à Collecte de journaux à partir de tables ou de vues dans Oracle Autonomous Database (
Tutoriel ).
Oracle Logging Analytics fournit un grand ensemble de sources de journal définies par Oracle de type Base de données pour Oracle Database :
Source de journal | Type d'entité |
---|---|
AVDF Alert in Oracle Database |
Autonomous JSON Database, Oracle Database Instance, Autonomous Database avec Oracle APEX Application Development, Autonomous Data Warehouse, Oracle Database, Autonomous Transaction Processing |
AVDF Event in Oracle Database |
Oracle Database Instance, Autonomous Data Warehouse, Oracle Database, Autonomous JSON Database, Autonomous Database avec Oracle APEX Application Development, Autonomous Transaction Processing |
Identity and Access Management Audit Database |
Oracle Database Instance, Autonomous Transaction Processing, Autonomous JSON Database, Autonomous Database avec Oracle APEX Application Development, Oracle Database, Autonomous Data Warehouse |
Oracle DB Audit Log Source Stored in Database |
Autonomous Transaction Processing, Oracle Database Instance, Autonomous Data Warehouse, Autonomous JSON Database, Autonomous Database avec Oracle APEX Application Development, Oracle Database |
Oracle EBS Transaction Logs |
Autonomous Database avec Oracle APEX Application Development, Oracle Pluggable Database, Autonomous Transaction Processing, Oracle Database Instance, Autonomous JSON Database, Oracle Database, Autonomous Data Warehouse |
Symantec DLP System Events |
Autonomous JSON Database, Oracle Database, Autonomous Transaction Processing, Autonomous Database avec Oracle APEX Application Development, Oracle Database Instance, Autonomous Data Warehouse |
Oracle Unified DB Audit Log Source Stored in Database 12.1 |
Autonomous JSON Database, Oracle Database, Oracle Pluggable Database, Autonomous Data Warehouse, Oracle Database Instance, Autonomous Transaction Processing, Autonomous Database avec Oracle APEX Application Development |
Oracle Unified DB Audit Log Source Stored in Database 12.2 |
Autonomous JSON Database, Oracle Database Instance, Autonomous Database avec Oracle APEX Application Development, Oracle Pluggable Database, Oracle Database, Autonomous Data Warehouse, Autonomous Transaction Processing |
Journaux d'alertes de base de données stockés dans la base de données |
Autonomous JSON Database, base de données pluggable Oracle, Autonomous Transaction Processing, Autonomous Data Warehouse, Autonomous Database avec Oracle APEX Application Development, Oracle Database Instance et Oracle Database |
Journaux de trace de base de données stockés dans la base de données |
Oracle Database, Autonomous Database avec Oracle APEX Application Development, Autonomous Data Warehouse, Oracle Database Instance, Autonomous JSON Database, Oracle Pluggable Database, Autonomous Transaction Processing |
Journaux du service Oracle Database Health Monitor |
Autonomous Transaction Processing, Oracle Database, Autonomous Database avec Oracle APEX Application Development, Oracle Database Instance, Autonomous JSON Database, Autonomous Data Warehouse |
Journaux Data Guard d'Oracle Database |
Autonomous Transaction Processing, Autonomous JSON Database, Autonomous Data Warehouse, Oracle Database, Oracle Database Instance et Autonomous Database avec Oracle APEX Application Development |
Additionally, more oracle-defined log sources of the type File are available for Oracle Database such as Database Alert Logs, Database Audit Logs, Database Audit XML Logs, Database Incident Dump Files, Database Listener Alert Logs, Database Listener Trace Logs, Database Trace Logs, and Database XML Alert Logs.
Instance de base de données Microsoft SQL Server
- Pour une collecte de journal réussie à partir de la source de base de données Microsoft SQL Server, assurez-vous que la version de l'agent de gestion est 210403.1350 ou plus tard.
- La surveillance de l'instance de base de données Microsoft SQL Server est prise en charge uniquement avec l'installation de l'agent de gestion autonome. Elle n'est pas prise en charge avec le module d'extension d'agent de gestion dans l'agent Oracle Cloud.
Les sources de journal définies par Oracle suivantes, de type Base de données, sont disponibles pour la surveillance de l'instance de base de données Microsoft SQL Server :
- McAfee Adresse de prévention de la perte de données
- McAfee Orchestrateur ePolicy
En outre, d'autres sources de journal définies par oracle de type Fichier sont disponibles pour l'instance de base de données Microsoft SQL Server, telles que Journal d'erreurs de l'agent Microsoft SQL Server et Sources de journal d'erreurs Microsoft SQL Server.
Instance de base de données MySQL
- Pour la collecte de journal à partir de la source MySQL Database, assurez-vous que la version de l'agent de gestion est 210205.0202 ou version ultérieure.
- La surveillance de l'instance MySQL Database est prise en charge uniquement avec l'installation de l'agent de gestion autonome. Elle n'est pas prise en charge avec le module d'extension d'agent de gestion dans l'agent Oracle Cloud.
Les sources de journal définies par Oracle suivantes, de type Base de données, sont disponibles pour la surveillance de l'instance MySQL Database :
- MySQL Journaux d'erreurs stockés dans la base de données
- MySQL General Log Source Stored in Database
- MySQL Journaux de requêtes lentes stockés dans la base de données
En outre, d'autres sources de journal définies par oracle de type Fichier sont disponibles pour l'instance MySQL Database, telles que Journaux XML d'audit MySQL Database, Journaux d'erreurs MySQL, MySQL Journaux de requête généraux et MySQL Journaux de requête lents.
Pour effectuer la collecte à distance sur une instance de base de données MySQL, la configuration suivante doit être appliquée au niveau de l'instance de base de données :
-
Pour autoriser l'accès à partir d'un hôte spécifique sur lequel l'agent de gestion est installé, procédez comme suit :
-
Créez le compte authentifié par le mot de passe indiqué :
CREATE USER '<mysql_user>'@'<host_name>' IDENTIFIED BY '<password>';
-
Affectez des privilèges READ pour toutes les bases de données à l'utilisateur
mysql_user
sur l'hôtehost_name
:GRANT SELECT ON *.* TO '<mysql_user>'@'<host_name>' WITH GRANT OPTION;
-
Enregistrez les mises à jour des privilèges utilisateur en exécutant la commande suivante :
FLUSH PRIVILEGES;
-
-
Pour autoriser l'accès à une base de données spécifique à partir de n'importe quel hôte, procédez comme suit :
-
Accordez des privilèges READ à
mysql_user
à partir de n'importe quel hôte valide :GRANT SELECT ON <database_name>.* TO '<mysql_user>'@'%' WITH GRANT OPTION;
-
Enregistrez les mises à jour des privilèges utilisateur en exécutant la commande suivante :
FLUSH PRIVILEGES;
-
Base de données PostgreSQL
- Pour que la collecte de journaux à partir de la source de base de données PostgreSQL aboutisse, veillez à installer la version d'agent de gestion 250121.1929 ou plus tard sur l'hôte de base de données.
- La surveillance de la base de données PostgreSQL est prise en charge uniquement avec l'installation de l'agent de gestion autonome. Elle n'est pas prise en charge avec le module d'extension d'agent de gestion dans l'agent Oracle Cloud.
Les sources de journal définies par Oracle suivantes de type Fichier sont disponibles pour la surveillance de la base de données PostgreSQL :
- Journaux du service OCI PostgreSQL
- PostgreSQL Logs
Création de l'entité de base de données
Créez l'entité de base de données pour référencer votre instance de base de données et activer la collecte de journal à partir de celle-ci. Si vous utilisez l'agent de gestion pour collecter les journaux, après l'avoir installé, vous devez revenir ici afin de configurer la surveillance de l'agent pour l'entité.
-
Ouvrez le menu de navigation et cliquez sur Observation et gestion. Sous Logging Analytics, cliquez sur Administration. La page Présentation de l'administration apparaît.
-
Les ressources d'administration sont répertoriées dans le panneau de navigation de gauche sous Ressources. Cliquez sur Entités.
-
Assurez-vous que le sélecteur de compartiment sur la gauche indique que vous vous trouvez dans le compartiment souhaité pour cette nouvelle entité.
Cliquez sur Créer.
-
Sélectionnez un type d'entité qui convient à l'instance de base de données, par exemple Instance de base de données Oracle.
Attribuez un nom à l'entité.
-
Sélectionnez le compartiment de l'agent de gestion, dans lequel l'agent est installé, puis sélectionnez l'agent de gestion à associer à l'entité de base de données afin que les journaux puissent être collectés.
Vous pouvez également commencer par créer l'entité, la modifier ultérieurement et fournir l'OCID de l'agent de gestion une fois l'agent installé.
Remarque
-
La surveillance de l'instance MySQL Database, de la base de données Microsoft SQL Server et de la base de données PostgreSQL est prise en charge uniquement avec l'installation de l'agent de gestion autonome. Elle n'est pas prise en charge avec le module d'extension d'agent de gestion dans l'agent Oracle Cloud.
-
Utilisez la version 210403.1350 ou version ultérieure de l'agent de gestion pour effectuer l'installation sur l'hôte de base de données afin de garantir la prise en charge de la base de données Microsoft SQL Server.
-
Pour la collecte de journal à partir de la source d'instance MySQL Database, assurez-vous que la version de l'agent de gestion est 210205.0202 ou version ultérieure.
-
Utilisez la version de l'agent de gestion 250121.1929 ou ultérieurement pour effectuer l'installation sur l'hôte de base de données afin de garantir la prise en charge de la base de données PostgreSQL.
-
-
Si votre instance de base de données possède un ID de ressource cloud, indiquez cet OCID. Si l'OCID est fourni et que la base de données est activée pour Database Management, vous pouvez le visualiser dans Database Management à l'aide de l'option disponible dans l'explorateur de journaux. Reportez-vous à Affichage de l'entité de base de données dans Database Management Service.
-
Pour inclure SQL, fournissez les propriétés suivantes dans le cas d'Oracle Database (pour les déploiements RAC), d'Oracle Database Instance ou de la base de données pluggable Oracle :
port
hostname
sid
ouservice_name
Si vous fournissez les deux valeurs, Logging Analytics utilise
service_name
pour l'inclusion SQL.
Pour la collecte de journaux à partir de l'instance de base de données Microsoft SQL Server, de la source MySQL Database et de la base de données PostgreSQL, fournissez les propriétés suivantes :
database_name
host_name
port
Si vous envisagez d'utiliser des sources de journal définies par Oracle pour collecter des journaux à partir d'agents de gestion, il est recommandé de fournir toutes les valeurs de paramètre qui peuvent déjà être définies pour le type d'entité choisi. Si les valeurs de paramètre ne sont pas fournies, lorsque vous essayez d'associer la source à cette entité, l'opération échoue en raison des valeurs de paramètre manquantes.
Cliquez sur Enregistrer.
Création de la source de base de données
-
Ouvrez le menu de navigation et cliquez sur Observation et gestion. Sous Logging Analytics, cliquez sur Administration. La page Présentation de l'administration apparaît.
-
Les ressources d'administration sont répertoriées dans le panneau de navigation de gauche sous Ressources. Cliquez sur Sources.
-
Sur la page Sources, cliquez sur Créer une source.
La boîte de dialogue Créer une source apparaît.
-
Dans le champ Source, saisissez le nom de la source.
-
Dans la liste Type de source, sélectionnez Base de données.
-
Cliquez sur Type d'entité et sélectionnez le type d'entité requis. Par exemple, Instance de base de données Oracle, Base de données pluggable Oracle, Instance de base de données Microsoft SQL Server ou Instance de base de données MySQL.
-
Dans l'onglet Demandes de base de données, cliquez sur Ajouter pour indiquer les détails de la requête SQL, en fonction de l'instance Oracle Logging Analytics qui collecte les journaux d'instance de base de données.
Reportez-vous à Instructions relatives aux requêtes SQL.
-
Cliquez sur Configurer pour afficher la boîte de dialogue Configurer la correspondance de colonne.
-
Dans la boîte de dialogue Configurer la correspondance de colonne, mettez en correspondance les champs SQL avec les noms de champ affichés dans les enregistrements de journal réels. Pour créer un champ pour la mise en correspondance, cliquez sur l'icône
.
Indiquez une colonne de séquence. La valeur de ce champ doit déterminer l'ordre des enregistrements insérés dans la table. Il doit s'agir d'une valeur incrémentielle unique. Si vous ne souhaitez pas que les champs déterminent la séquence des enregistrements, vous pouvez sélectionner Heure de collecte de requête SQL pour utiliser l'heure de collecte comme heure d'entrée de journal. Dans ce cas, tous les enregistrements de journal sont de nouveau collectés à chaque cycle de collecte.
Remarque
Le premier champ mis en correspondance avec le type de données
Timestamp
est utilisé comme horodatage de l'enregistrement de journal. Si aucun champ de ce type n'est présent, l'heure de collecte est utilisée comme heure de l'enregistrement de journal.Lorsque les journaux sont collectés pour la première fois après la création de la source de journal (collecte des journaux historiques) :
-
Si un champ de la requête SQL est mis en correspondance avec le champ
Time
, la valeur de ce champ est utilisée comme référence pour télécharger les enregistrements de journal des 30 derniers jours. -
Si aucun des champs de la requête SQL n'est mis en correspondance avec le champ
Time
, un maximum de 10 000 000 d'enregistrements est téléchargé.
Cliquez sur Terminé.
-
-
Répétez les étapes 6 à 8 pour ajouter plusieurs requêtes SQL.
-
Sélectionnez Activé pour chacune des requêtes SQL, puis cliquez sur Enregistrer.
Fourniture des informations d'identification de l'entité de base de données
-
Connectez-vous à l'hôte sur lequel l'agent de gestion est installé.
-
Créez un fichier d'entrée JSON d'informations d'identification de type
DBCreds
. Par exemple,agent_dbcreds.json
:cat agent_dbcreds.json { "source": "lacollector.la_database_sql", "name": "LCAgentDBCreds.<entity_name>", "type": "DBCreds", "usage": "LOGANALYTICS", "disabled": "false", "properties": [ { "name": "DBUserName", "value": "CLEAR[username]" }, { "name": "DBPassword", "value": "CLEAR[password]" }, { "name": "DBRole", "value": "CLEAR[normal]" } ] }
Les propriétés suivantes doivent être fournies dans le fichier d'entrée comme dans l'exemple
agent_dbcreds.json
ci-dessus :- source : "lacollector.la_database_sql"
- name : "LCAgentDBCreds.<entity_name>"
entity_name
est la valeur du champ Nom saisie lors de la création de l'entité. - type : "DBCreds"
- usage : "LOGANALYTICS"
- properties : nom utilisateur, mot de passe et rôle. Le rôle est facultatif.
-
Utilisez le script
credential_mgmt.sh
avec l'opérationupsertCredentials
pour ajouter les informations d'identification à la banque d'informations d'identification de l'agent :Syntaxe :
$cat <input_file> | sudo -u mgmt_agent /opt/oracle/mgmt_agent/agent_inst/bin/credential_mgmt.sh -o upsertCredentials -s <service_name>
Dans la commande ci-dessus :
- Fichier d'entrée : fichier JSON d'entrée avec les paramètres d'informations d'identification, par exemple,
agent_dbcreds.json
. - Nom de service : utilisez
logan
comme nom du module d'extension Oracle Logging Analytics déployé sur l'agent.
En utilisant les exemples de valeur des deux paramètres, la commande est la suivante :
$cat agent_dbcreds.json | sudo -u mgmt_agent /opt/oracle/mgmt_agent/agent_inst/bin/credential_mgmt.sh -o upsertCredentials -s logan
Une fois les informations d'identification ajoutées, vous pouvez supprimer le fichier JSON d'entrée.
Pour plus d'informations sur la gestion des informations d'identification dans la banque d'informations d'identification de l'agent de gestion, reportez-vous à Informations d'identification de source d'agent de gestion dans la documentation de l'agent de gestion.
- Fichier d'entrée : fichier JSON d'entrée avec les paramètres d'informations d'identification, par exemple,
Affichage de l'entité de base de données dans Database Management Service
Si la base de données est activée pour Database Management et qu'un OCID de ressource cloud lui est associé, Logging Analytics vous permet de la visualiser dans Database Management à l'aide de l'option disponible dans l'explorateur de journaux.
Afin d'activer Database Management pour votre base de données, reportez-vous à Documentation OCI : activation de Database Management.
-
Ouvrez le menu de navigation et cliquez sur Observation et gestion. Sous Logging Analytics, cliquez sur Explorateur de journal.
-
Vous pouvez éventuellement affiner la recherche de journaux par type d'entité, qui doit être l'un des types de base de données. Dans le panneau Champs, sous la section Fixe, cliquez sur Type d'entité. Dans la boîte de dialogue Type d'entité, sélectionnez les types d'entité requis, par exemple,
Oracle Database Instance
, puis cliquez sur Appliquer. -
Dans le panneau Visualiser, sélectionnez l'une des options de visualisation qui affichent la table des enregistrements, par exemple, Enregistrements avec histogramme.
Les journaux sont ensuite affichés dans la visualisation Enregistrements avec histogramme. Dans la table des enregistrements, sous chaque enregistrement de journal, les informations sur le nom de l'entité, la source de journal et le type d'entité sont affichées.
-
Cliquez sur le nom de l'entité. Dans le menu, cliquez sur Afficher dans Database Management.
Un nouvel onglet avec la console de service Database Management dans le contexte de la base de données s'affiche.