Röntgenbeispiele mit AWS CLI - AWS Command Line Interface

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Röntgenbeispiele mit AWS CLI

Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von AWS Command Line Interface mit X-Ray Aktionen ausführen und allgemeine Szenarien implementieren.

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 Siebatch-traces-get.

AWS CLI

So rufen Sie eine Liste mit Ablaufverfolgungen ab

Im folgenden Beispiel für batch-get-traces wird eine Liste mit Ablaufverfolgungen abgerufen, die anhand einer ID angegeben werden. Die vollständige Ablaufverfolgung umfasst ein Dokument für jedes Segment, das aus allen Segmentdokumenten kompiliert wurde, die mit der gleichen Ablaufverfolgungs-ID erhalten wurden.

aws xray batch-get-traces \ --trace-ids 1-5d82881a-0a9126e92a73e971eed891b9

Ausgabe:

{ "Traces": [ { "Id": "1-5d82881a-0a9126e92a73e971eed891b9", "Duration": 0.232, "Segments": [ { "Id": "54aff5735b12dd28", "Document": "{\"id\":\"54aff5735b12dd28\",\"name\":\"Scorekeep\",\"start_time\":1.568835610432E9,\"end_time\":1.568835610664E9,\"http\":{\"request\":{\"url\":\"http://scorekeep-env-1.m4fg2pfzpv.us-east-2.elasticbeanstalk.com/api/user\",\"method\":\"POST\",\"user_agent\":\"curl/7.59.0\",\"client_ip\":\"52.95.4.28\",\"x_forwarded_for\":true},\"response\":{\"status\":200}},\"aws\":{\"elastic_beanstalk\":{\"version_label\":\"Sample Application-1\",\"deployment_id\":3,\"environment_name\":\"Scorekeep-env-1\"},\"ec2\":{\"availability_zone\":\"us-east-2b\",\"instance_id\":\"i-0e3cf4d2de0f3f37a\"},\"xray\":{\"sdk_version\":\"1.1.0\",\"sdk\":\"X-Ray for Java\"}},\"service\":{\"runtime\":\"OpenJDK 64-Bit Server VM\",\"runtime_version\":\"1.8.0_222\"},\"trace_id\":\"1-5d82881a-0a9126e92a73e971eed891b9\",\"origin\":\"AWS::ElasticBeanstalk::Environment\",\"subsegments\":[{\"id\":\"2d6900034ccfe558\",\"name\":\"DynamoDB\",\"start_time\":1.568835610658E9,\"end_time\":1.568835610664E9,\"http\":{\"response\":{\"status\":200,\"content_length\":61}},\"aws\":{\"table_name\":\"scorekeep-user\",\"operation\":\"UpdateItem\",\"request_id\":\"TPEIDNDUROMLPOV17U4A79555NVV4KQNSO5AEMVJF66Q9ASUAAJG\",\"resource_names\":[\"scorekeep-user\"]},\"namespace\":\"aws\"}]}" }, { "Id": "0f278b6334c34e6b", "Document": "{\"id\":\"0f278b6334c34e6b\",\"name\":\"DynamoDB\",\"start_time\":1.568835610658E9,\"end_time\":1.568835610664E9,\"parent_id\":\"2d6900034ccfe558\",\"inferred\":true,\"http\":{\"response\":{\"status\":200,\"content_length\":61}},\"aws\":{\"table_name\":\"scorekeep-user\",\"operation\":\"UpdateItem\",\"request_id\":\"TPEIDNDUROMLPOV17U4A79555NVV4KQNSO5AEMVJF66Q9ASUAAJG\",\"resource_names\":[\"scorekeep-user\"]},\"trace_id\":\"1-5d82881a-0a9126e92a73e971eed891b9\",\"origin\":\"AWS::DynamoDB::Table\"}" } ] } ], "UnprocessedTraceIds": [] }

Weitere Informationen finden Sie unter Verwenden der AWS X-Ray-API mit der AWS CLI im AWS X-Ray-Entwicklerhandbuch.

  • Einzelheiten zur API finden Sie BatchTracesGetin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungcreate-group.

AWS CLI

So erstellen Sie eine Gruppe

Im folgenden Beispiel für create-group wird eine Gruppenressource namens AdminGroup erstellt. Die Gruppe erhält einen Filterausdruck, der die Kriterien der Gruppe als Segment definiert, das sich auf einen bestimmten Service bezieht, der eine Störung oder einen Fehler verursacht.

aws xray create-group \ --group-name "AdminGroup" \ --filter-expression "service(\"mydomain.com\") {fault OR error}"

Ausgabe:

{ "GroupName": "AdminGroup", "GroupARN": "arn:aws:xray:us-west-2:123456789012:group/AdminGroup/123456789", "FilterExpression": "service(\"mydomain.com\") {fault OR error}" }

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

  • Einzelheiten zur API finden Sie CreateGroupin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungcreate-sampling-rule.

AWS CLI

So erstellen Sie eine Sampling-Regel

Im folgenden Beispiel für create-sampling-rule wird eine Regel zur Steuerung des Sampling-Verhaltens für instrumentierte Anwendungen erstellt. Die Regeln werden in einer JSON-Datei bereitgestellt. Die meisten Felder für die Sampling-Regel sind erforderlich, um die Regel zu erstellen.

aws xray create-sampling-rule \ --cli-input-json file://9000-base-scorekeep.json

Inhalt von 9000-base-scorekeep.json:

{ "SamplingRule": { "RuleName": "base-scorekeep", "ResourceARN": "*", "Priority": 9000, "FixedRate": 0.1, "ReservoirSize": 5, "ServiceName": "Scorekeep", "ServiceType": "*", "Host": "*", "HTTPMethod": "*", "URLPath": "*", "Version": 1 } }

Ausgabe:

{ "SamplingRuleRecord": { "SamplingRule": { "RuleName": "base-scorekeep", "RuleARN": "arn:aws:xray:us-west-2:123456789012:sampling-rule/base-scorekeep", "ResourceARN": "*", "Priority": 9000, "FixedRate": 0.1, "ReservoirSize": 5, "ServiceName": "Scorekeep", "ServiceType": "*", "Host": "*", "HTTPMethod": "*", "URLPath": "*", "Version": 1, "Attributes": {} }, "CreatedAt": 1530574410.0, "ModifiedAt": 1530574410.0 } }

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdelete-group.

AWS CLI

Um eine Gruppe zu löschen

Im folgenden Beispiel für delete-group wird die angegebene Gruppenressourcen gelöscht.

aws xray delete-group \ --group-name "AdminGroup" \ --group-arn "arn:aws:xray:us-east-2:123456789012:group/AdminGroup/123456789"

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

  • Einzelheiten zur API finden Sie DeleteGroupin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungdelete-sampling-rule.

AWS CLI

So löschen Sie eine Sampling-Regel

Im folgenden Beispiel für delete-sampling-rule wird die angegebene Sampling-Regel gelöscht. Sie können die Gruppe angeben, indem Sie entweder den Gruppennamen oder den Gruppen-ARN verwenden.

aws xray delete-sampling-rule \ --rule-name polling-scorekeep

Ausgabe:

{ "SamplingRuleRecord": { "SamplingRule": { "RuleName": "polling-scorekeep", "RuleARN": "arn:aws:xray:us-west-2:123456789012:sampling-rule/polling-scorekeep", "ResourceARN": "*", "Priority": 5000, "FixedRate": 0.003, "ReservoirSize": 0, "ServiceName": "Scorekeep", "ServiceType": "*", "Host": "*", "HTTPMethod": "GET", "URLPath": "/api/state/*", "Version": 1, "Attributes": {} }, "CreatedAt": 1530574399.0, "ModifiedAt": 1530574399.0 } }

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-encryption-config.

AWS CLI

So rufen Sie die Verschlüsselungskonfiguration ab

Im folgenden get-encryption-config Beispiel wird die aktuelle Verschlüsselungskonfiguration für Ihre AWS X-Ray-Daten abgerufen.

aws xray get-encryption-config

Ausgabe:

{ "EncryptionConfig": { "KeyId": "ae4aa6d49-a4d8-9df9-a475-4ff6d7898456", "Status": "ACTIVE", "Type": "NONE" } }

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-group.

AWS CLI

So rufen Sie eine Gruppe ab

Im folgenden Beispiel für get-group werden Details zur angegebenen Gruppenressource angezeigt. Zu den Details gehören der Gruppenname, der Gruppen-ARN und der Filterausdruck, der die Kriterien für diese Gruppe definiert. Gruppen können auch per ARN abgerufen werden.

aws xray get-group \ --group-name "AdminGroup"

Ausgabe:

{ "Group": [ { "GroupName": "AdminGroup", "GroupARN": "arn:aws:xray:us-west-2:123456789012:group/AdminGroup/123456789", "FilterExpression": "service(\"mydomain.com\") {fault OR error}" } ] }

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

  • Einzelheiten zur API finden Sie GetGroupin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-groups.

AWS CLI

So rufen Sie alle Gruppen ab

Im folgenden Beispiel werden Details für alle aktiven Gruppen angezeigt.

aws xray get-groups

Ausgabe:

{ "Groups": [ { "GroupName": "AdminGroup", "GroupARN": "arn:aws:xray:us-west-2:123456789012:group/AdminGroup/123456789", "FilterExpression": "service(\"example.com\") {fault OR error}" }, { "GroupName": "SDETGroup", "GroupARN": "arn:aws:xray:us-west-2:123456789012:group/SDETGroup/987654321", "FilterExpression": "responsetime > 2" } ] }

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

  • Einzelheiten zur API finden Sie GetGroupsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-sampling-rules.

AWS CLI

So rufen Sie alle Sampling-Regeln ab

Im folgenden Beispiel für get-sampling-rules werden Details zu allen verfügbaren Sampling-Regeln angezeigt:

aws xray get-sampling-rules

Ausgabe:

{ "SamplingRuleRecords": [ { "SamplingRule": { "RuleName": "Default", "RuleARN": "arn:aws:xray:us-east-1::sampling-rule/Default", "ResourceARN": "*", "Priority": 10000, "FixedRate": 0.01, "ReservoirSize": 0, "ServiceName": "*", "ServiceType": "*", "Host": "*", "HTTPMethod": "*", "URLPath": "*", "Version": 1, "Attributes": {} }, "CreatedAt": 0.0, "ModifiedAt": 1530558121.0 }, { "SamplingRule": { "RuleName": "base-scorekeep", "RuleARN": "arn:aws:xray:us-east-1::sampling-rule/base-scorekeep", "ResourceARN": "*", "Priority": 9000, "FixedRate": 0.1, "ReservoirSize": 2, "ServiceName": "Scorekeep", "ServiceType": "*", "Host": "*", "HTTPMethod": "*", "URLPath": "*", "Version": 1, "Attributes": {} }, "CreatedAt": 1530573954.0, "ModifiedAt": 1530920505.0 }, { "SamplingRule": { "RuleName": "polling-scorekeep", "RuleARN": "arn:aws:xray:us-east-1::sampling-rule/polling-scorekeep", "ResourceARN": "*", "Priority": 5000, "FixedRate": 0.003, "ReservoirSize": 0, "ServiceName": "Scorekeep", "ServiceType": "*", "Host": "*", "HTTPMethod": "GET", "URLPath": "/api/state/*", "Version": 1, "Attributes": {} }, "CreatedAt": 1530918163.0, "ModifiedAt": 1530918163.0 } ] }

Weitere Informationen finden Sie unter Verwenden von Sampling-Regeln mit der X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

  • Einzelheiten zur API finden Sie GetSamplingRulesin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-sampling-targets.

AWS CLI

So fordern Sie ein Sampling-Kontingent an

Im folgenden Beispiel für get-sampling-targets wird ein Sampling-Kontingent für Regeln angefordert, die der Service für Sampling-Anforderungen verwendet. Die Antwort von AWS X-Ray beinhaltet ein Kontingent, das verwendet werden kann, anstatt Kredite aus dem Reservoir aufzunehmen.

aws xray get-sampling-targets \ --sampling-statistics-documents '[ { "RuleName": "base-scorekeep", "ClientID": "ABCDEF1234567890ABCDEF10", "Timestamp": "2018-07-07T00:20:06, "RequestCount": 110, "SampledCount": 20, "BorrowCount": 10 }, { "RuleName": "polling-scorekeep", 31, "BorrowCount": 0 } ]'

Ausgabe:

{ "SamplingTargetDocuments": [ { "RuleName": "base-scorekeep", "FixedRate": 0.1, "ReservoirQuota": 2, "ReservoirQuotaTTL": 1530923107.0, "Interval": 10 }, { "RuleName": "polling-scorekeep", "FixedRate": 0.003, "ReservoirQuota": 0, "ReservoirQuotaTTL": 1530923107.0, "Interval": 10 } ], "LastRuleModification": 1530920505.0, "UnprocessedStatistics": [] }

Weitere Informationen finden Sie unter Verwenden von Sampling-Regeln mit der X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-service-graph.

AWS CLI

So rufen Sie ein Service-Diagramm ab

Im folgenden Beispiel wird ein Dokument innerhalb eines bestimmten Zeitraums angezeigt, das Services zur Verarbeitung eingehender Anforderungen beschreibt sowie die Downstream-Services, die diese aufgrund dessen aufrufen:

aws xray get-service-graph \ --start-time 1568835392.0 --end-time 1568835446.0

Ausgabe:

{ "Services": [ { "ReferenceId": 0, "Name": "Scorekeep", "Names": [ "Scorekeep" ], "Root": true, "Type": "AWS::ElasticBeanstalk::Environment", "State": "active", "StartTime": 1568835392.0, "EndTime": 1568835446.0, "Edges": [ { "ReferenceId": 1, "StartTime": 1568835392.0, "EndTime": 1568835446.0, "SummaryStatistics": { "OkCount": 14, "ErrorStatistics": { "ThrottleCount": 0, "OtherCount": 0, "TotalCount": 0 }, "FaultStatistics": { "OtherCount": 0, "TotalCount": 0 }, "TotalCount": 14, "TotalResponseTime": 0.13 }, "ResponseTimeHistogram": [ { "Value": 0.008, "Count": 1 }, { "Value": 0.005, "Count": 7 }, { "Value": 0.009, "Count": 1 }, { "Value": 0.021, "Count": 1 }, { "Value": 0.038, "Count": 1 }, { "Value": 0.007, "Count": 1 }, { "Value": 0.006, "Count": 2 } ], "Aliases": [] }, ... TRUNCATED FOR BREVITY ... ] } ], "StartTime": 1568835392.0, "EndTime": 1568835446.0, "ContainsOldGroupVersions": false }

Weitere Informationen finden Sie unter Verwenden der AWS X-Ray-API mit der AWS CLI im AWS X-Ray-Entwicklerhandbuch.

  • Einzelheiten zur API finden Sie GetServiceGraphin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-trace-summaries.

AWS CLI

So rufen Sie eine Zusammenfassung der Ablaufverfolgung ab

Im folgenden get-trace-summaries Beispiel werden Metadaten für Traces abgerufen IDs , die innerhalb eines bestimmten Zeitraums verfügbar sind.

aws xray get-trace-summaries \ --start-time 1568835392.0 \ --end-time 1568835446.0

Ausgabe:

[ "http://scorekeep-env-1.123456789.us-east-2.elasticbeanstalk.com/api/move/VSAE93HF/GSSD2NTB/DP0PCC09", "http://scorekeep-env-1.123456789.us-east-2.elasticbeanstalk.com/api/move/GCQ2B35P/FREELDFT/4LRE643M", "http://scorekeep-env-1.123456789.us-east-2.elasticbeanstalk.com/api/game/VSAE93HF/GSSD2NTB/starttime/1568835513", "http://scorekeep-env-1.123456789.us-east-2.elasticbeanstalk.com/api/move/4MQNA5NN/L99KK2RF/null" ]

Weitere Informationen finden Sie unter Verwenden der AWS X-Ray-API mit der AWS CLI im AWS X-Ray-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungput-encryption-config.

AWS CLI

So aktualisieren Sie die Verschlüsselungskonfiguration

Das Folgendeput-encryption-config``example updates the encryption configuration for AWS X-Ray data to use the default AWS managed KMS key ``aws/xray.

aws xray put-encryption-config \ --type KMS \ --key-id alias/aws/xray

Ausgabe:

{ "EncryptionConfig": { "KeyId": "arn:aws:kms:us-west-2:123456789012:key/c234g4e8-39e9-4gb0-84e2-b0ea215cbba5", "Status": "UPDATING", "Type": "KMS" } }

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungput-trace-segments.

AWS CLI

So laden Sie ein Segment hoch

Im folgenden put-trace-segments Beispiel werden Segmentdokumente auf AWS X-Ray hochgeladen. Das Segmentdokument wird als Liste mit JSON-Segmentdokumenten verwendet.

aws xray put-trace-segments \ --trace-segment-documents "{\"id\":\"20312a0e2b8809f4\",\"name\":\"DynamoDB\",\"trace_id\":\"1-5832862d-a43aafded3334a971fe312db\",\"start_time\":1.479706157195E9,\"end_time\":1.479706157202E9,\"parent_id\":\"79736b962fe3239e\",\"http\":{\"response\":{\"content_length\":60,\"status\":200}},\"inferred\":true,\"aws\":{\"consistent_read\":false,\"table_name\":\"scorekeep-session-xray\",\"operation\":\"GetItem\",\"request_id\":\"SCAU23OM6M8FO38UASGC7785ARVV4KQNSO5AEMVJF66Q9ASUAAJG\",\"resource_names\":[\"scorekeep-session-xray\"]},\"origin\":\"AWS::DynamoDB::Table\"}"

Ausgabe:

{ "UnprocessedTraceSegments": [] }

Weitere Informationen finden Sie unter Senden von Trace-Daten an AWS X-Ray im AWS X-Ray-Entwicklerhandbuch.

  • Einzelheiten zur API finden Sie PutTraceSegmentsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungupdate-group.

AWS CLI

So aktualisieren Sie eine Gruppe

Im folgenden Beispiel für update-group werden die Kriterien aktualisiert, anhand derer Ablaufverfolgungen für die angegebene Gruppe AdminGroup akzeptiert werden. Sie können die gewünschte Gruppe angeben, indem Sie entweder den Gruppennamen oder den Gruppen-ARN verwenden.

aws xray update-group \ --group-name "AdminGroup" \ --group-arn "arn:aws:xray:us-west-2:123456789012:group/AdminGroup/123456789" \ --filter-expression "service(\"mydomain.com\") {fault}"

Ausgabe:

{ "GroupName": "AdminGroup", "GroupARN": "arn:aws:xray:us-east-2:123456789012:group/AdminGroup/123456789", "FilterExpression": "service(\"mydomain.com\") {fault}" }

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.

  • Einzelheiten zur API finden Sie UpdateGroupin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungupdate-sampling-rule.

AWS CLI

So aktualisieren Sie eine Sampling-Regel

Im folgenden Beispiel für update-sampling-rule wird die Konfiguration einer Sampling-Regel geändert. Die Regeln werden aus einer JSON-Datei übernommen. Nur die Felder, die aktualisiert werden, sind erforderlich.

aws xray update-sampling-rule \ --cli-input-json file://1000-default.json

Inhalt von 1000-default.json:

{ "SamplingRuleUpdate": { "RuleName": "Default", "FixedRate": 0.01, "ReservoirSize": 0 } }

Ausgabe:

{ "SamplingRuleRecords": [ { "SamplingRule": { "RuleName": "Default", "RuleARN": "arn:aws:xray:us-west-2:123456789012:sampling-rule/Default", "ResourceARN": "*", "Priority": 10000, "FixedRate": 0.01, "ReservoirSize": 0, "ServiceName": "*", "ServiceType": "*", "Host": "*", "HTTPMethod": "*", "URLPath": "*", "Version": 1, "Attributes": {} }, "CreatedAt": 0.0, "ModifiedAt": 1529959993.0 } ] }

Weitere Informationen finden Sie unter Konfiguration von Sampling-, Gruppen- und Verschlüsselungseinstellungen mit der AWS X-Ray-API im AWS X-Ray-Entwicklerhandbuch.