Generación de informes de rendimiento con Automatic Workload Repository (AWR) - Amazon Relational Database Service

Generación de informes de rendimiento con Automatic Workload Repository (AWR)

Para recopilar datos de rendimiento y generar informes, Oracle recomienda Automatic Workload Repository (AWR). AWR requiere Oracle Database Enterprise Edition y una licencia para los paquetes Diagnostics and Tuning. Para habilitar AWR, establezca el parámetro de inicialización CONTROL_MANAGEMENT_PACK_ACCESS en DIAGNOSTIC o DIAGNOSTIC+TUNING.

Trabajar con informes de AWR en RDS

Para generar informes de AWR, puede ejecutar scripts como awrrpt.sql. Estos scripts se instalan en el servidor host de la base de datos. En Amazon RDS, no tiene acceso directo al host. Sin embargo, puede obtener copias de scripts SQL desde otra instalación de Oracle Database.

También puede utilizar AWR ejecutando procedimientos en el paquete SYS.DBMS_WORKLOAD_REPOSITORY PL/SQL. Puede utilizar este paquete para administrar bases de referencia e instantáneas, así como para mostrar informes ASH y AWR. Por ejemplo, para generar un informe AWR en formato de texto, ejecute el procedimiento DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_TEXT. Sin embargo, no puede acceder a estos informes de AWR desde la AWS Management Console.

Cuando se trabaja con AWR, se recomienda utilizar los procedimientos rdsadmin.rdsadmin_diagnostic_util. Puede utilizar estos procedimientos para generar lo siguiente:

  • Informes AWR

  • Informes de Historial de Sesiones Activas (ASH)

  • Informes del Monitor de diagnóstico automático de bases de datos (ADDM)

  • Archivos de volcado de datos AWR de Oracle Data Pump Export

Los procedimientos rdsadmin_diagnostic_util guardan los informes en el sistema de archivos de instancia de base de datos. Puede acceder a estos informes desde la consola. También puede acceder a los informes mediante los procedimientos rdsadmin.rds_file_util y puede acceder a los informes que se copian en Amazon S3 mediante la opción Integración de S3. Para obtener más información, consulte Lectura de archivos de un directorio de instancia de base de datos y Integración de Amazon S3.

Puede utilizar los procedimientos rdsadmin_diagnostic_util en las siguientes versiones del motor para bases de datos de Amazon RDS for Oracle:

  • Todas las versiones de Oracle Database 21c

  • 19.0.0.0.ru-2020-04.rur-2020-04.r1 Oracle Database 19c y versiones posteriores

Para ver un blog que explica cómo trabajar con los informes de diagnóstico en un escenario de replicación, consulte Generate AWR reports for Amazon RDS for Oracle read replicas.

Parámetros comunes para el paquete de utilidad de diagnóstico

Normalmente se utilizan los siguientes parámetros al administrar AWR y ADDM con el paquete rdsadmin_diagnostic_util.

Parámetro Tipo de datos Valor predeterminado Obligatorio Descripción

begin_snap_id

NUMBER

El ID de la instantánea inicial.

end_snap_id

NUMBER

El ID de la instantánea final.

dump_directory

VARCHAR2

BDUMP

No

El directorio en el que se escribe el informe o el archivo de exportación. Si especifica un directorio no predeterminado, el usuario que ejecuta los procedimientos rdsadmin_diagnostic_util debe tener permisos de escritura para el directorio.

p_tag

VARCHAR2

No

Una cadena que se puede usar para distinguir entre las copias de seguridad para indicar el propósito o el uso de las copias de seguridad, como incremental o daily.

Puede especificar hasta 30 caracteres. Los caracteres válidos son a-z, A-Z, 0-9, un guión bajo (_), un guión (-) y un punto (.). La etiqueta no distingue entre mayúsculas y minúsculas. RMAN siempre almacena las etiquetas en mayúsculas, independientemente del caso que se haya usado al ingresarlas.

Las etiquetas no tienen que ser únicas, por lo que varias copias de seguridad pueden tener la misma etiqueta. Si no se especifica una etiqueta, RMAN asigna de forma automática una etiqueta predeterminada con el formato TAGYYYYMMDDTHHMMSS, donde YYYY es el año, MM es el mes, DD es el día, HH es la hora (en formato de 24 horas), MM son los minutos y SS son los segundos La fecha y la hora indican cuándo RMAN inició la copia de seguridad. Por ejemplo, una copia de seguridad con la etiqueta predeterminada TAG20190927T214517 indica una copia de seguridad que se inició el 2019-09-27 a las 21:45:17.

El parámetro p_tag es compatible con las siguientes versiones del motor para bases de datos de RDS for Oracle:

  • Oracle Database 21c (21.0.0)

  • Base de datos Oracle 19c (19.0.0), que usa 19.0.0.0.ru-2021-10.rur-2021-10.r1 y versiones posteriores

report_type

VARCHAR2

HTML

No

El formato del informe. Los valores válidos son TEXT y HTML.

dbid

NUMBER

No

Un identificador de base de datos válido (DBID) que se muestra en la vista DBA_HIST_DATABASE_INSTANCE de Oracle. Si no se especifica este parámetro, RDS utiliza el DBID actual, que se muestra en la vista V$DATABASE.DBID.

Normalmente, se utilizan los siguientes parámetros al administrar ASH con el paquete rdsadmin_diagnostic_util.

Parámetro Tipo de datos Valor predeterminado Obligatorio Descripción

begin_time

DATE

La hora de inicio del análisis ASH.

end_time

DATE

La hora de finalización del análisis ASH.

slot_width

NUMBER

0

No

Duración de las ranuras (en segundos) utilizadas en la sección «Actividad principal» del informe ASH. Si no se especifica este parámetro, el intervalo de tiempo entre begin_time y end_time utiliza no más de 10 ranuras.

sid

NUMBER

Null

No

El ID de sesión.

sql_id

VARCHAR2

Null

No

El ID de SQL.

wait_class

VARCHAR2

Null

No

El nombre de la clase de espera.

service_hash

NUMBER

Null

No

El hash del nombre del servicio.

module_name

VARCHAR2

Null

No

El nombre del módulo.

action_name

VARCHAR2

Null

No

El nombre de la acción.

client_id

VARCHAR2

Null

No

El ID específico de la aplicación de la sesión de base de datos.

plsql_entry

VARCHAR2

Null

No

El punto de entrada PL/SQL.

Generación de un informe AWR

Para generar un informe AWR, utilice el procedimiento rdsadmin.rdsadmin_diagnostic_util.awr_report.

En el ejemplo siguiente se genera un informe AWR para el rango de instantáneas 101–106. El archivo de texto de salida se denomina awrrpt_101_106.txt. Puede obtener acceso a este informe desde la AWS Management Console.

EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(101,106,'TEXT');

En el ejemplo siguiente se genera un informe HTML para el rango de instantáneas 63–65. El archivo HTML de salida se denomina awrrpt_63_65.html. El procedimiento escribe el informe en el directorio de base de datos no predeterminado denominado AWR_RPT_DUMP.

EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(63,65,'HTML','AWR_RPT_DUMP');

Extracción de datos de AWR en un archivo de volcado

Para extraer datos de AWR en un archivo de volcado, utilice el procedimiento rdsadmin.rdsadmin_diagnostic_util.awr_extract.

En el siguiente ejemplo se extrae el rango de instantáneas 101–106. El archivo de volcado de salida se denomina awrextract_101_106.dmp. Puede acceder a este archivo a través de la consola.

EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(101,106);

En el siguiente ejemplo se extrae el rango de instantáneas 63–65. El archivo de volcado de salida se denomina awrextract_63_65.dmp. El archivo se almacena en el directorio de base de datos no predeterminado denominado AWR_RPT_DUMP.

EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(63,65,'AWR_RPT_DUMP');

Generación de un informe ADDM

Para generar un informe ADDM, utilice el procedimiento rdsadmin.rdsadmin_diagnostic_util.addm_report.

En el ejemplo siguiente se genera un informe ADDM para el rango de instantáneas 101–106. El archivo de texto de salida se denomina addmrpt_101_106.txt. Puede acceder al informe a través de la consola.

EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(101,106);

En el ejemplo siguiente se genera un informe ADDM para el rango de instantáneas 63–65. El archivo de texto de salida se denomina addmrpt_63_65.txt. El archivo se almacena en el directorio de base de datos no predeterminado denominado ADDM_RPT_DUMP.

EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(63,65,'ADDM_RPT_DUMP');

Generación de un informe ASH

Para generar un informe ASH, utilice el procedimiento rdsadmin.rdsadmin_diagnostic_util.ash_report.

En el ejemplo siguiente se genera un informe ASH que incluye los datos desde hace 14 minutos hasta la hora actual. El nombre del archivo de salida utiliza el formato ashrptbegin_timeend_time.txt, donde begin_time y end_time utilizan el formato YYYYMMDDHH24MISS. Puede acceder al archivo a través de la consola.

BEGIN rdsadmin.rdsadmin_diagnostic_util.ash_report( begin_time => SYSDATE-14/1440, end_time => SYSDATE, report_type => 'TEXT'); END; /

En el siguiente ejemplo se genera un informe ASH que incluye los datos del 18 de noviembre de 2019, a las 6:07 PM hasta el 18 de noviembre de 2019, a las 6:15 PM. El nombre del informe HTML de salida es ashrpt_20190918180700_20190918181500.html. El informe se almacena en el directorio de base de datos no predeterminado denominado AWR_RPT_DUMP.

BEGIN rdsadmin.rdsadmin_diagnostic_util.ash_report( begin_time => TO_DATE('2019-09-18 18:07:00', 'YYYY-MM-DD HH24:MI:SS'), end_time => TO_DATE('2019-09-18 18:15:00', 'YYYY-MM-DD HH24:MI:SS'), report_type => 'html', dump_directory => 'AWR_RPT_DUMP'); END; /

Acceso a los informes de AWR desde la consola o la CLI

Para acceder a informes de AWR o exportar archivos de volcado, puede utilizar la AWS Management Console o la AWS CLI. Para obtener más información, consulte Descarga de un archivo de registro de base de datos.