本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 檢視追蹤的 Insights 事件 AWS CLI
本節說明如何使用 AWS CLI lookup-events
命令,在啟用 Insights 事件的情況下,查詢過去 90 天的 Insights 事件。如需如何在線索上啟用 CloudTrail Insights 的詳細資訊,請參閱 使用 記錄線索的 Insights 事件 AWS CLI。
注意
您無法使用 lookup-events
命令來查詢事件資料存放區的 Insights 事件,不過, CloudTrail Lake 為 Insights 事件資料存放區提供許多範例查詢。如需詳細資訊,請參閱檢視 Insights 事件的範例查詢。
此 lookup-events
命令提供以下選項:
-
--end-time
-
--event-category
-
--max-results
-
--start-time
-
--lookup-attributes
-
--next-token
-
--generate-cli-skeleton
-
--cli-input-json
如需使用 的一般資訊 AWS Command Line Interface,請參閱 AWS Command Line Interface 使用者指南。
內容
必要條件
-
若要執行 AWS CLI 命令,您必須安裝 AWS CLI。如需詳細資訊,請參閱 入門 AWS CLI。
-
請確定您的 AWS CLI 版本大於 1.6.6。若要驗證CLI版本,請在命令列aws --version上執行 。
-
若要設定 AWS CLI 工作階段的帳戶、區域和預設輸出格式,請使用 aws configure命令。如需詳細資訊,請參閱設定 AWS 命令列界面。
-
若要以API呼叫率記錄 Insights 事件,追蹤必須記錄
write
管理事件。若要以API錯誤率記錄 Insights 事件,追蹤必須記錄read
或write
管理事件。
注意
CloudTrail AWS CLI 命令區分大小寫。
取得命令列說明
若要查看 lookup-events
的命令列說明,請輸入下列命令:
aws cloudtrail lookup-events help
搜尋 Insights 事件
若要查看十個最新的 Insights 事件,請輸入下列命令:
aws cloudtrail lookup-events --event-category insight
傳回的事件看起來類似下列範例:
{ "NextToken": "kbOt5LlZe++mErCebpy2TgaMgmDvF1kYGFcH64JSjIbZFjsuvrSqg66b5YGssKutDYIyII4lrP4IDbeQdiObkp9YAlju3oXd12juEXAMPLE=", "Events": [ { "eventVersion": "1.09", "eventTime": "2024-12-11T16:52:00Z", "awsRegion": "us-east-1", "eventID": "18378b1e-3653-433d-ba1e-aa11a5958f0c", "eventType": "AwsCloudTrailInsight", "recipientAccountId": "888888888888", "sharedEventID": "fccb064f-dd07-4822-97c0-11115d8b91d4", "insightDetails": { "state": "Start", "eventSource": "cloudtrail.amazonaws.com", "eventName": "DescribeQuery", "insightType": "ApiErrorRateInsight", "errorCode": "QueryIdNotFoundException", "insightContext": { "statistics": { "baseline": { "average": 0 }, "insight": { "average": 1.2 }, "insightDuration": 5, "baselineDuration": 11092 }, "attributions": [ { "attribute": "userIdentityArn", "insight": [ { "value": "arn:aws:sts::888888888888:assumed-role/Admin", "average": 1.2 } ], "baseline": [] }, { "attribute": "userAgent", "insight": [ { "value": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "average": 1.2 } ], "baseline": [] } ] } }, "eventCategory": "Insight" }, { "eventVersion": "1.09", "eventTime": "2024-12-11T16:53:00Z", "awsRegion": "us-east-1", "eventID": "b32f10a0-f039-419a-bad7-e95468930a4f", "eventType": "AwsCloudTrailInsight", "recipientAccountId": "888888888888", "sharedEventID": "fccb064f-dd07-4822-97c0-11115d8b91d4", "insightDetails": { "state": "End", "eventSource": "cloudtrail.amazonaws.com", "eventName": "DescribeQuery", "insightType": "ApiErrorRateInsight", "errorCode": "QueryIdNotFoundException", "insightContext": { "statistics": { "baseline": { "average": 0 }, "insight": { "average": 6 }, "insightDuration": 1, "baselineDuration": 11092 }, "attributions": [ { "attribute": "userIdentityArn", "insight": [ { "value": "arn:aws:sts::888888888888:assumed-role/Admin", "average": 6 } ], "baseline": [] }, { "attribute": "userAgent", "insight": [ { "value": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", "average": 6 } ], "baseline": [] } ] } }, "eventCategory": "Insight" } ] }
如需輸出中查詢相關欄位的說明,請參閱本主題中的查詢輸出欄位。如需 Insights 事件中欄位的說明,請參閱 CloudTrail 記錄內容。
指定要傳回的 Insights 事件數目
若要指定要傳回的事件數目,請輸入下列命令。
aws cloudtrail lookup-events --event-category insight --max-results
<integer>
若未指定<integer>
,則 的預設值為 10。可能值為 1 到 50。下列範例會傳回一個結果。
aws cloudtrail lookup-events --event-category insight --max-results 1
依時間範圍查詢 Insights 事件
過去 90 天的 Insights 事件可用於查詢。若要指定時間範圍,請輸入下列命令。
aws cloudtrail lookup-events --event-category insight --start-time
<timestamp>
--end-time<timestamp>
--start-time
在 中UTC指定只會傳回在指定時間之後或時發生的 Insights 事件。如果指定的開始時間晚於指定的結束時間,則會傳回錯誤。<timestamp>
--end-time
在 中UTC指定只會傳回在指定時間之前或發生的 Insights 事件。如果指定的結束時間早於指定的開始時間,則會傳回錯誤。<timestamp>
預設的開始時間是過去 90 天內可使用資料的最早日期。預設的結束時間是在最接近目前時間所發生之事件的時間。
所有時間戳記都會顯示在 中UTC。
依屬性查詢 Insights 事件
若要依屬性進行篩選,請輸入下列命令。
aws cloudtrail lookup-events --event-category insight --lookup-attributes AttributeKey=
<attribute>
,AttributeValue=<string>
您只能為每個 lookup-events 命令指定一個屬性鍵/值對。以下是 AttributeKey
的有效 Insights 事件值。值名稱區分大小寫。
-
EventId
-
EventName
-
EventSource
的長度上限為 AttributeValue
2000 個字元。下列字元 ('_
'、'
'、',
'、'\\n
') 計算為 2000 個字元限制的兩個字元。
屬性查詢範例
下列範例命令會傳回 EventName
值為 PutRule
的 Insights 事件。
aws cloudtrail lookup-events --event-category insight --lookup-attributes AttributeKey=EventName, AttributeValue=PutRule
下列範例命令會傳回 EventId
值為 b5cc8c40-12ba-4d08-a8d9-2bceb9a3e002
的 Insights 事件。
aws cloudtrail lookup-events --event-category insight --lookup-attributes AttributeKey=EventId, AttributeValue=b5cc8c40-12ba-4d08-a8d9-2bceb9a3e002
下列範例命令會傳回 EventSource
值為 iam.amazonaws.com
的 Insights 事件。
aws cloudtrail lookup-events --event-category insight --lookup-attributes AttributeKey=EventSource, AttributeValue=iam.amazonaws.com
指定下一頁的結果
若要從 lookup-events
命令取得下一頁的結果,請輸入下列命令。
aws cloudtrail lookup-events --event-category insight
<same parameters as previous command>
--next-token=<token>
在此命令中, 的值<token>
取自上一個命令輸出的第一個欄位。
當您在命令中使用 --next-token
時,必須使用與先前命令相同的參數。例如,假設您執行下列命令。
aws cloudtrail lookup-events --event-category insight --lookup-attributes AttributeKey=EventName, AttributeValue=PutRule
若要取得下一頁的結果,您的下一個命令會如下所示。
aws cloudtrail lookup-events --event-category insight --lookup-attributes AttributeKey=EventName,AttributeValue=PutRule --next-token=EXAMPLEZe++mErCebpy2TgaMgmDvF1kYGFcH64JSjIbZFjsuvrSqg66b5YGssKutDYIyII4lrP4IDbeQdiObkp9YAlju3oXd12juEXAMPLE=
從檔案取得JSON輸入
AWS CLI 某些 AWS 服務的 有兩個參數,--generate-cli-skeleton
以及 --cli-input-json
,可用來產生JSON範本,您可以修改並用作 --cli-input-json
參數的輸入。本節說明如何搭配使用這些參數與 aws cloudtrail lookup-events
。如需詳細資訊,請參閱AWS CLI 骨架和輸入檔案。
從檔案取得JSON輸入來查詢 Insights 事件
-
將
lookup-events
輸出重新導向至檔案,以建立與--generate-cli-skeleton
搭配使用的輸入範本,如下列範例所示。aws cloudtrail lookup-events --event-category insight --generate-cli-skeleton > LookupEvents.txt
產生的範本檔案 (在此案例中為 LookupEvents.txt) 如下所示。
{ "LookupAttributes": [ { "AttributeKey": "", "AttributeValue": "" } ], "StartTime": null, "EndTime": null, "MaxResults": 0, "NextToken": "" }
-
使用文字編輯器視需要修改 JSON。JSON 輸入只能包含指定的值。
重要
必須先從範本移除所有空白值或 null 值,才能使用它。
下列範例指定時間範圍以及要傳回的結果數目上限。
{ "StartTime": "2023-11-01", "EndTime": "2023-12-12", "MaxResults": 10 }
-
若要使用編輯的檔案做為輸入,請使用語法
--cli-input-json file://
<filename>
,如下列範例所示。aws cloudtrail lookup-events --event-category insight --cli-input-json file://LookupEvents.txt
注意
您可以在與 --cli-input-json
相同的命令列上使用其他引數。
查詢輸出欄位
- 事件
-
根據所指定查詢屬性和時間範圍的查詢事件清單。事件清單是依時間排序,而且會先列出最新的事件。每個項目都包含查詢請求的相關資訊,並包含已擷取 CloudTrail 事件的字串表示。
下列項目說明每個查詢事件中的欄位。
- CloudTrailEvent
-
包含所傳回事件之物件表示的JSON字串。如需所有傳回之元素的資訊,請參閱記錄內文內容。
- EventId
-
包含傳回事件GUID之 的字串。
- EventName
-
字串,包含所傳回事件的名稱。
- EventSource
-
提出請求的 AWS 服務。
- EventTime
-
事件的日期和時間,以UNIX時間格式顯示。
- 資源
-
所傳回之事件所參考的資源清單。每個資源項目都會指定資源類型和資源名稱。
- ResourceName
-
字串,包含事件所參考資源的名稱。
- ResourceType
-
字串,包含事件所參考資源的類型。無法判定資源類型時,會傳回 null。
- 使用者名稱
-
字串,包含所傳回事件之帳戶的使用者名稱。
- NextToken
-
字串,可從先前的
lookup-events
命令取得下一頁的結果。若要使用字符,參數必須與原始命令中的參數相同。如果NextToken
項目未出現在輸出中,則沒有可傳回的其他結果。
如需 CloudTrail Insights 事件的詳細資訊,請參閱本指南使用 CloudTrail Insights中的 。