Événements du service de base de données
La mise en oeuvre de la fonction Événements du service de base de données vous permet d'être informé des problèmes d'état liés à vos bases de données Oracle ou à d'autres composants du système de base de données.
Il est possible qu'Oracle Database ou qu'Oracle Clusterware ne soit pas sain ou que divers composants du système manquent d'espace dans le système de base de données. Les clients ne sont pas avisés de cette situation. La mise en oeuvre de la fonction Événements de service de base de données génère des événements pour les opérations et les conditions du plan de données, ainsi que des avis pour les clients en tirant parti du service d'événements pour OCI et des mécanismes d'avis existants dans leur location. Les clients peuvent ensuite créer des sujets et s'abonner à ces sujets au moyen de courriels, de fonctions ou de flux.
Note :
Le flux d'événements dans le système de base de données dépend de l'agent Oracle Trace File Analyzer (TFA) et d'Oracle Database Cloud Service (DBCS). Assurez-vous que ces composants sont opérationnels.Recevoir des avis concernant les événements du service de base de données
Abonnez-vous aux événements du service de base de données pour en être avisé. Pour recevoir des avis, abonnez-vous aux événements du service de base de données et recevez des avis à l'aide du service d'avis Oracle, voir Aperçu des avis. Pour plus d'informations sur les événements Oracle Cloud Infrastructure, voir Aperçu des événements.
Service d'événements - Types d'événement
- Base de données - Critique
- Noeud de base de données - Critique
- Noeud de base de données - Erreur
- Noeud de base de données - Avertissement
- Noeud de base de données - Information
- Système de BD - Critique
Types d'événement du service de base de données
Le tableau suivant liste les types d'événement émis par le service de base de données.
Note :
- Les événements critiques sont déclenchés par diverses conditions et erreurs critiques qui perturbent la base de données ou d'autres composants essentiels. Par exemple, les erreurs de non-réponse et les erreurs de disponibilité des bases de données, des noeuds de base de données et des systèmes de base de données indiquent quand une ressource devient indisponible.
- Les événements d'information sont déclenchés lorsque la base de données et d'autres composants critiques fonctionnent comme prévu. Par exemple, un arrêt normal de CRS, de la base de données conteneur, du client ou du module d'écoute SCAN, ou un démarrage de ces composants créera un événement dont la gravité est
INFO
. - Les limites de seuil réduisent le nombre d'avis que les clients recevront pour des événements d'incident similaires tout en veillant à ce qu'ils reçoivent les événements d'incident et les rappels en temps opportun.
Événements du service de base de données
Note :
En plus des événements répertoriés ci-dessous, Oracle analyse des événements supplémentaires pour fournir le plus haut niveau d'opérations de service et de soutien afin de garantir la haute disponibilité des services.Tableau - : Événements du service de base de données
Nom convivial | Nom d'événement | Description | Mesure corrective | Type d'événement | Seuil |
---|---|---|---|---|---|
Utilisation des ressources - Utilisation des disques | HEALTH.DB_GUEST.FILESYSTEM.FREE_SPACE |
Cet événement est signalé lorsque l'espace libre du système de fichiers invité de la machine virtuelle est inférieur à 10 % (déterminé par la commande
|
HEALTH-DB_GUEST-FILESYSTEM-FREE_SPACE | com.oraclecloud.databaseservice.dbnode.critical |
Seuil critique : 90 % |
Statut En fonction/Hors fonction du service CRS | AVAILABILITY.DB_GUEST.CRS_INSTANCE.DOWN .
|
Un événement de type CRITICAL est créé lorsque le service CRS est détecté comme étant arrêté. | AVAILABILITY-DB_GUEST-CRS_INSTANCE.DOWN | com.oraclecloud.databaseservice.dbnode.critical (si .DOWN et NOT "user_action")
|
S.O. |
AVAILABILITY.DB_GUEST.CRS_INSTANCE.DOWN_CLEARED |
Un événement de type INFORMATION est créé une fois qu'il a été déterminé que l'événement correspondant à l'arrêt du CRS a été effacé. | S.O. | com.oraclecloud.databaseservice.dbnode.information (si .DOWN_CLEARED)
|
S.O. | |
AVAILABILITY.DB_GUEST.CRS_INSTANCE.EVICTION |
Un événement de type CRITICAL est créé. | AVAILABILITY-DB_GUEST-CRS_INSTANCE-EVICTION | com.oraclecloud.databaseservice.dbnode.critical |
S.O. | |
Module d'écoute SCAN en fonction/hors fonction | AVAILABILITY.DB_CLUSTER.SCAN_LISTENER.DOWN |
Un événement DOWN est créé lorsqu'un module d'écoute SCAN tombe en panne. L'événement est de type INFORMATION lorsqu'un module d'écoute SCAN est arrêté en raison d'une action de l'utilisateur, par exemple avec les commandes Server Control Utility ( Il existe trois modules d'écoute SCAN par grappe nommés LISTENER_SCAN[1,2,3]. |
AVAILABILITY-DB_CLUSTER-SCAN_LISTENER-DOWN | com.oraclecloud.databaseservice.dbnode.critical (si .DOWN et NOT "user_action")
|
S.O. |
AVAILABILITY.DB_CLUSTER.SCAN_LISTENER.DOWN_CLEARED |
Un événement de type INFORMATION est créé une fois qu'il a été déterminé que l'événement correspondant à l'arrêt du module d'écoute SCAN a été effacé. | S.O. | com.oraclecloud.databaseservice.dbnode.information (si .DOWN_CLEARED)
|
S.O. | |
Module d'écoute Oracle Net en fonction/hors fonction | AVAILABILITY.DB_GUEST.CLIENT_LISTENER.DOWN |
Un événement DOWN est créé lorsqu'un module d'écoute client tombe en panne. L'événement est de type INFORMATION lorsqu'un module d'écoute client est arrêté en raison d'une action de l'utilisateur, par exemple avec les commandes Server Control Utility ( Il existe un module d'écoute client par noeud, chacun appelé LISTENER. |
AVAILABILITY-DB_GUEST-CLIENT_LISTENER.DOWN | com.oraclecloud.databaseservice.database.critical (si .DOWN et NOT "user_action")
|
S.O. |
AVAILABILITY.DB_GUEST.CLIENT_LISTENER.DOWN_CLEARED |
Un événement de type INFORMATION est créé une fois qu'il a été déterminé que l'événement correspondant à l'arrêt du module d'écoute client a été effacé. | S.O. | com.oraclecloud.databaseservice.database.information (si .DOWN_CLEARED)
|
S.O. | |
Base de données conteneur en fonction/hors fonction | AVAILABILITY.DB_GUEST.CDB_INSTANCE.DOWN |
Un événement DOWN est créé lorsqu'une instance de base de données tombe en panne. L'événement est de type INFORMATION lorsqu'une instance de base de données est arrêtée en raison d'une action de l'utilisateur, par exemple avec les commandes SQL*Plus (sqlplus ) ou Server Control Utility (srvctl ), ou toute action de maintenance Oracle Cloud qui utilise ces commandes, telle que l'exécution d'une mise à jour logicielle de répertoire de base de base de données. L'événement est de type CRITICAL lorsqu'une instance de base de données tombe en panne de manière inattendue. Un événement DOWN_CLEARED correspondant est créé lors du démarrage d'une instance de base de données.
|
AVAILABILITY-DB_GUEST-CDB_INSTANCE-DOWN | com.oraclecloud.databaseservice.database.critical (si .DOWN et NOT "user_action")
|
S.O. |
AVAILABILITY.DB_GUEST.CDB_INSTANCE.DOWN_CLEARED |
Un événement de type INFORMATION est créé une fois qu'il a été déterminé que l'événement correspondant à l'arrêt de la base de données conteneur a été effacé. | S.O. | com.oraclecloud.databaseservice.database.information (si .DOWN_CLEARED)
|
S.O. | |
Erreurs critiques de base de données | HEALTH.DB_CLUSTER.CDB.CORRUPTION |
Une corruption de base de données a été détectée sur la base de données principale ou de secours. Le fichier alert.log de la base de données est analysé en cas d'erreurs spécifiques qui indiquent des corruptions de bloc physique, des corruptions de bloc logique ou des corruptions de bloc logique causées par des écritures perdues. | HEALTH-DB_CLUSTER-CDB-CORRUPTION | com.oraclecloud.databaseservice.database.critical |
S.O. |
Autres erreurs de base de données | HEALTH.DB_CLUSTER.CDB.ARCHIVER_HANG |
Un événement de type CRITICAL est créé si une base de données conteneur ne peut pas archiver le fichier de journalisation en ligne actif ou si elle ne peut pas archiver le fichier de journalisation en ligne actif assez rapidement pour les destinations d'archivage des journaux. | HEALTH-DB_CLUSTER-CDB-ARCHIVER_HANG | com.oraclecloud.databaseservice.database.critical |
S.O. |
HEALTH.DB_CLUSTER.CDB.DATABASE_HANG |
Un événement de type CRITICAL est créé lorsqu'un processus ou une session ne répond plus dans la base de données conteneur. | HEALTH-DB_CLUSTER-CDB-DATABASE_HANG | com.oraclecloud.databaseservice.database.critical |
S.O. | |
Échecs de sauvegarde | HEALTH.DB_CLUSTER.CDB.BACKUP_FAILURE |
Un événement de type CRITICAL est créé s'il existe une sauvegarde de base de données conteneur avec le statut FAILED signalé dans la vue v$rman_status .
|
HEALTH-DB_CLUSTER-CDB-BACKUP_FAILURE | com.oraclecloud.databaseservice.database.critical |
S.O. |
HEALTH.DB_CLUSTER.CDB.BACKUP_FAILURE_CLEARED |
Un événement de type INFORMATION est créé. | S.O. | com.oraclecloud.databaseservice.database.information |
S.O. | |
Utilisation du groupe de disques | HEALTH.DB_CLUSTER.DISK_GROUP.FREE_SPACE |
Un événement de type CRITICAL est créé lorsqu'un groupe de disques ASM atteint l'espace utilisé à 90 % ou plus. Un événement de type INFORMATION est créé lorsque l'utilisation de l'espace du groupe de disques ASM est inférieure à 90 %. | HEALTH-DB_CLUSTER-DISK_GROUP-FREE_SPACE |
|
Des avis sont envoyés lorsque l'utilisation atteint 70 %, 80 %, 90 % et 100 % avec une gravité correspondante de 4, 3, 2 et 1. |
Restreindre temporairement les collectes automatiques de diagnostics our des événements spécifiques
Utilisez la commande tfactl blackout
pour supprimer temporairement les collectes automatiques de diagnostics.
Si vous définissez une indisponibilité pour une cible, Oracle Trace File Analyzer arrête les collectes automatiques de diagnostics s'il trouve des événements dans les journaux d'alertes pour cette cible lors de l'analyse. Par défaut, l'indisponibilité sera activée pendant 24 heures.
Vous pouvez également restreindre la collecte de diagnostics automatique à un niveau granulaire, par exemple, uniquement pour ORA-00600
ou même uniquement pour ORA-00600
avec des arguments spécifiques.
Syntaxe
tfactl blackout add|remove|print
-targettype host|crs|asm|asmdg|database|dbbackup|db_dataguard|
db_tablespace|pdb_tablespace|pdb|listener|service|os
-target all|name
[-container name]
[-pdb pdb_name]
-event all|"event_str1,event_str2"|availability
[-timeout nm|nh|nd|none]
[-c|-local|-nodes "node1,node2"]
[-reason "reason for blackout"]
[-docollection]
Paramètres
Tableau - Paramètres
Paramètre | Description |
---|---|
add |remove |print |
|
Ajoute, supprime ou imprime des conditions d'indisponibilité. |
Type de cible :
|
Limite l'indisponibilité uniquement au type de cible spécifié.
|
-target all|name |
Indiquez la cible de l'indisponibilité temporaire. Vous pouvez spécifier une liste de cibles délimitées par des virgules. Par défaut, la cible est réglée à |
-container name |
Spécifiez le nom du conteneur de base de données (db_unique_name ) où l'indisponibilité prendra effet (pour la base de données enfichable, DB_TABLESPACE et PDB_TABLESPACE).
|
-pdb pdb_name |
Spécifiez la base de données enfichable où l'indisponibilité prendra effet (pour PDB_TABLESPACE uniquement). |
-events all|"str1,str2" |
Limite l'indisponibilité uniquement aux événements de disponibilité ou aux chaînes d'événement, qui ne doivent pas déclencher des collectes automatiques ou être marqués comme étant indisponibles dans le JSON de télémétrie.
chaîne : Indisponibilité pour les incidents où une partie de la ligne contient les chaînes spécifiées. Spécifiez une liste de chaînes délimitées par des virgules. |
-timeout nh|nd|none |
Spécifiez la durée de l'indisponibilité en nombre d'heures ou de jours avant la temporisation. Par défaut, la temporisation est réglée à 24 heures (24h). |
-c|-local |
Indiquez si l'indisponibilité doit être réglée à Par défaut, l'indisponibilité est réglée à |
-reason comment |
Indiquez un motif descriptif pour l'indisponibilité. |
-docollection |
Utilisez cette option pour effectuer une collecte automatique de diagnostics même si une indisponibilité est définie pour cette cible. |
Exemples
Les exemples suivants illustrent l'utilisation de la commande tfactl blackout.
Pour rendre indisponible l'événement : ORA-00600
sur le type de cible : database
, cible : mydb
tfactl blackout add -targettype database -target mydb -event "ORA-00600"
Pour rendre indisponible l'événement : ORA-04031
sur le type de cible : database
, cible : all
tfactl blackout add -targettype database -target all -event "ORA-04031" -timeout 1h
Pour rendre indisponibles les événements de sauvegarde de base de données sur le type de cible : dbbackup
, cible : mydb
tfactl blackout add -targettype dbbackup -target mydb
Pour rendre indisponibles les événements dataguard de base de données sur le type de cible : db_dataguard
, cible : mydb
tfactl blackout add -targettype db_dataguard -target mydb -timeout 30m
Pour rendre indisponibles les événements d'espace-table de base de données sur le type de cible : db_tablespace
, cible : system
, conteneur : mydb
tfactl blackout add -targettype db_tablespace -target system -container mydb -timeout 30m
Pour rendre indisponible tous les événements (ALL
) sur le type de cible : host
, cible : all
tfactl blackout add -targettype host -event all -target all -timeout 1h
-reason "Disabling all events during patching"
Pour imprimer les détails de l'indisponibilité :
tfactl blackout print
.-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
| myhostname |
+---------------+---------------------+-----------+------------------------------+------------------------------+--------+---------------+--------------------------------------+
| Target Type | Target | Events | Start Time | End Time | Status | Do Collection | Reason |
+---------------+---------------------+-----------+------------------------------+------------------------------+--------+---------------+--------------------------------------+
| HOST | ALL | ALL | Thu Mar 24 16:48:39 UTC 2022 | Thu Mar 24 17:48:39 UTC 2022 | ACTIVE | false | Disabling all events during patching |
| DATABASE | MYDB | ORA-00600 | Thu Mar 24 16:39:03 UTC 2022 | Fri Mar 25 16:39:03 UTC 2022 | ACTIVE | false | NA |
| DATABASE | ALL | ORA-04031 | Thu Mar 24 16:39:54 UTC 2022 | Thu Mar 24 17:39:54 UTC 2022 | ACTIVE | false | NA |
| DB_DATAGUARD | MYDB | ALL | Thu Mar 24 16:41:38 UTC 2022 | Thu Mar 24 17:11:38 UTC 2022 | ACTIVE | false | NA |
| DBBACKUP | MYDB | ALL | Thu Mar 24 16:40:47 UTC 2022 | Fri Mar 25 16:40:47 UTC 2022 | ACTIVE | false | NA |
| DB_TABLESPACE | SYSTEM_CDBNAME_MYDB | ALL | Thu Mar 24 16:45:56 UTC 2022 | Thu Mar 24 17:15:56 UTC 2022 | ACTIVE | false | NA |
'---------------+---------------------+-----------+------------------------------+------------------------------+--------+---------------+--------------------------------------'
Pour supprimer l'indisponibilité pour l'événement : ORA-00600
sur le type de cible : database
, cible : mydb
tfactl blackout remove -targettype database -event "ORA-00600" -target mydb
Pour supprimer l'indisponibilité pour les événements de sauvegarde de base de données sur le type de cible : dbbackup
, cible : mydb
tfactl blackout remove -targettype dbbackup -target mydb
Pour supprimer l'indisponibilité pour les événements d'espace-table de base de données sur le type de cible : db_tablespace
, cible : system
, conteneur : mydb
tfactl blackout remove -targettype db_tablespace -target system -container mydb
Pour supprimer l'indisponibilité pour les événements d'hôte sur le type de cible : all
, cible : all
tfactl blackout remove -targettype host -event all -target all
Gérer Oracle Trace File Analyzer
Pour vérifier le statut d'exécution d'Oracle Trace File Analyzer, exécutez la commande tfactl status
en tant qu'utilisateur root
ou non racine :
tfactl status
.----------------------------------------------------------------------------------------------.
| Host | Status of TFA | PID | Port | Version | Build ID | Inventory Status |
+-------+---------------+--------+------+------------+----------------------+------------------+
| node1 | RUNNING | 41312 | 5000 | 22.1.0.0.0 | 22100020220310214615 | COMPLETE |
| node2 | RUNNING | 272300 | 5000 | 22.1.0.0.0 | 22100020220310214615 | COMPLETE |
'----------------------------------------------------------------------------------------------'
Pour démarrer le démon Oracle Trace File Analyzer sur le noeud local, exécutez la commande tfactl start
en tant qu'utilisateur root
:
tfactl start
Starting TFA..
Waiting up to 100 seconds for TFA to be started..
. . . . .
Successfully started TFA Process..
. . . . .
TFA Started and listening for commands
Pour arrêter le démon Oracle Trace File Analyzer sur le noeud local, exécutez la commande tfactl stop
en tant qu'utilisateur root
:
tfactl stop
Stopping TFA from the Command Line
Nothing to do !
Please wait while TFA stops
Please wait while TFA stops
TFA-00002 Oracle Trace File Analyzer (TFA) is not running
TFA Stopped Successfully
Successfully stopped TFA..
Gérer l'agent du service de base de données
Consultez le fichier /opt/oracle/dcs/log/dcs-agent.log
pour identifier les problèmes liés à l'agent.
Pour vérifier le statut de l'agent du service de base de données, exécutez la commande systemctl status
:
systemctl status dbcsagent.service
dbcsagent.service
Loaded: loaded (/usr/lib/systemd/system/dbcsagent.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2022-04-01 13:40:19 UTC; 6min ago
Process: 9603 ExecStopPost=/bin/bash -c kill `ps -fu opc |grep "java.*dbcs-agent.*jar" |
awk '{print $2}' ` (code=exited, status=0/SUCCESS)
Main PID: 10055 (sudo)
CGroup: /system.slice/dbcsagent.service
‣ 10055 sudo -u opc /bin/bash -c umask 077; /bin/java -Doracle.security.jps.config=/opt/oracle/...
Pour démarrer l'agent s'il n'est pas en cours d'exécution, exécutez la commande systemctl start
en tant qu'utilisateur root
:
systemctl start dbcsagent.service