View a markdown version of this page

AWS CLI를 사용하는 CloudWatch Logs 예제 - AWS Command Line Interface

AWS CLI를 사용하는 CloudWatch Logs 예제

다음 코드 예제에서는 CloudWatch Logs에서 AWS Command Line Interface를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여 줍니다.

작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.

각 예시에는 전체 소스 코드에 대한 링크가 포함되어 있으며, 여기에서 컨텍스트에 맞춰 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있습니다.

주제

작업

다음 코드 예시는 create-log-group의 사용 방법을 보여줍니다.

AWS CLI

다음 명령은 이름이 my-logs인 로그 그룹을 생성합니다.

aws logs create-log-group --log-group-name my-logs
  • API 세부 정보는 AWS CLI 명령 참조의 CreateLogGroup를 참조하세요.

다음 코드 예시는 create-log-stream의 사용 방법을 보여줍니다.

AWS CLI

다음 명령은 my-logs 로그 그룹에서 이름이 20150601인 로그 스트림을 생성합니다.

aws logs create-log-stream --log-group-name my-logs --log-stream-name 20150601
  • API 세부 정보는 AWS CLI 명령 참조의 CreateLogStream을 참조하세요.

다음 코드 예시는 delete-log-group의 사용 방법을 보여줍니다.

AWS CLI

다음 명령은 이름이 my-logs인 로그 그룹을 삭제합니다.

aws logs delete-log-group --log-group-name my-logs
  • API 세부 정보는 AWS CLI 명령 참조의 DeleteLogGroup을 참조하세요.

다음 코드 예시는 delete-log-stream의 사용 방법을 보여줍니다.

AWS CLI

다음 명령은 이름이 my-logs인 로그 스트림에서 이름이 20150531인 로그 그룹을 삭제합니다.

aws logs delete-log-stream --log-group-name my-logs --log-stream-name 20150531
  • API 세부 정보는 AWS CLI 명령 참조의 DeleteLogStream을 참조하세요.

다음 코드 예시는 delete-retention-policy의 사용 방법을 보여줍니다.

AWS CLI

다음 명령은 이전에 이름이 my-logs인 로그 그룹에 적용되었던 보존 정책을 제거합니다.

aws logs delete-retention-policy --log-group-name my-logs

다음 코드 예시는 describe-log-groups의 사용 방법을 보여줍니다.

AWS CLI

다음 명령은 이름이 my-logs인 로그 그룹을 설명합니다.

aws logs describe-log-groups --log-group-name-prefix my-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-name my-logs --log-stream-name-prefix 2015

출력:

{ "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 } ] }

다음 코드 예시는 get-log-events의 사용 방법을 보여줍니다.

AWS CLI

다음 명령은 my-logs 로그 그룹에서 이름이 20150601인 로그 스트림의 로그 이벤트를 검색합니다.

aws logs get-log-events --log-group-name my-logs --log-stream-name 20150601

출력:

{ "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-name my-logs --log-stream-name 20150601 --log-events file://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-name my-logs --log-stream-name 20150601 --log-events file://events2 --sequence-token "49542672486831074009579604567656788214806863282469607346"

출력:

{ "nextSequenceToken": "49542672486831074009579604567900991230369019956308219826" }
  • API 세부 정보는 AWS CLI 명령 참조의 PutLogEvents를 참조하세요.

다음 코드 예시는 put-retention-policy의 사용 방법을 보여줍니다.

AWS CLI

다음 명령은 my-logs 로그 그룹에 5일 보존 정책을 추가합니다.

aws logs put-retention-policy --log-group-name my-logs --retention-in-days 5

다음 코드 예시는 start-live-tail의 사용 방법을 보여줍니다.

AWS CLI

다음 명령은 my-logs라는 로그 그룹에서 Live Tail 세션을 시작합니다.

aws logs start-live-tail --log-group-identifiers arn:aws:logs:us-east-1:111111222222:log-group:my-logs

다음 명령은 대화형 모드의 my-logs라는 로그 그룹에서 Live Tail 세션을 시작합니다.

aws logs start-live-tail --log-group-identifiers arn:aws:logs:us-east-1:111111222222:log-group:my-logs --mode interactive

대화형 모드에서는 테일 로그에서 최대 5개의 용어를 강조 표시할 수 있습니다. 심각도 코드는 기본적으로 강조 표시됩니다. h를 눌러 강조 표시 모드로 전환한 다음, 강조 표시할 용어를 한 번에 하나씩 입력하고 Enter 키를 누릅니다. c를 눌러 강조 표시된 용어를 지웁니다. t를 눌러 JSON 또는 일반 텍스트 간에 서식을 전환합니다. Esc 키를 눌러 Live Tail 세션을 종료합니다. up 또는 down 키를 눌러 로그 이벤트를 위나 아래로 스크롤하고 Ctrl + u 또는 Ctrl + d 키를 사용하여 더 빠르게 스크롤합니다. q를 눌러 최신 로그 이벤트로 스크롤합니다.

  • API 세부 정보는 AWS CLI 명령 참조의 StartLiveTail을 참조하세요.