다음을 사용하여 CloudTrail Lake 쿼리를 실행하고 관리합니다. AWS CLI - AWS CloudTrail

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

다음을 사용하여 CloudTrail Lake 쿼리를 실행하고 관리합니다. AWS CLI

를 사용하여 CloudTrail Lake 쿼리를 실행하고 관리할 수 있습니다. AWS CLI 를 사용할 때는 명령이 AWS CLI프로필에 AWS 리전 맞게 구성된 상태에서 실행된다는 점을 기억하십시오. 다른 리전에서 명령을 실행하려는 경우 프로필의 기본 리전을 변경하거나 명령에 --region 파라미터를 사용합니다.

CloudTrail Lake 쿼리에 사용할 수 있는 명령어

CloudTrail Lake에서 쿼리를 실행하고 관리하는 명령은 다음과 같습니다.

  • start-query쿼리를 실행하기 위해서요.

  • describe-query쿼리에 대한 메타데이터를 반환합니다.

  • get-query-results지정된 쿼리 ID에 대한 쿼리 결과를 반환합니다.

  • list-queries지정된 이벤트 데이터 저장소에 대한 목록 쿼리를 가져오려면

  • cancel-query실행 중인 쿼리를 취소하려면

CloudTrail Lake 이벤트 데이터 저장소에 사용할 수 있는 명령 목록은 을 참조하십시오이벤트 데이터 저장소에 사용할 수 있는 명령.

CloudTrail Lake 통합에 사용할 수 있는 명령 목록은 을 참조하십시오 CloudTrail Lake 통합에 사용할 수 있는 명령.

다음을 사용하여 쿼리를 시작하십시오. AWS CLI

다음 예제 AWS CLI start-query 명령은 쿼리문에서 ID로 지정된 이벤트 데이터 스토어에서 쿼리를 실행하고 쿼리 결과를 지정된 S3 버킷으로 전달합니다. --query-statement파라미터는 작은따옴표로 묶인 SQL 쿼리를 제공합니다. 선택적 파라미터에는 쿼리 결과를 지정된 S3 버킷에 전달하기 위해 --delivery-s3-uri가 포함됩니다. CloudTrail Lake에서 사용할 수 있는 쿼리 언어에 대한 자세한 내용은 을 참조하십시오. CloudTrail 호수 SQL 제약

aws cloudtrail start-query --query-statement 'SELECT eventID, eventTime FROM EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE LIMIT 10' --delivery-s3-uri "s3://aws-cloudtrail-lake-query-results-123456789012-us-east-1"

응답은 QueryId 문자열이 됩니다. 쿼리 상태를 가져오려면 start-query에 의해 반환한 값 QueryId을(를) 사용하여 describe-query을(를) 실행합니다. 쿼리가 성공하면 get-query-results을(를) 실행하여 결과를 가져옵니다.

출력

{ "QueryId": "EXAMPLE2-0add-4207-8135-2d8a4EXAMPLE" }
참고

한 시간 이상 실행되는 쿼리는 시간이 초과될 수 있습니다. 쿼리가 시간 초과되기 전에 처리된 부분적인 결과를 계속 가져올 수 있습니다.

선택적 --delivery-s3-uri 파라미터를 사용하여 쿼리 결과를 S3 버킷으로 전송하는 경우, 버킷 정책은 쿼리 결과를 버킷에 전송할 CloudTrail 권한을 부여해야 합니다. 버킷 정책의 수동 편집에 대한 자세한 내용은 CloudTrail 레이크 쿼리 결과에 대한 Amazon S3 버킷 정책 단원을 참조하세요.

를 사용하여 쿼리에 대한 메타데이터를 가져옵니다. AWS CLI

다음 예제 AWS CLI describe-query 명령은 쿼리 실행 시간 (밀리초), 스캔 및 일치한 이벤트 수, 스캔한 총 바이트 수, 쿼리 상태 등 쿼리에 대한 메타데이터를 가져옵니다. BytesScanned 값은 쿼리가 아직 실행 중이지 않는 한 계정에서 쿼리에 대해 청구되는 바이트 수와 일치합니다. 쿼리 결과가 S3 버킷으로 전송된 경우 응답은 URI S3와 전송 상태도 제공합니다.

--query-id 또는 --query-alias 파라미터 중 하나를 값으로 지정해야 합니다. --query-alias 파라미터를 지정하면 별칭에 대해 마지막으로 실행한 쿼리에 대한 정보가 반환됩니다.

aws cloudtrail describe-query --query-id EXAMPLEd-17a7-47c3-a9a1-eccf7EXAMPLE

다음은 응답의 예입니다.

{ "QueryId": "EXAMPLE2-0add-4207-8135-2d8a4EXAMPLE", "QueryString": "SELECT eventID, eventTime FROM EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE LIMIT 10", "QueryStatus": "RUNNING", "QueryStatistics": { "EventsMatched": 10, "EventsScanned": 1000, "BytesScanned": 35059, "ExecutionTimeInMillis": 3821, "CreationTime": "1598911142" } }

를 사용하여 쿼리 결과를 가져옵니다. AWS CLI

다음 예제 AWS CLI get-query-results 명령은 쿼리의 이벤트 데이터 결과를 가져옵니다. start-query 명령에서 반환되는 --query-id 값을 지정해야 합니다. BytesScanned 값은 쿼리가 아직 실행 중이지 않는 한 계정에서 쿼리에 대해 청구되는 바이트 수와 일치합니다. 선택적 파라미터에는 --max-query-results이 포함되며, 단일 페이지에서 반환할 명령의 최대 결과 수를 지정합니다. 지정한 --max-query-results 값보다 많은 결과가 있는 경우, 명령을 다시 실행해 반환된 NextToken 값을 추가함으로써 결과의 다음 페이지를 가져옵니다.

aws cloudtrail get-query-results --query-id EXAMPLEd-17a7-47c3-a9a1-eccf7EXAMPLE

출력

{ "QueryStatus": "RUNNING", "QueryStatistics": { "ResultsCount": 244, "TotalResultsCount": 1582, "BytesScanned":27044 }, "QueryResults": [ { "key": "eventName", "value": "StartQuery", } ], "QueryId": "EXAMPLE2-0add-4207-8135-2d8a4EXAMPLE", "QueryString": "SELECT eventID, eventTime FROM EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE LIMIT 10", "NextToken": "20add42078135EXAMPLE" }

를 사용하여 이벤트 데이터 저장소의 모든 쿼리를 나열합니다. AWS CLI

다음 예제 AWS CLI list-queries 명령은 지난 7일 동안 지정된 이벤트 데이터 스토어에 대한 쿼리 및 쿼리 상태 목록을 반환합니다. ARN값의 ID 접미사 ARN 또는 를 지정해야 합니다. --event-data-store 선택적으로 결과 목록을 줄이려면 --start-time--end-time 파라미터, --query-status 값을 추가하여 타임스탬프로 서식이 지정된 시간 범위를 지정할 수 있습니다. QueryStatus에 대한 유효한 값에는 QUEUED, RUNNING, FINISHED, FAILED, 또는 CANCELLED 등이 있습니다.

또한 list-queries에는 선택적 페이지 매김 파리미터도 있습니다. --max-results을(를) 사용하여 단일 페이지에서 반환할 명령의 최대 결과 수를 지정합니다. 지정한 --max-results 값보다 많은 결과가 있는 경우, 명령을 다시 실행해 반환된 NextToken 값을 추가함으로써 결과의 다음 페이지를 가져옵니다.

aws cloudtrail list-queries --event-data-store EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE --query-status CANCELLED --start-time 1598384589 --end-time 1598384602 --max-results 10

출력

{ "Queries": [ { "QueryId": "EXAMPLE2-0add-4207-8135-2d8a4EXAMPLE", "QueryStatus": "CANCELLED", "CreationTime": 1598911142 }, { "QueryId": "EXAMPLE2-4e89-9230-2127-5dr3aEXAMPLE", "QueryStatus": "CANCELLED", "CreationTime": 1598296624 } ], "NextToken": "20add42078135EXAMPLE" }

를 사용하여 실행 중인 쿼리를 취소하십시오. AWS CLI

다음 예제 AWS CLI cancel-query 명령은 상태가 인 RUNNING 쿼리를 취소합니다. --query-id의 값을 지정해야 합니다. cancel-query을(를) 실행할 때 cancel-query 작업이 아직 완료되지 않았음에도 쿼리 상태가 CANCELLED과 같이 표시됩니다.

참고

쿼리를 취소해도 요금이 발생할 수 있습니다. 쿼리를 취소하기 전에 검색한 데이터 양에 대해 계정에 여전히 요금이 청구됩니다.

다음은 CLI 예제입니다.

aws cloudtrail cancel-query --query-id EXAMPLEd-17a7-47c3-a9a1-eccf7EXAMPLE

출력

QueryId -> (string) QueryStatus -> (string)