Beispiele für die Verwendung der AWS CLI mit Application Signals
Die folgenden Codebeispiele zeigen, wie Sie Aktionen durchführen und gängige Szenarien implementieren, indem Sie die AWS Command Line Interface mit Application Signals 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 batch-get-service-level-objective-budget-report verwendet wird.
- AWS CLI
-
So rufen Sie einen oder mehrere SLO-Budgetberichte (Service Level Objective) ab.
Im folgenden Beispiel für
batch-get-service-level-objective-budget-reportwerden einzelne oder mehrere SLO-Budgetberichte (Service Level Objective) abgerufen.aws application-signals batch-get-service-level-objective-budget-report \ --timestamp1735059869\ --slo-ids"arn:aws:application-signals:us-east-1:123456789101:slo/SLOName1""arn:aws:application-signals:us-east-1:123456789101:slo/SLOName2"Ausgabe:
{ "Timestamp": "2024-12-24T22:34:29+05:30", "Reports": [{ "Arn": "arn:aws:application-signals:us-east-1:123456789101:slo/SLOName1", "Name": "Your SLO Name", "EvaluationType": "PeriodBased", "BudgetStatus": "OK", "Attainment": 100.0, "TotalBudgetSeconds": 6048, "BudgetSecondsRemaining": 6048, "Sli": { "SliMetric": { "MetricDataQueries": [{ "Id": "m1", "MetricStat": { "Metric": { "Namespace": "AWS/EC2", "MetricName": "CPUUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-0e098765432522" }] }, "Period": 60, "Stat": "Average" }, "ReturnData": true }] }, "MetricThreshold": 200.0, "ComparisonOperator": "LessThanOrEqualTo" }, "Goal": { "Interval": { "RollingInterval": { "DurationUnit": "DAY", "Duration": 7 } }, "AttainmentGoal": 99.0, "WarningThreshold": 50.0 } }, { "Arn": "arn:aws:application-signals:us-east-1:123456789101:slo/SLOName2", "Name": "test", "EvaluationType": "PeriodBased", "BudgetStatus": "BREACHED", "Attainment": 97.39583275, "TotalBudgetSeconds": 86, "BudgetSecondsRemaining": -2154, "Sli": { "SliMetric": { "MetricDataQueries": [{ "Id": "cwMetric", "MetricStat": { "Metric": { "Namespace": "AWS/EC2", "MetricName": "CPUUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-0e12345678922" }] }, "Period": 300, "Stat": "Average" }, "ReturnData": true }] }, "MetricThreshold": 5.0, "ComparisonOperator": "GreaterThan" }, "Goal": { "Interval": { "RollingInterval": { "DurationUnit": "DAY", "Duration": 1 } }, "AttainmentGoal": 99.9, "WarningThreshold": 30.0 } } ], "Errors": [] }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter BatchGetServiceLevelObjectiveBudgetReport
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-service-level-objective verwendet wird.
- AWS CLI
-
So erstellen Sie ein Service Level Objective (SLO)
Im folgenden Beispiel für
create-service-level-objectivewird ein Service Level Objective (SLO) erstellt, mit dem Sie sicherstellen können, dass Ihre kritischen Geschäftsabläufe den Kundenerwartungen entsprechen.aws application-signals create-service-level-objective \ --name"SLOName"\ --description"Description of your SLO"\ --sli-configfile://sli-config.jsonInhalt von
sli-config.json:{ "SliMetricConfig": { "MetricDataQueries": [ { "Id": "m1", "MetricStat": { "Metric": { "Namespace": "AWS/EC2", "MetricName": "CPUUtilization", "Dimensions": [ { "Name": "InstanceId", "Value": "i-0e5a1234561522" } ] }, "Period": 60, "Stat": "Average" }, "ReturnData": true } ] }, "MetricThreshold": 200, "ComparisonOperator": "LessThanOrEqualTo" }Ausgabe:
{ "Slo": { "Arn": "arn:aws:application-signals:us-east-1:123456789101:slo/SLOName", "Name": "SLOName", "Description": "Description of your SLO", "CreatedTime": "2024-12-27T08:16:09.032000+05:30", "LastUpdatedTime": "2024-12-27T08:16:09.032000+05:30", "Sli": { "SliMetric": { "MetricDataQueries": [ { "Id": "m1", "MetricStat": { "Metric": { "Namespace": "AWS/EC2", "MetricName": "CPUUtilization", "Dimensions": [ { "Name": "InstanceId", "Value": "i-0e59876543234522" } ] }, "Period": 60, "Stat": "Average" }, "ReturnData": true } ] }, "MetricThreshold": 200.0, "ComparisonOperator": "LessThanOrEqualTo" }, "EvaluationType": "PeriodBased", "Goal": { "Interval": { "RollingInterval": { "DurationUnit": "DAY", "Duration": 7 } }, "AttainmentGoal": 99.0, "WarningThreshold": 50.0 } } }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter CreateServiceLevelObjective
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-service-level-objective verwendet wird.
- AWS CLI
-
So löschen Sie das angegebene Service Level Objective
Im folgenden Beispiel für
delete-service-level-objectivewird das angegebene Service Level Objective gelöscht.aws application-signals delete-service-level-objective \ --id"arn:aws:application-signals:us-east-1:123456789101:slo/SLOName"Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter DeleteServiceLevelObjective
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-service-level-objective verwendet wird.
- AWS CLI
-
So geben Sie Informationen über ein im Konto erstelltes SLO zurück
Im folgenden Beispiel für
get-service-level-objectivewerden Informationen über ein im Konto erstelltes SLO zurückgegeben.aws application-signals get-service-level-objective \ --id"arn:aws:application-signals:us-east-1:123456789101:slo/SLOName"Ausgabe:
{ "Slo": { "Arn": "arn:aws:application-signals:us-east-1:123456789101:slo/SLOName", "Name": "SLOName", "Description": "Description of your SLO", "CreatedTime": "2024-12-24T22:19:18.624000+05:30", "LastUpdatedTime": "2024-12-24T22:19:55.280000+05:30", "Sli": { "SliMetric": { "MetricDataQueries": [{ "Id": "m1", "MetricStat": { "Metric": { "Namespace": "AWS/EC2", "MetricName": "CPUUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-0e0987654321522" }] }, "Period": 60, "Stat": "Average" }, "ReturnData": true }] }, "MetricThreshold": 200.0, "ComparisonOperator": "LessThanOrEqualTo" }, "EvaluationType": "PeriodBased", "Goal": { "Interval": { "RollingInterval": { "DurationUnit": "DAY", "Duration": 7 } }, "AttainmentGoal": 99.0, "WarningThreshold": 50.0 } } }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter GetServiceLevelObjective
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-service verwendet wird.
- AWS CLI
-
So geben Sie Informationen über einen von Application Signals erkannten Service zurück
Im folgenden Beispiel für
get-servicewerden Informationen über einen von Application Signals erkannten Service zurückgegeben.aws application-signals get-service \ --start-time1732704000\ --end-time1732714500\ --key-attributesEnvironment=lambda:default,Name=hello-world-python,Type=ServiceAusgabe:
{ "Service": { "KeyAttributes": { "Environment": "lambda:default", "Name": "hello-world-python", "Type": "Service" }, "AttributeMaps": [{ "Lambda.Function.Name": "hello-world-python", "PlatformType": "AWS::Lambda" }], "MetricReferences": [{ "Namespace": "ApplicationSignals", "MetricType": "LATENCY", "Dimensions": [{ "Name": "Environment", "Value": "lambda:default" }, { "Name": "Service", "Value": "hello-world-python" }], "MetricName": "Latency" }, { "Namespace": "ApplicationSignals", "MetricType": "FAULT", "Dimensions": [{ "Name": "Environment", "Value": "lambda:default" }, { "Name": "Service", "Value": "hello-world-python" }], "MetricName": "Fault" }, { "Namespace": "ApplicationSignals", "MetricType": "ERROR", "Dimensions": [{ "Name": "Environment", "Value": "lambda:default" }, { "Name": "Service", "Value": "hello-world-python" }], "MetricName": "Error" }], "LogGroupReferences": [{ "Identifier": "/aws/lambda/hello-world-python", "ResourceType": "AWS::Logs::LogGroup", "Type": "AWS::Resource" }] }, "StartTime": "2024-11-27T10:00:00+00:00", "EndTime": "2024-11-27T14:00:01+00:00", "LogGroupReferences": [{ "Identifier": "/aws/lambda/hello-world-python", "ResourceType": "AWS::Logs::LogGroup", "Type": "AWS::Resource" }] }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter GetService
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-service-dependencies verwendet wird.
- AWS CLI
-
So geben Sie eine Liste der Serviceabhängigkeiten des von Ihnen angegebenen Service zurück
Im folgenden Beispiel für
list-service-dependencieswird eine Liste der Serviceabhängigkeiten des von Ihnen angegebenen Service zurückgegeben.aws application-signals list-service-dependencies \ --start-time1732021200\ --end-time1732107600\ --key-attributesEnvironment=api-gateway:prod,Name=PetAdoptionStatusUpdater,Type=ServiceAusgabe:
{ "ServiceDependencies": [{ "OperationName": "PUT /prod", "DependencyKeyAttributes": { "Environment": "lambda:default", "Name": "Services-name", "Type": "Service" }, "DependencyOperationName": "Invoke", "MetricReferences": [{ "Namespace": "ApplicationSignals", "MetricType": "LATENCY", "Dimensions": [{ "Name": "Environment", "Value": "api-gateway:prod" }, { "Name": "Operation", "Value": "PUT /prod" }, { "Name": "RemoteEnvironment", "Value": "lambda:default" }, { "Name": "RemoteOperation", "Value": "Invoke" }, { "Name": "RemoteService", "Value": "Services-name" }, { "Name": "Service", "Value": "PetAdoptionStatusUpdater" }], "MetricName": "Latency" }, { "Namespace": "ApplicationSignals", "MetricType": "FAULT", "Dimensions": [{ "Name": "Environment", "Value": "api-gateway:prod" }, { "Name": "Operation", "Value": "PUT /prod" }, { "Name": "RemoteEnvironment", "Value": "lambda:default" }, { "Name": "RemoteOperation", "Value": "Invoke" }, { "Name": "RemoteService", "Value": "Services-name" }, { "Name": "Service", "Value": "PetAdoptionStatusUpdater" }], "MetricName": "Fault" }, { "Namespace": "ApplicationSignals", "MetricType": "ERROR", "Dimensions": [{ "Name": "Environment", "Value": "api-gateway:prod" }, { "Name": "Operation", "Value": "PUT /prod" }, { "Name": "RemoteEnvironment", "Value": "lambda:default" }, { "Name": "RemoteOperation", "Value": "Invoke" }, { "Name": "RemoteService", "Value": "Services-name" }, { "Name": "Service", "Value": "PetAdoptionStatusUpdater" }], "MetricName": "Error" }] }], "StartTime": "2024-11-19T13:00:00+00:00", "EndTime": "2024-11-20T13:00:01+00:00" }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter ListServiceDependencies
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-service-dependents verwendet wird.
- AWS CLI
-
So geben Sie die Liste der abhängigen Objekte zurück, die den angegebenen Service während des angegebenen Zeitraums aufgerufen haben
Im folgenden Beispiel für
list-service-dependentswird die Liste der abhängigen Objekte zurückgegeben, die den angegebenen Service während des angegebenen Zeitraums aufgerufen haben.aws application-signals list-service-dependents \ --start-time1732021200\ --end-time1732107600\ --key-attributesEnvironment=generic:default,Name=PetSite,Type=ServiceAusgabe:
{ "ServiceDependents": [{ "OperationName": "", "DependentKeyAttributes": { "Identifier": "pet-api-canary-hao", "ResourceType": "AWS::Synthetics::Canary", "Type": "AWS::Resource" }, "DependentOperationName": "", "MetricReferences": [] }, { "OperationName": "", "DependentKeyAttributes": { "Identifier": "PetSite", "ResourceType": "AWS::Synthetics::Canary", "Type": "AWS::Resource" }, "DependentOperationName": "", "MetricReferences": [] }], "StartTime": "2024-12-24T05:00:00+00:00", "EndTime": "2024-12-25T06:00:01+00:00" }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter ListServiceDependents
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-service-level-objectives verwendet wird.
- AWS CLI
-
So geben Sie eine Liste der in diesem Konto erstellten SLOs zurück
Im folgenden Beispiel für
list-service-level-objectiveswird eine Liste von SLOs zurückgegeben, die in diesem Konto erstellt wurden.aws application-signals list-service-level-objectivesAusgabe:
{ "SloSummaries": [{ "Arn": "arn:aws:application-signals:us-east-1:123456789101:slo/test", "Name": "test", "CreatedTime": "2024-12-24T22:01:21.116000+05:30" }] }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter ListServiceLevelObjectives
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-service-operations verwendet wird.
- AWS CLI
-
So geben Sie eine Liste der Operationen dieses Service zurück, die von Application Signals erkannt wurden
Im folgenden Beispiel für
list-service-operationswird eine Liste der Operationen dieses Service zurückgegeben, die von Application Signals erkannt wurden.aws application-signals list-service-operations \ --start-time1735017423\ --end-time1735103823\ --key-attributesEnvironment=generic:default,Name=payforadoption,Type=ServiceAusgabe:
{ "ServiceOperations": [{ "Name": "POST /api", "MetricReferences": [{ "Namespace": "ApplicationSignals", "MetricType": "LATENCY", "Dimensions": [{ "Name": "Environment", "Value": "generic:default" }, { "Name": "Operation", "Value": "POST /api" }, { "Name": "Service", "Value": "payforadoption" }], "MetricName": "Latency" }, { "Namespace": "ApplicationSignals", "MetricType": "FAULT", "Dimensions": [{ "Name": "Environment", "Value": "generic:default" }, { "Name": "Operation", "Value": "POST /api" }, { "Name": "Service", "Value": "payforadoption" }], "MetricName": "Fault" }, { "Namespace": "ApplicationSignals", "MetricType": "ERROR", "Dimensions": [{ "Name": "Environment", "Value": "generic:default" }, { "Name": "Operation", "Value": "POST /api" }, { "Name": "Service", "Value": "payforadoption" }], "MetricName": "Error" }] }], "StartTime": "2024-12-24T05:00:00+00:00", "EndTime": "2024-12-25T06:00:01+00:00" }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter ListServiceOperations
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-services verwendet wird.
- AWS CLI
-
So geben Sie eine Liste der Services zurück, die von Application Signals erkannt wurden
Im folgenden Beispiel für
list-serviceswird eine Liste der Services zurückgegeben, die von Application Signals erkannt wurden.aws application-signals list-services \ --start-time1734918791\ --end-time1734965591Ausgabe:
{ "ServiceSummaries": [{ "KeyAttributes": { "Environment": "lambda:default", "Name": "hello-world-python", "Type": "Service" }, "AttributeMaps": [{ "Lambda.Function.Name": "hello-world-python", "PlatformType": "AWS::Lambda" }], "MetricReferences": [{ "Namespace": "ApplicationSignals", "MetricType": "LATENCY", "Dimensions": [{ "Name": "Environment", "Value": "lambda:default" }, { "Name": "Service", "Value": "hello-world-python" }], "MetricName": "Latency" }, { "Namespace": "ApplicationSignals", "MetricType": "FAULT", "Dimensions": [{ "Name": "Environment", "Value": "lambda:default" }, { "Name": "Service", "Value": "hello-world-python" }], "MetricName": "Fault" }, { "Namespace": "ApplicationSignals", "MetricType": "ERROR", "Dimensions": [{ "Name": "Environment", "Value": "lambda:default" }, { "Name": "Service", "Value": "hello-world-python" }], "MetricName": "Error" }] }], "StartTime": "2024-11-27T10:00:00+00:00", "EndTime": "2024-11-27T14:00:01+00:00" }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter ListServices
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-tags-for-resource verwendet wird.
- AWS CLI
-
So zeigen Sie die Tags an, die einer CloudWatch-Ressource zugeordnet sind
Im folgenden Beispiel für
list-tags-for-resourcewerden die Tags angezeigt, die einer CloudWatch-Ressource zugeordnet sind.aws application-signals list-tags-for-resource \ --resource-arn"arn:aws:application-signals:us-east-1:123456789101:slo/SLOName"Ausgabe:
{ "Tags": [{ "Key": "test", "Value": "value" }] }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter ListTagsForResource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie start-discovery verwendet wird.
- AWS CLI
-
So aktivieren Sie dieses Konto in Amazon Web Services für die Nutzung von CloudWatch Application Signals
Im folgenden Beispiel für
start-discoverywird dieses Konto in Amazon Web Services für die Nutzung von CloudWatch Application Signals aktiviert, indem die serviceverknüpfte Rolle AWSServiceRoleForCloudWatchApplicationSignals erstellt wird.aws application-signals start-discoveryMit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter StartDiscovery
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie tag-resource verwendet wird.
- AWS CLI
-
So weisen Sie der angegebenen CloudWatch-Ressource wie einem Service Level Objective einzelne oder mehrere Tags (Schlüssel-Wert-Paare) zu
Im folgenden Beispiel für
tag-resourcewerden der angegebenen CloudWatch-Ressource wie einem Service Level Objective einzelne oder mehrere Tags (Schlüssel-Wert-Paare) zugewiesen.aws application-signals tag-resource \ --resource-arn"arn:aws:application-signals:us-east-1:123456789101:slo/SLOName"\ --tags '{"Key":"test","Value":"value"}'Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter TagResource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie untag-resource verwendet wird.
- AWS CLI
-
So entfernen Sie einzelne oder mehrere Tags aus der angegebenen Ressource
Im folgenden Beispiel für
untag-resourcewerden einzelne oder mehrere Tags von der angegebenen Ressource entfernt.aws application-signals untag-resource \ --resource-arn"arn:aws:application-signals:us-east-1:123456789101:slo/SLOName"\ --tag-keys"test"Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter UntagResource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-service-level-objective verwendet wird.
- AWS CLI
-
So aktualisieren Sie ein vorhandenes Service Level Objective (SLO)
Im folgenden Beispiel für
update-service-level-objectivewird ein vorhandenes Service Level Objective (SLO) aktualisiert.aws application-signals update-service-level-objective \ --cli-input-jsonfile://update-slo.jsonInhalt von
update-slo.json:{ "id": "arn:aws:application-signals:us-east-1:123456789101:slo/SLOName", "goal": { "Interval": { "RollingInterval": { "DurationUnit": "DAY", "Duration": 7 } }, "AttainmentGoal": 90.0, "WarningThreshold": 50.0 } }Ausgabe:
{ "Slo": { "Arn": "arn:aws:application-signals:us-east-1:123456789101:slo/SLOName", "Name": "SLOName", "Description": "Description of your SLO", "CreatedTime": "2024-12-24T22:19:18.624000+05:30", "LastUpdatedTime": "2024-12-27T08:51:38.278000+05:30", "Sli": { "SliMetric": { "MetricDataQueries": [{ "Id": "m1", "MetricStat": { "Metric": { "Namespace": "AWS/EC2", "MetricName": "CPUUtilization", "Dimensions": [{ "Name": "InstanceId", "Value": "i-00987654345222" }] }, "Period": 60, "Stat": "Average" }, "ReturnData": true }] }, "MetricThreshold": 200.0, "ComparisonOperator": "LessThanOrEqualTo" }, "EvaluationType": "PeriodBased", "Goal": { "Interval": { "RollingInterval": { "DurationUnit": "DAY", "Duration": 7 } }, "AttainmentGoal": 90.0, "WarningThreshold": 50.0 } } }Weitere Informationen finden Sie unter Application Signals im Benutzerhandbuch zu Amazon CloudWatch.
-
API-Details finden Sie unter UpdateServiceLevelObjective
in der AWS CLI-Befehlsreferenz.
-