使用 AWS CLI 的 CloudWatch Logs 範例
下列程式碼範例示範如何使用 AWS Command Line Interface 搭配 CloudWatch Logs 來執行動作,並實作常見案例。
Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數,但您可以在其相關情境中查看內容中的動作。
每個範例均包含完整原始程式碼的連結,您可在連結中找到如何在內容中設定和執行程式碼的相關指示。
主題
動作
以下程式碼範例顯示如何使用 create-log-group。
- AWS CLI
-
下列命令會建立名為
my-logs的日誌群組:aws logs create-log-group --log-group-namemy-logs-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 CreateLogGroup
。
-
以下程式碼範例顯示如何使用 create-log-stream。
- AWS CLI
-
下列範例會在日誌群組
my-logs中建立名為20150601的日誌串流:aws logs create-log-stream --log-group-namemy-logs--log-stream-name20150601-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 CreateLogStream
。
-
以下程式碼範例顯示如何使用 delete-log-group。
- AWS CLI
-
下列命令會刪除名為
my-logs的日誌群組:aws logs delete-log-group --log-group-namemy-logs-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DeleteLogGroup
。
-
以下程式碼範例顯示如何使用 delete-log-stream。
- AWS CLI
-
下列命令從名為
my-logs的日誌群組中刪除名為20150531的日誌串流:aws logs delete-log-stream --log-group-namemy-logs--log-stream-name20150531-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DeleteLogStream
。
-
以下程式碼範例顯示如何使用 delete-retention-policy。
- AWS CLI
-
下列命令會移除先前曾套用至日誌群組
my-logs的保留政策:aws logs delete-retention-policy --log-group-namemy-logs-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DeleteRetentionPolicy
。
-
以下程式碼範例顯示如何使用 describe-log-groups。
- AWS CLI
-
下列命令會描述名為
my-logs的日誌群組:aws logs describe-log-groups --log-group-name-prefixmy-logs輸出:
{ "logGroups": [ { "storedBytes": 0, "metricFilterCount": 0, "creationTime": 1433189500783, "logGroupName": "my-logs", "retentionInDays": 5, "arn": "arn:aws:logs:us-west-2:0123456789012:log-group:my-logs:*" } ] }-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DescribeLogGroups
。
-
以下程式碼範例顯示如何使用 describe-log-streams。
- AWS CLI
-
下列命令顯示日誌群組
my-logs中所有以字首2015開頭的日誌串流:aws logs describe-log-streams --log-group-namemy-logs--log-stream-name-prefix2015輸出:
{ "logStreams": [ { "creationTime": 1433189871774, "arn": "arn:aws:logs:us-west-2:0123456789012:log-group:my-logs:log-stream:20150531", "logStreamName": "20150531", "storedBytes": 0 }, { "creationTime": 1433189873898, "arn": "arn:aws:logs:us-west-2:0123456789012:log-group:my-logs:log-stream:20150601", "logStreamName": "20150601", "storedBytes": 0 } ] }-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 DescribeLogStreams
。
-
以下程式碼範例顯示如何使用 get-log-events。
- AWS CLI
-
下列命令會從日誌群組
my-logs中名為20150601的日誌串流擷取日誌事件:aws logs get-log-events --log-group-namemy-logs--log-stream-name20150601輸出:
{ "nextForwardToken": "f/31961209122447488583055879464742346735121166569214640130", "events": [ { "ingestionTime": 1433190494190, "timestamp": 1433190184356, "message": "Example Event 1" }, { "ingestionTime": 1433190516679, "timestamp": 1433190184356, "message": "Example Event 1" }, { "ingestionTime": 1433190494190, "timestamp": 1433190184358, "message": "Example Event 2" } ], "nextBackwardToken": "b/31961209122358285602261756944988674324553373268216709120" }-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 GetLogEvents
。
-
以下程式碼範例顯示如何使用 put-log-events。
- AWS CLI
-
下列命令會將日誌事件放置於日誌群組
my-logs中名為20150601的日誌串流:aws logs put-log-events --log-group-namemy-logs--log-stream-name20150601--log-eventsfile://events輸出:
{ "nextSequenceToken": "49542672486831074009579604567656788214806863282469607346" }上述範例會從目前目錄中名為
events的檔案讀取事件的 JSON 陣列:[ { "timestamp": 1433190184356, "message": "Example Event 1" }, { "timestamp": 1433190184358, "message": "Example Event 2" }, { "timestamp": 1433190184360, "message": "Example Event 3" } ]執行每個後續呼叫時,都必須使用序列字符選項來指定由前一個呼叫提供的下一個序列字符:
aws logs put-log-events --log-group-namemy-logs--log-stream-name20150601--log-eventsfile://events2--sequence-token"49542672486831074009579604567656788214806863282469607346"輸出:
{ "nextSequenceToken": "49542672486831074009579604567900991230369019956308219826" }-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 PutLogEvents
。
-
以下程式碼範例顯示如何使用 put-retention-policy。
- AWS CLI
-
下列命令會將 5 天保留政策新增至名為
my-logs的日誌群組:aws logs put-retention-policy --log-group-namemy-logs--retention-in-days5-
如需 API 詳細資訊,請參閱《AWS CLI 命令參考》中的 PutRetentionPolicy
。
-