Fichiers journaux RDS de base de données Amazon pour Oracle - Amazon Relational Database Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Fichiers journaux RDS de base de données Amazon pour Oracle

Vous pouvez accéder aux journaux d'alertes, aux fichiers d'audit et aux fichiers de trace Oracle à l'aide de la RDS console Amazon ouAPI. Pour plus d'informations sur l'affichage, le téléchargement ou la consultation des journaux de base de données basés sur des fichiers, consultez Surveillance des fichiers journaux RDSAmazon.

Les fichiers d'audit Oracle fournis sont les fichiers d'audit Oracle standard. Amazon RDS prend en charge la fonctionnalité d'audit fin d'Oracle (FGA). Cependant, l'accès au journal ne permet pas d'accéder aux FGA événements stockés dans la SYS.FGA_LOG$ table et accessibles via la DBA_FGA_AUDIT_TRAIL vue.

L'DescribeDBLogFilesAPIopération qui répertorie les fichiers journaux Oracle disponibles pour une instance de base de données ignore le MaxRecords paramètre et renvoie jusqu'à 1 000 enregistrements. L'appel est renvoyé LastWritten sous forme de POSIX date en millisecondes.

Programme de rétention

Le moteur de base de données Oracle peut procéder à la rotation des fichiers journaux s'ils deviennent très volumineux. Pour conserver les fichiers d'audit ou de trace, vous devez les télécharger. Si vous stockez les fichiers localement, vous réduisez vos coûts RDS de stockage sur Amazon et vous libérez de l'espace pour vos données.

Le tableau suivant indique le calendrier de conservation des journaux d'alertes, des fichiers d'audit et des fichiers de trace Oracle sur AmazonRDS.

Log type (Type de journal) Programme de rétention

Journaux des alertes

Le journal des alertes textuelles fait l'objet d'une rotation quotidienne avec une rétention de 30 jours gérée par Amazon. RDS Le journal des XML alertes est conservé pendant au moins sept jours. Vous pouvez accéder à ce journal grâce à la vue ALERTLOG.

Fichiers d'audit

La période de rétention par défaut des fichiers d'audit est de 7 jours. Amazon RDS peut supprimer des fichiers d'audit datant de plus de sept jours.

Fichiers de trace

La période de rétention par défaut des fichiers de trace est de 7 jours. Amazon RDS peut supprimer les fichiers de trace datant de plus de sept jours.

Journaux de l'écouteur

La période de rétention par défaut pour les journaux d'écouteur est de 7 jours. Amazon RDS peut supprimer les journaux d'écoute datant de plus de sept jours.

Note

Les fichiers d'audit et les fichiers de trace partagent la même configuration de rétention.

Utilisation des fichiers de trace Oracle

Vous trouverez ci-dessous des descriptions des RDS procédures Amazon relatives à la création, à l'actualisation, à l'accès et à la suppression de fichiers de trace.

Liste de fichiers

Vous pouvez utiliser l'une ou l'autre de deux procédures permettent d'accéder à tous les fichiers dans le chemin background_dump_dest. La première actualise la liste de l'ensemble des fichiers actuellement dans background_dump_dest.

EXEC rdsadmin.manage_tracefiles.refresh_tracefile_listing;

Une fois la liste actualisée, interrogez la vue suivante pour accéder aux résultats.

SELECT * FROM rdsadmin.tracefile_listing;

Vous pouvez également utiliser FROM table pour diffuser des données non relationnelles dans un format de table afin de répertorier le contenu de l'annuaire de bases de données.

SELECT * FROM TABLE(rdsadmin.rds_file_util.listdir('BDUMP'));

La requête suivante affiche le texte d'un fichier journal.

SELECT text FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP','alert_dbname.log.date'));

Sur une réplique en lecture, obtenez le nom du BDUMP répertoire en V$DATABASE.DB_UNIQUE_NAME interrogeant. Si le nom unique estDATABASE_B, le BDUMP répertoire l'estBDUMP_B. L'exemple suivant demande le BDUMP nom d'une réplique, puis utilise ce nom pour interroger le contenu dealert_DATABASE.log.2020-06-23.

SELECT 'BDUMP' || (SELECT regexp_replace(DB_UNIQUE_NAME,'.*(_[A-Z])', '\1') FROM V$DATABASE) AS BDUMP_VARIABLE FROM DUAL; BDUMP_VARIABLE -------------- BDUMP_B SELECT TEXT FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP_B','alert_DATABASE.log.2020-06-23'));

Génération de fichiers de trace et suivi d'une session

Comme il n'existe aucune restrictionALTER SESSION, de nombreuses méthodes standard de génération de fichiers de trace dans Oracle restent disponibles pour une RDS instance de base de données Amazon. Les procédures suivantes sont fournies pour les fichiers de trace pour lesquels l'accès doit être élargi.

Méthode Oracle RDSMéthode Amazon

oradebug hanganalyze 3

EXEC rdsadmin.manage_tracefiles.hanganalyze;

oradebug dump systemstate 266

EXEC rdsadmin.manage_tracefiles.dump_systemstate;

Vous pouvez utiliser de nombreuses méthodes standard pour suivre les sessions individuelles connectées à une instance de base de données Oracle sur AmazonRDS. Pour activer le suivi d'une session, vous pouvez exécuter des sous-programmes dans des SQL packages PL/ fournis par Oracle, tels que DBMS_SESSION et. DBMS_MONITOR Pour plus d'informations, consultez Activation du suivi d'une session dans la documentation d'Oracle.

Récupération de fichiers de trace

Vous pouvez récupérer n'importe quel fichier de trace en background_dump_dest utilisant une SQL requête standard sur une table RDS externe gérée par Amazon. Pour utiliser cette méthode, vous devez exécuter la procédure définissant l'emplacement de cette table sur le fichier de trace spécifique.

Par exemple, vous pouvez utiliser la vue rdsadmin.tracefile_listing indiquée ci-dessus pour répertorier tous les fichiers de trace sur le système. Vous pouvez ensuite définir la vue tracefile_table afin qu'elle pointe vers le fichier de trace souhaité à l'aide de la procédure suivante.

EXEC rdsadmin.manage_tracefiles.set_tracefile_table_location('CUST01_ora_3260_SYSTEMSTATE.trc');

L'exemple suivant créé une table externe selon le schéma actuel. L'emplacement est défini sur le fichier fourni. Vous pouvez récupérer le contenu dans un fichier local à l'aide d'une SQL requête.

SPOOL /tmp/tracefile.txt SELECT * FROM tracefile_table; SPOOL OFF;

Purge des fichiers de trace

Les fichiers de trace peuvent s'accumuler et consommer de l'espace sur le disque. Amazon RDS purge les fichiers de trace par défaut et les fichiers journaux datant de plus de sept jours. Vous pouvez afficher et définir la période de rétention des fichiers à l'aide de la procédure show_configuration. Vous devez exécuter la commande SET SERVEROUTPUT ON afin de pouvoir afficher les résultats de la configuration.

L'exemple suivant affiche la période de rétention des fichiers de trace actuelle, puis définit une nouvelle période.

# Show the current tracefile retention SQL> EXEC rdsadmin.rdsadmin_util.show_configuration; NAME:tracefile retention VALUE:10080 DESCRIPTION:tracefile expiration specifies the duration in minutes before tracefiles in bdump are automatically deleted. # Set the tracefile retention to 24 hours: SQL> EXEC rdsadmin.rdsadmin_util.set_configuration('tracefile retention',1440); SQL> commit; #show the new tracefile retention SQL> EXEC rdsadmin.rdsadmin_util.show_configuration; NAME:tracefile retention VALUE:1440 DESCRIPTION:tracefile expiration specifies the duration in minutes before tracefiles in bdump are automatically deleted.

En complément du processus de purge périodique, vous pouvez supprimer manuellement des fichiers de background_dump_dest. L'exemple suivant montre comment purger tous les fichiers datant de plus de cinq minutes.

EXEC rdsadmin.manage_tracefiles.purge_tracefiles(5);

Vous pouvez également purger tous les fichiers correspondant à un modèle spécifique (dans ce cas, n'incluez pas l'extension de fichier, par exemple .trc). L'exemple suivant montre comment purger tous les fichiers commençant par SCHPOC1_ora_5935.

EXEC rdsadmin.manage_tracefiles.purge_tracefiles('SCHPOC1_ora_5935');

Publication de journaux Oracle sur Amazon CloudWatch Logs

Vous pouvez configurer votre instance de base de données Oracle RDS pour publier les données de journal dans un groupe de CloudWatch journaux dans Amazon Logs. Avec CloudWatch Logs, vous pouvez analyser les données du journal et les utiliser CloudWatch pour créer des alarmes et afficher des métriques. Vous pouvez utiliser CloudWatch les journaux pour stocker vos enregistrements de journal dans un espace de stockage hautement durable.

Amazon RDS publie chaque journal de base de données Oracle en tant que flux de base de données distinct dans le groupe de journaux. Par exemple, si vous configurez la fonction d'exportation de sorte à inclure le journal d'audit, les données d'audit sont stockées dans un flux de journal d'audit dans le groupe de journaux /aws/rds/instance/my_instance/audit. Le tableau suivant récapitule les conditions requises RDS pour qu'Oracle publie des CloudWatch journaux sur Amazon Logs.

Nom du journal Exigence Par défaut

Journal des alertes

Aucune. Vous ne pouvez pas désactiver ce journal.

Activées

Journal de suivi

Définissez le trace_enabled paramètre sur TRUE ou laissez-le sur sa valeur par défaut.

TRUE

Journal d'audit

Définissez le audit_trail paramètre sur l'une des valeurs autorisées suivantes :

{ none | os | db [, extended] | xml [, extended] }

none

Journal d'écoute

Aucune. Vous ne pouvez pas désactiver ce journal.

Activées

Journal d'Oracle Management Agent

Aucune. Vous ne pouvez pas désactiver ce journal.

Activées

Le journal d'Oracle Management Agent contient les groupes de journaux présentés dans le tableau suivant.

Nom du journal CloudWatch groupe de journaux
emctl.log oemagent-emctl
emdctlj.log oemagent-emdctlj
gcagent.log oemagent-gcagent
gcagent_errors.log oemagent-gcagent-errors
emagent.nohup oemagent-emagent-nohup
secure.log oemagent-secure

Pour plus d'informations, consultez Localisation des fichiers de suivi et des fichiers journaux de Management Agent dans la documentation Oracle.

Pour publier les journaux Oracle DB dans CloudWatch Logs à partir du AWS Management Console
  1. Ouvrez la RDS console Amazon à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans le panneau de navigation, choisissez Bases de données, puis l'instance de base de données que vous souhaitez modifier.

  3. Sélectionnez Modify (Modifier).

  4. Dans la section Exportations de journaux, choisissez les journaux que vous souhaitez commencer à publier dans CloudWatch Logs.

  5. Choisissez Continuer, puis Modifier l'instance de base de données sur la page récapitulative.

Pour publier les journaux Oracle vous pouvez utiliser la commande modify-db-instance avec les paramètres suivants :

  • --db-instance-identifier

  • --cloudwatch-logs-export-configuration

Note

Une modification apportée à l'option --cloudwatch-logs-export-configuration est toujours appliquée immédiatement à l'instance de base de données. Par conséquent, les options --apply-immediately et --no-apply-immediately sont sans effet.

Vous pouvez également publier des journaux Oracle en utilisant les commandes suivantes :

Exemple

L'exemple suivant crée une instance de base de données Oracle avec la publication CloudWatch des journaux activée. La --cloudwatch-logs-export-configuration valeur est un JSON tableau de chaînes. Les chaînes peuvent être une combinaison de alert, audit, listener et trace.

Dans Linux, macOS, ou Unix:

aws rds create-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '["trace","audit","alert","listener","oemagent"]' \ --db-instance-class db.m5.large \ --allocated-storage 20 \ --engine oracle-ee \ --engine-version 19.0.0.0.ru-2024-04.rur-2024-04.r1 \ --license-model bring-your-own-license \ --master-username myadmin \ --manage-master-user-password

Dans Windows:

aws rds create-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration trace alert audit listener oemagent ^ --db-instance-class db.m5.large ^ --allocated-storage 20 ^ --engine oracle-ee ^ --engine-version 19.0.0.0.ru-2024-04.rur-2024-04.r1 ^ --license-model bring-your-own-license ^ --master-username myadmin ^ --manage-master-user-password
Exemple

L'exemple suivant modifie une instance de base de données Oracle existante pour publier des fichiers CloudWatch journaux dans Logs. La --cloudwatch-logs-export-configuration valeur est un JSON objet. La clé pour cet objet est EnableLogTypes et sa valeur est un tableau de chaînes avec une combinaison quelconque de alert, audit, listener et trace.

Dans Linux, macOS, ou Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["trace","alert","audit","listener","oemagent"]}'

Dans Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration EnableLogTypes=\"trace\",\"alert\",\"audit\",\"listener\",\"oemagent\"
Exemple

L'exemple suivant modifie une instance de base de données Oracle existante pour désactiver la publication des fichiers journaux d'audit et d'écoute dans Logs. CloudWatch La --cloudwatch-logs-export-configuration valeur est un JSON objet. La clé pour cet objet est DisableLogTypes et sa valeur est un tableau de chaînes avec une combinaison quelconque de alert, audit, listener et trace.

Dans Linux, macOS, ou Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '{"DisableLogTypes":["audit","listener"]}'

Dans Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration DisableLogTypes=\"audit\",\"listener\"

Vous pouvez publier les journaux Oracle DB à l'aide du RDSAPI. Vous pouvez appeler l'action ModifyDBInstance avec les paramètres suivants :

  • DBInstanceIdentifier

  • CloudwatchLogsExportConfiguration

Note

Une modification apportée au paramètre CloudwatchLogsExportConfiguration est toujours appliquée immédiatement à l'instance de base de données. Par conséquent, le paramètre ApplyImmediately est sans effet.

Vous pouvez également publier des journaux Oracle en effectuant les RDS API opérations suivantes :

Exécutez l'une de ces RDS API opérations avec les paramètres suivants :

  • DBInstanceIdentifier

  • EnableCloudwatchLogsExports

  • Engine

  • DBInstanceClass

D'autres paramètres peuvent être nécessaires en fonction de l'RDSopération que vous exécutez.

Accès aux journaux d'alertes et aux journaux des auditeurs

Vous pouvez consulter le journal des alertes à l'aide de la RDS console Amazon. Vous pouvez également utiliser la SQL déclaration suivante.

SELECT message_text FROM alertlog;

Accédez au journal de l'écouteur à l'aide d'Amazon CloudWatch Logs.

Note

Oracle fait pivoter les journaux d'alerte et d'écoute lorsqu'ils dépassent 10 Mo, date à laquelle ils ne sont plus disponibles sur Amazon RDS Views.