File di log del database Amazon RDS per Oracle - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

File di log del database Amazon RDS per Oracle

Puoi accedere agli alert log, ai file di controllo e ai file di traccia di Oracle utilizzando la RDS console Amazon oAPI. Per ulteriori informazioni sulla visualizzazione, il download e la visione di log di database basati su file, consulta Monitoraggio dei file di log di RDSAmazon.

I file di verifica Oracle forniti sono i file di verifica Oracle standard. Amazon RDS supporta la funzionalità Oracle fine-grained auditing (). FGA Tuttavia, l'accesso ai log non fornisce l'accesso agli FGA eventi archiviati nella SYS.FGA_LOG$ tabella e accessibili tramite la vista. DBA_FGA_AUDIT_TRAIL

L'DescribeDBLogFilesAPIoperazione che elenca i file di log Oracle disponibili per un'istanza DB ignora il MaxRecords parametro e restituisce fino a 1.000 record. La chiamata viene restituita LastWritten come POSIX data in millisecondi.

Pianificazione della conservazione

Il motore database Oracle potrebbe ruotare i file di log nel caso in cui diventino molto grandi. Per conservare i file di audit o di traccia è necessario scaricarli. Se archivi i file localmente, riduci i costi di RDS storage su Amazon e rendi disponibile più spazio per i tuoi dati.

La tabella seguente mostra la pianificazione di conservazione per gli alert log, i file di controllo e i file di traccia di Oracle su AmazonRDS.

Tipo di log Pianificazione della conservazione

Log di avvisi

Il registro degli avvisi di testo viene ruotato giornalmente con una conservazione di 30 giorni gestita da Amazon. RDS Il registro degli XML avvisi viene conservato per almeno sette giorni. Puoi accedere a questo log usando la visualizzazione ALERTLOG.

File di audit

Il periodo di conservazione predefinito per i file di verifica è sette giorni. Amazon RDS potrebbe eliminare i file di controllo più vecchi di sette giorni.

File di traccia

Il periodo di conservazione dei file di traccia predefinito è 7 giorni. Amazon RDS potrebbe eliminare i file di traccia più vecchi di sette giorni.

Log del listener

Il periodo di conservazione predefinito per i log dei listener è sette giorni. Amazon RDS potrebbe eliminare i log degli ascoltatori più vecchi di sette giorni.

Nota

I file di audit e i file di traccia condividono la stessa configurazione di conservazione.

Utilizzo di file di traccia Oracle

Di seguito, puoi trovare le descrizioni delle RDS procedure di Amazon per creare, aggiornare, accedere ed eliminare i file di traccia.

Elenco di file

È possibile utilizzare una delle due procedure per consentire l'accesso a qualsiasi file nel percorso background_dump_dest. La prima procedura aggiorna una vista contenente un elenco di tutti i file attualmente in background_dump_dest.

EXEC rdsadmin.manage_tracefiles.refresh_tracefile_listing;

Dopo l'aggiornamento della vista, eseguire la query della vista seguente per accedere ai risultati.

SELECT * FROM rdsadmin.tracefile_listing;

Un'alternativa al processo precedente è quella di utilizzare FROM table per lo streaming di dati non relazionali in un formato di tipo tabella per elencare i contenuti della directory database.

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

La query seguente mostra il testo di un file di log.

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

In una replica di lettura, ottieni il nome della BDUMP directory eseguendo una query. V$DATABASE.DB_UNIQUE_NAME Se il nome univoco èDATABASE_B, allora la BDUMP directory è. BDUMP_B L'esempio seguente interroga il BDUMP nome su una replica e quindi utilizza questo nome per interrogare il contenuto di. alert_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'));

Creazione di file di traccia e tracciamento di una sessione

Poiché non ci sono restrizioniALTER SESSION, molti metodi standard per generare file di traccia in Oracle rimangono disponibili per un'istanza Amazon RDS DB. Le procedure seguenti sono fornite per i file di traccia che richiedono maggiore accesso.

Metodo Oracle RDSMetodo Amazon

oradebug hanganalyze 3

EXEC rdsadmin.manage_tracefiles.hanganalyze;

oradebug dump systemstate 266

EXEC rdsadmin.manage_tracefiles.dump_systemstate;

Puoi utilizzare molti metodi standard per tracciare le singole sessioni connesse a un'istanza DB Oracle in AmazonRDS. Per abilitare il tracciamento per una sessione, puoi eseguire sottoprogrammi nei SQL pacchetti PL/ forniti da Oracle, come e. DBMS_SESSION DBMS_MONITOR Per ulteriori informazioni, consulta la pagina relativa all'abilitazione della traccia per una sessione nella documentazione di Oracle.

Recupero di file di traccia

Puoi recuperare qualsiasi file di traccia background_dump_dest utilizzando una SQL query standard su una tabella esterna RDS gestita da Amazon. Per utilizzare questo metodo, devi eseguire la procedura per impostare la posizione di questa tabella sul file di traccia specifico.

Ad esempio, puoi utilizzare la vista rdsadmin.tracefile_listing indicata precedentemente per elencare tutti i file di traccia sul sistema. Successivamente, puoi impostare la vista tracefile_table per puntare al file di traccia desiderato utilizzando la procedura seguente.

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

L'esempio seguente crea una tabella esterna nello schema corrente con la posizione impostata sul file fornito. Puoi recuperare il contenuto in un file locale utilizzando una query. SQL

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

Eliminazione di file di traccia

I file di traccia possono accumularsi e occupare spazio su disco. Amazon RDS elimina per impostazione predefinita i file di traccia e i file di registro più vecchi di sette giorni. Puoi visualizzare e impostare il periodo di conservazione dei file di traccia tramite la procedura show_configuration. Dovresti eseguire il comando SET SERVEROUTPUT ON per poter visualizzare i risultati della configurazione.

L'esempio seguente mostra il periodo di conservazione dei file di traccia e imposta quindi un nuovo periodo di conservazione dei file di traccia.

# 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.

Oltre al processo di eliminazione periodica, puoi rimuovere manualmente i file da background_dump_dest. L'esempio seguente mostra come eliminare tutti i file che risalgono a cinque minuti prima.

EXEC rdsadmin.manage_tracefiles.purge_tracefiles(5);

Puoi inoltre eliminare tutti i file che corrispondono a un modello specifico (non includono l'estensione del file, come .trc). L'esempio seguente mostra come eliminare tutti i file che iniziano con SCHPOC1_ora_5935.

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

Pubblicazione dei log Oracle su Amazon CloudWatch Logs

Puoi configurare la tua istanza database RDS for Oracle per pubblicare i dati di log in un gruppo di log in Amazon CloudWatch Logs. Con CloudWatch Logs, puoi analizzare i dati di log e utilizzarli CloudWatch per creare allarmi e visualizzare i parametri. È possibile utilizzare CloudWatch Logs per archiviare i record di registro in un archivio altamente durevole.

Amazon RDS pubblica ogni log del database Oracle come flusso di database separato nel gruppo di log. Ad esempio, se configuri la funzione di esportazione affinché includa il log di audit, i dati relativi all'audit vengono archiviati in un flusso di log di audit nel gruppo di log /aws/rds/instance/my_instance/audit. La tabella seguente riassume i requisiti per Oracle RDS per la pubblicazione dei log su Amazon CloudWatch Logs.

Nome log Requisito Predefinita

Log di avviso

Nessuna. Non puoi disabilitare questo registro.

Abilitato

Log di traccia

Imposta il trace_enabled parametro su TRUE o lascialo impostato sul valore predefinito.

TRUE

Log di audit

Imposta il audit_trail parametro su uno dei seguenti valori consentiti:

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

none

Log del listener

Nessuna. Non puoi disabilitare questo registro.

Abilitato

Log di Oracle Management Agent

Nessuna. Non puoi disabilitare questo registro.

Abilitato

Questo registro di Oracle Management Agent è costituito dai gruppi di log riportati nella tabella di seguito.

Nome log CloudWatch gruppo di log
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-sicuro

Per maggiori informazioni, consulta Individuazione dei file di log e di traccia di Management Agent nella documentazione Oracle.

Per pubblicare i log di Oracle DB su CloudWatch Logs da AWS Management Console
  1. Apri la RDS console Amazon all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione, scegliere Databases (Database) e selezionare l'istanza database da modificare.

  3. Scegliere Modify (Modifica).

  4. Nella sezione Esportazioni dei log, scegli i log che desideri iniziare a pubblicare su CloudWatch Logs.

  5. Scegliere Continue (Continua) e quindi Modify DB Instance (Modifica istanza database) nella pagina di riepilogo.

Per pubblicare i log Oracle, puoi utilizzare il comando modify-db-instance con i parametri seguenti:

  • --db-instance-identifier

  • --cloudwatch-logs-export-configuration

Nota

Viene sempre applicata all'istanza database una modifica all'opzione --cloudwatch-logs-export-configuration immediatamente. Pertanto, le opzioni --apply-immediately e --no-apply-immediately non hanno alcun effetto.

Puoi pubblicare i log Oracle anche utilizzando i seguenti comandi:

Esempio

L'esempio seguente crea un'istanza DB Oracle con la pubblicazione dei CloudWatch log abilitata. Il --cloudwatch-logs-export-configuration valore è una JSON matrice di stringhe. Le stringhe possono essere una qualsiasi combinazione di alert, audit, listener e trace.

In Linux, macOS, oppure 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

In 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
Esempio

L'esempio seguente modifica un'istanza Oracle DB esistente per pubblicare i file di log in CloudWatch Logs. Il --cloudwatch-logs-export-configuration valore è un JSON oggetto. La chiave per questo oggetto è EnableLogTypes e il suo valore è una matrice di stringhe con qualsiasi combinazione di alert, audit, listener e trace.

In Linux, macOS, oppure Unix:

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

In Windows:

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

L'esempio seguente modifica un'istanza di Oracle DB esistente per disabilitare la pubblicazione dei file di log di controllo e del listener in Logs. CloudWatch Il --cloudwatch-logs-export-configuration valore è un oggetto. JSON La chiave per questo oggetto è DisableLogTypes e il suo valore è una matrice di stringhe con qualsiasi combinazione di alert, audit, listener e trace.

In Linux, macOS, oppure Unix:

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

In Windows:

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

È possibile pubblicare i log di Oracle DB con. RDS API Puoi chiamare l'operazione ModifyDBInstance con i parametri seguenti:

  • DBInstanceIdentifier

  • CloudwatchLogsExportConfiguration

Nota

Viene sempre applicata all'istanza database una modifica al parametro CloudwatchLogsExportConfiguration immediatamente. Pertanto, il parametro ApplyImmediately non ha alcun effetto.

È inoltre possibile pubblicare i log Oracle richiamando le seguenti operazioni: RDS API

Esegui una di queste RDS API operazioni con i seguenti parametri:

  • DBInstanceIdentifier

  • EnableCloudwatchLogsExports

  • Engine

  • DBInstanceClass

Potrebbero essere necessari altri parametri a seconda dell'RDSoperazione eseguita.

Accesso ai log degli avvisi e ai log dei listener

Puoi visualizzare il registro degli avvisi utilizzando la RDS console Amazon. Puoi anche usare la seguente SQL dichiarazione.

SELECT message_text FROM alertlog;

Accedi al registro del listener utilizzando Amazon CloudWatch Logs.

Nota

Oracle ruota i log degli avvisi e dei listener quando superano i 10 MB, dopodiché non sono più disponibili nelle visualizzazioni di Amazon. RDS