Hay más ejemplos de AWS SDK disponibles en el GitHub repositorio de ejemplos de AWS Doc SDK
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Ejemplos de Amazon RDS Performance Insights utilizando AWS CLI
Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante Amazon RDS Performance Insights. AWS Command Line Interface
Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.
En cada ejemplo se incluye un enlace al código de origen completo, con instrucciones de configuración y ejecución del código en el contexto.
Temas
Acciones
En el siguiente ejemplo de código, se muestra cómo utilizar create-performance-analysis-report
.
- AWS CLI
-
Creación de un informe de análisis de rendimiento
En el siguiente ejemplo de
create-performance-analysis-report
, se crea un informe de análisis de rendimiento con la hora de inicio1682969503
y la hora de finalización1682979503
para la base de datosdb-abcdefg123456789
.aws pi create-performance-analysis-report \ --service-type
RDS
\ --identifierdb-abcdefg123456789
\ --start-time1682969503
\ --end-time1682979503
Salida:
{ "AnalysisReportId": "report-0234d3ed98e28fb17" }
Para obtener más información sobre la creación de informes de análisis de rendimiento, consulte Creación de un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon RDS y Creación de un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte CreatePerformanceAnalysisReport
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar delete-performance-analysis-report
.
- AWS CLI
-
Eliminación de un informe de análisis de rendimiento
El siguiente ejemplo de
delete-performance-analysis-report
, se elimina el informe de análisis de rendimiento con el ID de informereport-0d99cc91c4422ee61
.aws pi delete-performance-analysis-report \ --service-type
RDS
\ --identifierdb-abcdefg123456789
\ --analysis-report-idreport-0d99cc91c4422ee61
Este comando no genera ninguna salida.
Para obtener más información sobre la eliminación de informes de análisis de rendimiento, consulte Eliminación de un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon RDS y Eliminación de un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte DeletePerformanceAnalysisReport
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar describe-dimension-keys
.
- AWS CLI
-
Ejemplo 1: Para describir las claves de dimensión
En este ejemplo se solicitan los nombres de todos los eventos de espera. Los datos se resumen por nombre del evento y los valores agregados de esos eventos durante el período de tiempo especificado.
Comando:
aws pi describe-dimension-keys --service-type
RDS
--identifierdb-LKCGOBK26374TPTDFXOIWVCPPM
--start-time1527026400
--end-time1527080400
--metricdb.load.avg
--group-by '{"Group":"db.wait_event"}
'Salida:
{ "AlignedEndTime": 1.5270804E9, "AlignedStartTime": 1.5270264E9, "Keys": [ { "Dimensions": {"db.wait_event.name": "wait/synch/mutex/innodb/aurora_lock_thread_slot_futex"}, "Total": 0.05906906851195666 }, { "Dimensions": {"db.wait_event.name": "wait/io/aurora_redo_log_flush"}, "Total": 0.015824722186149193 }, { "Dimensions": {"db.wait_event.name": "CPU"}, "Total": 0.008014396230265477 }, { "Dimensions": {"db.wait_event.name": "wait/io/aurora_respond_to_client"}, "Total": 0.0036361612526204477 }, { "Dimensions": {"db.wait_event.name": "wait/io/table/sql/handler"}, "Total": 0.0019108398419382965 }, { "Dimensions": {"db.wait_event.name": "wait/synch/cond/mysys/my_thread_var::suspend"}, "Total": 8.533847837782684E-4 }, { "Dimensions": {"db.wait_event.name": "wait/io/file/csv/data"}, "Total": 6.864181956477376E-4 }, { "Dimensions": {"db.wait_event.name": "Unknown"}, "Total": 3.895887056379051E-4 }, { "Dimensions": {"db.wait_event.name": "wait/synch/mutex/sql/FILE_AS_TABLE::LOCK_shim_lists"}, "Total": 3.710368625122906E-5 }, { "Dimensions": {"db.wait_event.name": "wait/lock/table/sql/handler"}, "Total": 0 } ] }
Ejemplo 2: Para encontrar el ID de SQL de las instrucciones que más contribuyen a la carga de la base de datos
La siguiente
describe-dimension-keys
solicita la instrucción SQL y el ID de SQL para las 10 instrucciones que más han contribuido a la carga de la base de datos.aws pi describe-dimension-keys \ --service-type
RDS
\ --identifierdb-abcdefg123456789
\ --start-time2023-05-01T00:00:00Z
\ --end-time2023-05-01T01:00:00Z
\ --metricdb.load.avg
\ --group-by '{"Group": "db.sql", "Dimensions": ["db.sql.id", "db.sql.statement"],"Limit": 10}
'Salida:
{ "AlignedEndTime": 1.5270804E9, "AlignedStartTime": 1.5270264E9, "Identifier": "db-abcdefg123456789", "MetricList": [ { "Keys": [ { "Dimensions": {"db.sql.id": "AKIAIOSFODNN7EXAMPLE", "db.sql.statement": "SELECT * FROM customers WHERE customer_id = 123"}, "Total": 25.5,"Partitions": [12.3, 13.2] } ] } ] }
Para obtener más información sobre las dimensiones en Información de rendimiento, consulte Carga de la base de datos en la Guía del usuario de Amazon RDS y Carga de la base de datos en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte DescribeDimensionKeys
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar get-dimension-key-details
.
- AWS CLI
-
Obtención de detalles de un grupo de dimensiones específico para una instancia de base de datos
En el siguiente ejemplo de
get-dimension-key-details
, se recupera el texto completo de una instrucción SQL para una instancia de base de datosdb-10BCD2EFGHIJ3KL4M5NO6PQRS5
. El--group
esdb.sql
y el--group-identifier
esdb.sql.id
. En este ejemplo,example-sql-id
representa un ID de SQL recuperado mediante las operacionesget-resource-metrics
odescribe-dimension-keys
. En este ejemplo, los detalles de las dimensiones están disponibles. Por lo tanto, Performance Insights recupera el texto completo de la instrucción SQL, sin truncarlo.aws pi get-dimension-key-details \ --service-type
RDS
\ --identifierdb-10BCD2EFGHIJ3KL4M5NO6PQRS5
\ --groupdb.sql
\ --group-identifierexample-sql-id
\ --requested-dimensionsstatement
Salida:
{ "Dimensions":[ { "Value": "SELECT e.last_name, d.department_name FROM employees e, departments d WHERE e.department_id=d.department_id", "Dimension": "db.sql.statement", "Status": "AVAILABLE" }, ... ] }
Para obtener más información sobre las dimensiones en Información de rendimiento, consulte Carga de la base de datos en la Guía del usuario de Amazon RDS y Carga de la base de datos en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte GetDimensionKeyDetails
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar get-performance-analysis-report
.
- AWS CLI
-
Obtención de un informe de análisis de rendimiento
En el ejemplo de
get-performance-analysis-report
siguiente se obtiene el informe de análisis de rendimiento para la base de datosdb-abcdefg123456789
con el ID de informereport-0d99cc91c4422ee61
. La respuesta proporciona el estado del informe, el identificador, los detalles del tiempo y la información.aws pi get-performance-analysis-report \ --service-type
RDS
\ --identifierdb-abcdefg123456789
\ --analysis-report-idreport-0d99cc91c4422ee61
Salida:
{ "AnalysisReport": { "Status": "Succeeded", "ServiceType": "RDS", "Identifier": "db-abcdefg123456789", "StartTime": 1680583486.584, "AnalysisReportId": "report-0d99cc91c4422ee61", "EndTime": 1680587086.584, "CreateTime": 1680587087.139, "Insights": [ ... (Condensed for space) ] } }
Para obtener más información sobre los informes de análisis de rendimiento, consulte Análisis del rendimiento de la base de datos durante un periodo de tiempo en la Guía del usuario de Amazon RDS y Análisis del rendimiento de la base de datos durante un periodo de tiempo en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte GetPerformanceAnalysisReport
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar get-resource-metadata
.
- AWS CLI
-
Obtención de metadatos de recursos para una base de datos
En el ejemplo de
get-resource-metadata
siguiente se obtienen los metadatos de recursos de la base de datosdb-abcdefg123456789
. La respuesta muestra que las estadísticas de resumen SQL están habilitadas.aws pi get-resource-metadata \ --service-type
RDS
\ --identifierdb-abcdefg123456789
Salida:
{ "Identifier": "db-abcdefg123456789", "Features":{ "SQL_DIGEST_STATISTICS":{ "Status": "ENABLED" } } }
Para obtener más información sobre las estadísticas de SQL para Información de rendimiento, consulte Estadísticas de SQL para Información de rendimiento en la Guía del usuario de Amazon RDS y Estadísticas de SQL para Información de rendimiento en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte GetResourceMetadata
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar get-resource-metrics
.
- AWS CLI
-
Para obtener métricas de recursos
En este ejemplo, se solicitan puntos de datos para el grupo de dimensiones db.wait_event y para la dimensión db.wait_event.name dentro de ese grupo. En la respuesta, los puntos de datos relevantes se agrupan por la dimensión solicitada (db.wait_event.name).
Comando:
aws pi get-resource-metrics --service-type
RDS
--identifierdb-LKCGOBK26374TPTDFXOIWVCPPM
--start-time1527026400
--end-time1527080400
--period-in-seconds300
--metricdb.load.avg
--metric-queriesfile://metric-queries.json
Los argumentos de
--metric-queries
se almacenan en el archivo JSONmetric-queries.json
: A continuación, se muestra el contenido de ese archivo:[ { "Metric": "db.load.avg", "GroupBy": { "Group":"db.wait_event" } } ]
Salida:
{ "AlignedEndTime": 1.5270804E9, "AlignedStartTime": 1.5270264E9, "Identifier": "db-LKCGOBK26374TPTDFXOIWVCPPM", "MetricList": [ { "Key": { "Metric": "db.load.avg" }, "DataPoints": [ { "Timestamp": 1527026700.0, "Value": 1.3533333333333333 }, { "Timestamp": 1527027000.0, "Value": 0.88 }, <...remaining output omitted...> ] }, { "Key": { "Metric": "db.load.avg", "Dimensions": { "db.wait_event.name": "wait/synch/mutex/innodb/aurora_lock_thread_slot_futex" } }, "DataPoints": [ { "Timestamp": 1527026700.0, "Value": 0.8566666666666667 }, { "Timestamp": 1527027000.0, "Value": 0.8633333333333333 }, <...remaining output omitted...> ], }, <...remaining output omitted...> ] }
-
Para obtener más información sobre la API, consulte GetResourceMetrics
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar list-available-resource-dimensions
.
- AWS CLI
-
Muestra de las dimensiones que se pueden consultar para un tipo de métrica en una instancia de base de datos
El ejemplo de
list-available-resource-dimensions
siguiente muestra las métricas dedb.load
que puede consultar para la base de datosdb-abcdefg123456789
.aws pi list-available-resource-dimensions \ --service-type
RDS
\ --identifierdb-abcdefg123456789
\ --metricsdb.load
Salida:
{ "MetricDimensions": [ { "Metric": "db.load", "Groups": [ { "Group": "db.user", "Dimensions": [ { "Identifier": "db.user.id" }, { "Identifier": "db.user.name" } ] }, { "Group": "db.sql_tokenized", "Dimensions": [ { "Identifier": "db.sql_tokenized.id" }, { "Identifier": "db.sql_tokenized.db_id" }, { "Identifier": "db.sql_tokenized.statement" } ] }, ... ] } ] }
Para obtener más información sobre las dimensiones en Información de rendimiento, consulte Carga de la base de datos en la Guía del usuario de Amazon RDS y Carga de la base de datos en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte ListAvailableResourceDimensions
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar list-available-resource-metrics
.
- AWS CLI
-
Muestra de las métricas que se pueden consultar para un tipo de métrica en una instancia de base de datos
El ejemplo de
list-available-resource-metrics
siguiente muestra las métricas dedb.load
que puede consultar para la base de datosdb-abcdefg123456789
.aws pi list-available-resource-metrics \ --service-type
RDS
\ --identifierdb-abcdefg123456789
\ --metric-types"os"
"db"
Salida:
{ "Metrics": [ { "Description": "The number of virtual CPUs for the DB instance", "Metric": "os.general.numVCPUs", "Unit": "vCPUs" }, ......, { "Description": "Time spent reading data file blocks by backends in this instance", "Metric": "db.IO.read_latency", "Unit": "Milliseconds per block" }, ...... ] }
Para obtener más información sobre las métricas en Información de rendimiento, consulte Carga de la base de datos en la Guía del usuario de Amazon RDS y Carga de la base de datos en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte ListAvailableResourceMetrics
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar list-performance-analysis-reports
.
- AWS CLI
-
Muestra de los informes de análisis de rendimiento de una base de datos
En el ejemplo de
list-performance-analysis-reports
siguiente se muestran los informes de análisis de rendimiento para la base de datosdb-abcdefg123456789
. La respuesta enumera todos los informes con el ID del informe, el estado y los detalles del período de tiempo.aws pi list-performance-analysis-reports \ --service-type
RDS
\ --identifierdb-abcdefg123456789
Salida:
{ "AnalysisReports": [ { "Status": "Succeeded", "EndTime": 1680587086.584, "CreateTime": 1680587087.139, "StartTime": 1680583486.584, "AnalysisReportId": "report-0d99cc91c4422ee61" }, { "Status": "Succeeded", "EndTime": 1681491137.914, "CreateTime": 1681491145.973, "StartTime": 1681487537.914, "AnalysisReportId": "report-002633115cc002233" }, { "Status": "Succeeded", "EndTime": 1681493499.849, "CreateTime": 1681493507.762, "StartTime": 1681489899.849, "AnalysisReportId": "report-043b1e006b47246f9" }, { "Status": "InProgress", "EndTime": 1682979503.0, "CreateTime": 1682979618.994, "StartTime": 1682969503.0, "AnalysisReportId": "report-01ad15f9b88bcbd56" } ] }
Para obtener más información sobre los informes de análisis de rendimiento, consulte Análisis del rendimiento de la base de datos durante un periodo de tiempo en la Guía del usuario de Amazon RDS y Análisis del rendimiento de la base de datos durante un periodo de tiempo en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte ListPerformanceAnalysisReports
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar list-tags-for-resource
.
- AWS CLI
-
Muestra de las etiquetas de un informe de análisis de rendimiento
El ejemplo de
list-tags-for-resource
siguiente muestra las etiquetas de un informe de análisis de rendimiento con el ID de informereport-0d99cc91c4422ee61
.aws pi list-tags-for-resource \ --service-type
RDS
\ --resource-arnarn:aws:pi:us-west-2:123456789012:perf-reports/RDS/db-abcdefg123456789/report-0d99cc91c4422ee61
Salida:
{ "Tags": [ { "Value": "test-tag", "Key": "name" } ] }
Para obtener más información sobre el etiquetado de informes de análisis de rendimiento, consulte Agregación de etiquetas a un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon RDS y Agregación de etiquetas a un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte ListTagsForResource
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar tag-resource
.
- AWS CLI
-
Agregación de una etiqueta a un informe de análisis de rendimiento
El ejemplo de
tag-resource
siguiente agrega la clave de etiquetaname
con el valor de etiquetatest-tag
a un informe de análisis de rendimiento con el ID de informereport-0d99cc91c4422ee61
.aws pi tag-resource \ --service-type
RDS
\ --resource-arnarn:aws:pi:us-west-2:123456789012:perf-reports/RDS/db-abcdefg123456789/report-0d99cc91c4422ee61
\ --tagsKey=name,Value=test-tag
Este comando no genera ninguna salida.
Para obtener más información sobre el etiquetado de informes de análisis de rendimiento, consulte Agregación de etiquetas a un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon RDS y Agregación de etiquetas a un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte TagResource
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código, se muestra cómo utilizar untag-resource
.
- AWS CLI
-
Eliminación de una etiqueta para un informe de análisis de rendimiento
El ejemplo de
untag-resource
siguiente elimina la etiquetaname
de un informe de análisis de rendimiento con el ID de informereport-0d99cc91c4422ee61
.aws pi untag-resource \ --service-type
RDS
\ --resource-arnarn:aws:pi:us-west-2:123456789012:perf-reports/RDS/db-abcdefg123456789/report-0d99cc91c4422ee61
\ --tag-keysname
Este comando no genera ninguna salida.
Para obtener más información sobre el etiquetado de informes de análisis de rendimiento, consulte Agregación de etiquetas a un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon RDS y Agregación de etiquetas a un informe de análisis de rendimiento en Información de rendimiento en la Guía del usuario de Amazon Aurora.
-
Para obtener más información sobre la API, consulte UntagResource
la Referencia de AWS CLI comandos.
-