Evénements du service Database
L'implémentation de la fonctionnalité des événements du service Database vous permet d'être informé des problèmes d'état des bases de données ou d'autres composants Oracle sur le système de base de données.
Il est possible qu'Oracle Database ou Clusterware ne soit pas en bon état, ou que divers composants système ne disposent pas de suffisamment d'espace dans le système de base de données. Les clients ne sont pas informés de cette situation. L'implémentation de la fonctionnalité des événements du service Database génère des événements pour les opérations et conditions de plan de données, ainsi que des notifications pour les clients à l'aide du service OCI Events et des mécanismes de notification existants dans leur location. Les clients peuvent ensuite créer des sujets et s'y abonner via leur adresse électronique, des fonctions ou des flux de données.
Remarques :
Le flux d'événements sur le système de base de données dépend d'Oracle Trace File Analyzer (TFA) et de l'agent Oracle Database Cloud Service (DBCS). Assurez-vous que ces composants sont en fonctionnement.Réception de notifications sur les événements du service Database
Abonnez-vous aux événements du service Database et recevez des notifications. Pour recevoir des notifications, abonnez-vous aux événements du service Database et recevez des notifications à l'aide d'Oracle Notification Service. Reportez-vous à Présentation de Notifications. Pour plus d'informations sur Oracle Cloud Infrastructure Events, reportez-vous à Présentation d'Events.
Service Events - 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 - Informations
- Système de base de données - Critique
Types d'événement du service Database
Le tableau suivant répertorie les types d'événement émis par le service Database.
Remarques :
- Les événements critiques sont déclenchés par diverses conditions critiques et erreurs qui perturbent la base de données ou d'autres composants essentiels. Par exemple, les erreurs de base de données ne répondant pas et les erreurs de disponibilité pour les bases de données, les noeuds de base de données et les 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 les autres composants critiques fonctionnent comme prévu. Par exemple, un arrêt correct de CRS, de la base de données Conteneur, du client ou du processus d'écoute SCAN, ou un démarrage de ces composants, entraînera la création d'un événement avec la gravité
INFO
. - Les limites de seuil réduisent le nombre de notifications que les clients reçoivent pour des événements d'incident similaires, tout en s'assurant qu'ils reçoivent ces événements d'incident ainsi que les rappels correspondants en temps opportun.
Evénements du service Database
Remarques :
Outre les événements énumérés ci-dessous, Oracle analyse des événements supplémentaires afin de fournir le plus haut niveau d'opérations de service et de support pour assurer une haute disponibilité des services.Tableau - Evénements du service Database
Nom convivial | Nom d'événement | Description | Résolution | Type d'événement | Seuil |
---|---|---|---|---|---|
Utilisation des ressources - Utilisation du disque | HEALTH.DB_GUEST.FILESYSTEM.FREE_SPACE |
Cet événement est signalé lorsque l'espace libre du système de fichiers de l'invité de machine virtuelle est inférieur à 10 %, comme déterminé par la commande
|
HEALTH-DB_GUEST-FILESYSTEM-FREE_SPACE | com.oraclecloud.databaseservice.dbnode.critical |
Seuil critique : 90 % |
Statut Démarré/Arrêté de CRS | AVAILABILITY.DB_GUEST.CRS_INSTANCE.DOWN .
|
Un événement de type CRITICAL est créé lorsque CRS (Cluster Ready Service) est repéré comme étant arrêté. | AVAILABILITY-DB_GUEST-CRS_INSTANCE.DOWN | com.oraclecloud.databaseservice.dbnode.critical (si .DOWN et non "user_action")
|
S/O |
AVAILABILITY.DB_GUEST.CRS_INSTANCE.DOWN_CLEARED |
Un événement de type INFORMATION est créé une fois qu'il est déterminé que l'événement concernant l'instance CRS arrêtée 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 | |
Processus d'écoute SCAN démarré/arrêté | AVAILABILITY.DB_CLUSTER.SCAN_LISTENER.DOWN |
Un événement DOWN est créé lorsqu'un processus d'écoute SCAN est arrêté. L'événement est de type INFORMATION lorsqu'un processus d'écoute SCAN est arrêté en raison d'une action de l'utilisateur, par exemple avec les commandes de l'utilitaire Server Control ( Il existe trois processus d'écoute SCAN par cluster appelés LISTENER_SCAN[1,2,3]. |
AVAILABILITY-DB_CLUSTER-SCAN_LISTENER-DOWN | com.oraclecloud.databaseservice.dbnode.critical (si .DOWN et non "user_action")
|
S/O |
AVAILABILITY.DB_CLUSTER.SCAN_LISTENER.DOWN_CLEARED |
Un événement de type INFORMATION est créé une fois qu'il est déterminé que l'événement concernant le processus d'écoute SCAN arrêté a été effacé. | S/O | com.oraclecloud.databaseservice.dbnode.information (si .DOWN_CLEARED)
|
S/O | |
Processus d'écoute réseau démarré/arrêté | AVAILABILITY.DB_GUEST.CLIENT_LISTENER.DOWN |
Un événement DOWN est créé lorsqu'un processus d'écoute client est arrêté. L'événement est de type INFORMATION lorsqu'un processus d'écoute client est arrêté en raison d'une action de l'utilisateur, par exemple avec les commandes de l'utilitaire Server Control ( Il existe un processus d'écoute client par noeud, chacun appelé LISTENER. |
AVAILABILITY-DB_GUEST-CLIENT_LISTENER.DOWN | com.oraclecloud.databaseservice.database.critical (si .DOWN et non "user_action")
|
S/O |
AVAILABILITY.DB_GUEST.CLIENT_LISTENER.DOWN_CLEARED |
Un événement de type INFORMATION est créé une fois qu'il est déterminé que l'événement concernant le processus d'écoute client arrêté a été effacé. | S/O | com.oraclecloud.databaseservice.database.information (si .DOWN_CLEARED)
|
S/O | |
Base de données Conteneur démarrée/arrêtée | AVAILABILITY.DB_GUEST.CDB_INSTANCE.DOWN |
Un événement DOWN est créé lorsqu'une instance de base de données est arrêtée. 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 celles de l'utilitaire Server Control (srvctl ), ou de toute action de maintenance Oracle Cloud qui utilise ces commandes, telle qu'une mise à jour du logiciel du répertoire de base de base de données. L'événement est de type CRITICAL lorsqu'une instance de base de données est arrêtée de manière inattendue. Un événement DOWN_CLEARED correspondant est créé lorsqu'une instance de base de données est démarrée.
|
AVAILABILITY-DB_GUEST-CDB_INSTANCE-DOWN | com.oraclecloud.databaseservice.database.critical (si .DOWN et non "user_action")
|
S/O |
AVAILABILITY.DB_GUEST.CDB_INSTANCE.DOWN_CLEARED |
Un événement de type INFORMATION est créé une fois qu'il est déterminé que l'événement concernant la base de données Conteneur arrêtée a été effacé. | S/O | com.oraclecloud.databaseservice.database.information (si .DOWN_CLEARED)
|
S/O | |
Erreurs de base de données critiques | HEALTH.DB_CLUSTER.CDB.CORRUPTION |
Une altération 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é à la recherche d'erreurs spécifiques qui indiquent des altérations de bloc physique ou logique, ou des altérations de bloc logique dus à 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 ne peut pas le faire assez rapidement vers 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 | |
Echecs de sauvegarde | HEALTH.DB_CLUSTER.CDB.BACKUP_FAILURE |
Un événement de type CRITICAL est créé si une sauvegarde de base de données Conteneur avec un statut FAILED est signalée 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 une utilisation de l'espace supérieure ou égale à 90 %. Un événement de type INFORMATION est créé lorsque l'utilisation de l'espace par le groupe de disques ASM est inférieure à 90 %. | HEALTH-DB_CLUSTER-DISK_GROUP-FREE_SPACE |
|
Des notifications sont envoyées lorsque l'utilisation atteint 70 %, 80 %, 90 % et 100 % avec une gravité correspondante de 4, 3, 2 et 1. |
Restriction temporaire des collectes de diagnostics automatiques pour des événements spécifiques
Utilisez la commande tfactl blackout
pour supprimer temporairement les collectes de diagnostics automatiques.
Lorsque vous définissez la coupure d'une cible, Oracle Trace File Analyzer arrête les collectes de diagnostics automatiques s'il détecte des événements dans les journaux d'alertes de cette cible lors de l'analyse. Par défaut, une coupure est effective 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 |
|
Permet d'ajouter, d'enlever ou d'imprimer des conditions de coupure. |
Type de cible :
|
Permet de limiter la coupure uniquement au type de cible indiqué.
|
-target all|name |
Permet d'indiquer la cible pour la coupure. Vous pouvez indiquer une liste de cibles séparées par des virgules. Par défaut, la cible est définie sur |
-container name |
Permet d'indiquer le nom du conteneur de base de données (db_unique_name ) dans lequel la coupure prendra effet (pour PDB, DB_TABLESPACE et PDB_TABLESPACE).
|
-pdb pdb_name |
Permet d'indiquer la base de données pluggable dans laquelle la coupure prendra effet (pour PDB_TABLESPACE uniquement). |
-events all|"str1,str2" |
Permet de limiter la coupure aux événements de disponibilité, ou aux chaînes d'événement, qui ne doivent pas déclencher de collectes automatiques, ou qui doivent être marqués comme faisant l'objet d'une coupure dans le fichier JSON de télémétrie.
string : coupure pour les incidents dont une partie de la ligne contient les chaînes indiquées. Indiquez une liste de chaînes séparées par des virgules. |
-timeout nh|nd|none |
Permet d'indiquer la durée de la coupure en nombre d'heures ou de jours avant expiration. Par défaut, le délai d'expiration est défini sur 24 heures (24 h). |
-c|-local |
Permet d'indiquer si la coupure doit être définie sur Par défaut, la coupure est définie sur |
-reason comment |
Permet d'indiquer un motif descriptif de la coupure. |
-docollection |
Utilisez cette option afin d'effectuer une collecte de diagnostics automatique même si une coupure est définie pour cette cible. |
Exemples
Voici quelques exemples d'utilisation de la commande tfactl blackout.
Pour effectuer la coupure de l'événement ORA-00600
sur le type de cible database
et la cible mydb
tfactl blackout add -targettype database -target mydb -event "ORA-00600"
Pour effectuer la coupure de l'événement ORA-04031
sur le type de cible database
et la cible all
tfactl blackout add -targettype database -target all -event "ORA-04031" -timeout 1h
Pour effectuer la coupure des événements de sauvegarde de base de données sur le type de cible dbbackup
et la cible mydb
tfactl blackout add -targettype dbbackup -target mydb
Pour effectuer la coupure des événements Data Guard de base de données sur le type de cible db_dataguard
et la cible mydb
tfactl blackout add -targettype db_dataguard -target mydb -timeout 30m
Pour effectuer la coupure des événements de tablespace de base de données sur le type de cible db_tablespace
, la cible system
et le conteneur mydb
tfactl blackout add -targettype db_tablespace -target system -container mydb -timeout 30m
Pour effectuer la coupure des événements ALL
sur le type de cible host
et la 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 la coupure :
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 enlever la coupure de l'événement ORA-00600
sur le type de cible database
et la cible mydb
tfactl blackout remove -targettype database -event "ORA-00600" -target mydb
Pour enlever la coupure des événements de sauvegarde de base de données sur le type de cible dbbackup
et la cible mydb
tfactl blackout remove -targettype dbbackup -target mydb
Pour enlever la coupure des événements de tablespace de base de données sur le type de cible db_tablespace
, la cible system
et le conteneur mydb
tfactl blackout remove -targettype db_tablespace -target system -container mydb
Pour enlever la coupure des événements d'hôte sur le type de cible all
et la cible all
tfactl blackout remove -targettype host -event all -target all
Gestion d'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 autre que root :
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..
Gestion de l'agent de service Database
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 de service Database, 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