Beispiele für Erkenntnisse zur Amazon-RDS-Leistung zur Verwendung von AWS CLI
Die folgenden Codebeispiele zeigen, wie Sie Aktionen durchführen und gängige Szenarien implementieren, indem Sie das AWS Command Line Interface mit Erkenntnissen zur Amazon-RDS-Leistung nutzen.
Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.
Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anleitungen zum Einrichten und Ausführen des Codes im Kontext finden.
Themen
Aktionen
Das folgende Codebeispiel zeigt, wie create-performance-analysis-report verwendet wird.
- AWS CLI
-
So erstellen Sie einen Leistungsanalysebericht
Im folgenden Beispiel für
create-performance-analysis-reportwird ein Leistungsanalysebericht mit der Startzeit1682969503und der Endzeit1682979503für diedb-abcdefg123456789-Datenbank erstellt.aws pi create-performance-analysis-report \ --service-typeRDS\ --identifierdb-abcdefg123456789\ --start-time1682969503\ --end-time1682979503Ausgabe:
{ "AnalysisReportId": "report-0234d3ed98e28fb17" }Weitere Informationen zum Erstellen von Leistungsanalyseberichten finden Sie unter Erstellen eines Leistungsanalyseberichts in Performance Insights im Benutzerhandbuch zu Amazon RDS und Erstellen eines Leistungsanalyseberichts in Performance Insights im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter CreatePerformanceAnalysisReport
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-performance-analysis-report verwendet wird.
- AWS CLI
-
So löschen Sie einen Leistungsanalysebericht
Im folgenden Beispiel für
delete-performance-analysis-reportwird der Leistungsanalysebericht mit der Berichts-IDreport-0d99cc91c4422ee61gelöscht.aws pi delete-performance-analysis-report \ --service-typeRDS\ --identifierdb-abcdefg123456789\ --analysis-report-idreport-0d99cc91c4422ee61Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zum Löschen von Leistungsanalyseberichten finden Sie unter Löschen eines Leistungsanalyseberichts in Performance Insights im Benutzerhandbuch zu Amazon RDS und Löschen eines Leistungsanalyseberichts in Performance Insights im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter DeletePerformanceAnalysisReport
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-dimension-keys verwendet wird.
- AWS CLI
-
Beispiel 1: So beschreiben Sie Dimensionsschlüssel
In diesem Beispiel werden die Namen aller Warteereignisse abgefragt. Die Daten werden nach Ereignisnamen und den Aggregatwerten dieser Ereignisse über den angegebenen Zeitraum zusammengefasst.
Befehl:
aws pi describe-dimension-keys --service-typeRDS--identifierdb-LKCGOBK26374TPTDFXOIWVCPPM--start-time1527026400--end-time1527080400--metricdb.load.avg--group-by '{"Group":"db.wait_event"}'Ausgabe:
{ "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 } ] }Beispiel 2: So finden Sie die SQL-ID für Anweisungen, die am meisten zur Datenbanklast beitragen
Im folgenden Beispiel für
describe-dimension-keyswerden die SQL-Anweisungen und die SQL-ID für die 10 Anweisungen abgefragt, die am meisten zur Datenbanklast beigetragen haben.aws pi describe-dimension-keys \ --service-typeRDS\ --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}'Ausgabe:
{ "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] } ] } ] }Weitere Informationen zu Dimensionen in Performance Insights finden Sie unter Datenbanklast im Benutzerhandbuch zu Amazon RDS und Datenbanklast im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter DescribeDimensionKeys
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-dimension-key-details verwendet wird.
- AWS CLI
-
So rufen Sie Details für eine bestimmte Dimensionsgruppe einer DB-Instance ab
Im folgenden Beispiel für
get-dimension-key-detailswird der Volltext einer SQL-Anweisung für die DB-Instancedb-10BCD2EFGHIJ3KL4M5NO6PQRS5abgerufen.--groupistdb.sqlund--group-identifieristdb.sql.id. In diesem Beispiel istexample-sql-ideine SQL-ID, die mithilfe der Operationenget-resource-metricsoderdescribe-dimension-keysabgerufen wurde. In diesem Beispiel sind die Dimensionsdetails verfügbar. Performance Insights ruft also den vollständigen Text der SQL-Anweisung ab, ohne ihn abzuschneiden.aws pi get-dimension-key-details \ --service-typeRDS\ --identifierdb-10BCD2EFGHIJ3KL4M5NO6PQRS5\ --groupdb.sql\ --group-identifierexample-sql-id\ --requested-dimensionsstatementAusgabe:
{ "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" }, ... ] }Weitere Informationen zu Dimensionen in Performance Insights finden Sie unter Datenbanklast im Benutzerhandbuch zu Amazon RDS und Datenbanklast im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter GetDimensionKeyDetails
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-performance-analysis-report verwendet wird.
- AWS CLI
-
So rufen Sie einen Leistungsanalysebericht ab
Im folgenden Beispiel für
get-performance-analysis-reportwird der Leistungsanalysebericht für die Datenbankdb-abcdefg123456789mit der Berichts-IDreport-0d99cc91c4422ee61abgerufen. Die Antwort enthält den Berichtsstatus, die ID, Zeitdetails und Einblicke.aws pi get-performance-analysis-report \ --service-typeRDS\ --identifierdb-abcdefg123456789\ --analysis-report-idreport-0d99cc91c4422ee61Ausgabe:
{ "AnalysisReport": { "Status": "Succeeded", "ServiceType": "RDS", "Identifier": "db-abcdefg123456789", "StartTime": 1680583486.584, "AnalysisReportId": "report-0d99cc91c4422ee61", "EndTime": 1680587086.584, "CreateTime": 1680587087.139, "Insights": [ ... (Condensed for space) ] } }Weitere Informationen zu Leistungsanalyseberichten finden Sie unter Analysieren der Datenbankleistung für einen bestimmten Zeitraum im Benutzerhandbuch zu Amazon RDS und Analysieren der Datenbankleistung für einen bestimmten Zeitraum im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter GetPerformanceAnalysisReport
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-resource-metadata verwendet wird.
- AWS CLI
-
So rufen Sie Ressourcenmetadaten für eine Datenbank ab
Im folgenden Beispiel für
get-resource-metadatawerden die Ressourcenmetadaten für die Datenbankdb-abcdefg123456789abgerufen. Die Antwort zeigt, dass SQL-Digest-Statistiken aktiviert ist.aws pi get-resource-metadata \ --service-typeRDS\ --identifierdb-abcdefg123456789Ausgabe:
{ "Identifier": "db-abcdefg123456789", "Features":{ "SQL_DIGEST_STATISTICS":{ "Status": "ENABLED" } } }Weitere Informationen zu SQL-Statistiken für Performance Insights finden Sie unter SQL-Statistiken für Performance Insights im Benutzerhandbuch zu Amazon RDS und SQL-Statistiken für Performance Insights im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter GetResourceMetadata
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-resource-metrics verwendet wird.
- AWS CLI
-
So rufen Sie Ressourcenmetriken ab
In diesem Beispiel werden Datenpunkte für die Dimensionsgruppe db.wait_event und für die Dimension db.wait_event.name in dieser Gruppe angefordert. In der Antwort werden die relevanten Datenpunkte nach der angeforderten Dimension (db.wait_event.name) gruppiert.
Befehl:
aws pi get-resource-metrics --service-typeRDS--identifierdb-LKCGOBK26374TPTDFXOIWVCPPM--start-time1527026400--end-time1527080400--period-in-seconds300--metricdb.load.avg--metric-queriesfile://metric-queries.jsonDie Argumente für
--metric-querieswerden in der JSON-Dateimetric-queries.jsongespeichert. Hier ist der Inhalt dieser Datei:[ { "Metric": "db.load.avg", "GroupBy": { "Group":"db.wait_event" } } ]Ausgabe:
{ "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...> ] }-
API-Details finden Sie unter GetResourceMetrics
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-available-resource-dimensions verwendet wird.
- AWS CLI
-
So listen Sie die Dimensionen auf, die für einen Metriktyp von einer DB-Instance abgefragt werden können
Im folgenden Beispiel für
list-available-resource-dimensionswerden diedb.load-Metriken aufgelistet, die Sie von der Datenbankdb-abcdefg123456789abfragen können.aws pi list-available-resource-dimensions \ --service-typeRDS\ --identifierdb-abcdefg123456789\ --metricsdb.loadAusgabe:
{ "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" } ] }, ... ] } ] }Weitere Informationen zu Dimensionen in Performance Insights finden Sie unter Datenbanklast im Benutzerhandbuch zu Amazon RDS und Datenbanklast im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter ListAvailableResourceDimensions
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-available-resource-metrics verwendet wird.
- AWS CLI
-
So listen Sie die Metriken auf, die für einen Metriktyp von einer DB-Instance abgefragt werden können
Im folgenden Beispiel für
list-available-resource-metricswerden diedb.load-Metriken aufgelistet, die Sie von der Datenbankdb-abcdefg123456789abfragen können.aws pi list-available-resource-metrics \ --service-typeRDS\ --identifierdb-abcdefg123456789\ --metric-types"os""db"Ausgabe:
{ "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" }, ...... ] }Weitere Informationen zu Metriken in Performance Insights finden Sie unter Datenbanklast im Benutzerhandbuch zu Amazon RDS und Datenbanklast im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter ListAvailableResourceMetrics
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-performance-analysis-reports verwendet wird.
- AWS CLI
-
So listen Sie Leistungsanalyseberichte für eine Datenbank auf
Im folgenden Beispiel für
list-performance-analysis-reportswerden alle Leistungsanalyseberichte für diedb-abcdefg123456789-Datenbank aufgelistet. In der Antwort werden alle Berichte mit der Berichts-ID, dem Status und den Details zum Zeitraum aufgeführt.aws pi list-performance-analysis-reports \ --service-typeRDS\ --identifierdb-abcdefg123456789Ausgabe:
{ "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" } ] }Weitere Informationen zu Leistungsanalyseberichten finden Sie unter Analysieren der Datenbankleistung für einen bestimmten Zeitraum im Benutzerhandbuch zu Amazon RDS und Analysieren der Datenbankleistung für einen bestimmten Zeitraum im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter ListPerformanceAnalysisReports
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-tags-for-resource verwendet wird.
- AWS CLI
-
So listen Sie alle Tags für einen Leistungsanalysebericht auf
Im folgenden Beispiel für
list-tags-for-resourcewerden die Tags für einen Leistungsanalysebericht mit der Berichts-IDreport-0d99cc91c4422ee61aufgelistet.aws pi list-tags-for-resource \ --service-typeRDS\ --resource-arnarn:aws:pi:us-west-2:123456789012:perf-reports/RDS/db-abcdefg123456789/report-0d99cc91c4422ee61Ausgabe:
{ "Tags": [ { "Value": "test-tag", "Key": "name" } ] }Weitere Informationen zum Markieren von Leistungsanalyseberichten finden Sie unter Hinzufügen von Tags zu einem Leistungsanalysebericht in Performance Insights im Benutzerhandbuch zu Amazon RDS und Hinzufügen von Tags zu einem Leistungsanalysebericht in Performance Insights im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter ListTagsForResource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie tag-resource verwendet wird.
- AWS CLI
-
So fügen Sie einen Tag zu einem Leistungsanalysebericht hinzu
Im folgenden Beispiel für
tag-resourcewird der Tag-Schlüsselnamemit dem Tag-Werttest-tagzu einem Leistungsanalysebericht mit der Berichts-IDreport-0d99cc91c4422ee61hinzugefügt.aws pi tag-resource \ --service-typeRDS\ --resource-arnarn:aws:pi:us-west-2:123456789012:perf-reports/RDS/db-abcdefg123456789/report-0d99cc91c4422ee61\ --tagsKey=name,Value=test-tagMit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zum Markieren von Leistungsanalyseberichten finden Sie unter Hinzufügen von Tags zu einem Leistungsanalysebericht in Performance Insights im Benutzerhandbuch zu Amazon RDS und Hinzufügen von Tags zu einem Leistungsanalysebericht in Performance Insights im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter TagResource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie untag-resource verwendet wird.
- AWS CLI
-
So löschen Sie einen Tag aus einem Leistungsanalysebericht
Im folgenden Beispiel für
untag-resourcewird das Tagnameaus einem Leistungsanalysebericht mit der Berichts-IDreport-0d99cc91c4422ee61gelöscht.aws pi untag-resource \ --service-typeRDS\ --resource-arnarn:aws:pi:us-west-2:123456789012:perf-reports/RDS/db-abcdefg123456789/report-0d99cc91c4422ee61\ --tag-keysnameMit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zum Markieren von Leistungsanalyseberichten finden Sie unter Hinzufügen von Tags zu einem Leistungsanalysebericht in Performance Insights im Benutzerhandbuch zu Amazon RDS und Hinzufügen von Tags zu einem Leistungsanalysebericht in Performance Insights im Benutzerhandbuch zu Amazon Aurora.
-
API-Details finden Sie unter UntagResource
in der AWS CLI-Befehlsreferenz.
-