

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

# 에서 로깅 및 모니터링 AWS CloudShell
<a name="logging-and-monitoring"></a>

이 주제에서는 CloudTrail을 사용하여 AWS CloudShell 활동 및 성능을 로깅하고 모니터링하는 방법을 설명합니다.

## CloudTrail을 사용한 활동 모니터링
<a name="cloudtrail-activity"></a>

AWS CloudShell 는 사용자 AWS CloudTrail, 역할 또는 AWS 서비스 가 수행한 작업에 대한 레코드를 제공하는 서비스와 통합됩니다 AWS CloudShell. CloudTrail은에 대한 모든 API 호출을 이벤트 AWS CloudShell 로 캡처합니다. 캡처되는 호출에는 AWS CloudShell 콘솔의 호출과 AWS CloudShell API에 대한 코드 호출이 포함됩니다.

추적을 생성하는 경우 CloudTrail 이벤트를 Amazon Simple Storage Service(Amazon S3) 버킷으로 지속적으로 전송할 수 있습니다. 여기에는에 대한 이벤트가 포함됩니다 AWS CloudShell.

추적을 구성하지 않은 경우에도 **이벤트 기록**에서 CloudTrail 콘솔의 최신 이벤트를 볼 수 있습니다. CloudTrail에서 수집한 정보를 사용하여 다음 세부 정보를 얻을 수 있습니다. 예를 들어, AWS CloudShell로 이루어진 요청을 확인할 수 있으며, 어떤 IP 주소에서 요청했는지, 누가 언제 요청했는지, 요청이 이루어진 시간 등을 확인할 수 있습니다.

## AWS CloudShell CloudTrail의
<a name="cloudtrail-cshell"></a>

다음 표에는 CloudTrail 로그 파일에 저장된 AWS CloudShell 이벤트가 나열되어 있습니다.

**참고**  
AWS CloudShell 다음을 포함하는 이벤트:   
 `*`는 변경되지 않는(읽기 전용) API 호출임을 나타냅니다.
`Environment`라는 단어는 쉘 환경을 호스팅하는 컴퓨팅 환경의 수명 주기와 관련이 있습니다.
`Layout`이라는 단어는 CloudShell 터미널의 모든 브라우저 탭을 복원합니다.



**CloudTrail의 CloudShell 이벤트**  

| 이벤트 이름 | 설명 | 
| --- | --- | 
| createEnvironment | CloudShell 환경이 생성될 때 발생합니다. | 
| createSession | CloudShell 환경이에서 연결될 때 발생합니다 AWS Management Console. | 
| deleteEnvironment | CloudShell 환경이 삭제될 때 발생합니다. | 
| deleteSession | 현재 브라우저 탭에서 실행 중인 CloudShell 탭의 세션이 삭제될 때 발생합니다. | 
| getEnvironmentStatus\* | CloudShell 환경의 상태가 검색될 때 발생합니다. | 
| getFileDownloadUrls\* | CloudShell 웹 인터페이스를 사용하여 CloudShell을 통해 파일을 다운로드하는 데 사용되는 사전 서명된 Amazon S3 URL이 생성될 때 발생합니다. | 
| getFileUploadUrls\* | CloudShell 웹 인터페이스를 사용하여 CloudShell을 통해 파일을 업로드하는 데 사용되는 사전 서명된 Amazon S3 URL이 생성될 때 발생합니다. | 
| cloudshell:DescribeEnvironments | 환경을 설명합니다. | 
| getLayout\* | 세션 시작 시 CloudShell 레이아웃이 검색될 때 발생합니다. | 
| putCredentials |  AWS Management Console CloudShell에 로그인하는 데 사용되는 자격 증명이 전달될 때 발생합니다. | 
| redeemCode\* | CloudShell 환경에서 새로 고침 토큰을 검색하는 워크플로가 시작될 때 발생합니다. 나중에 `putCredentials` 명령에서 이 토큰을 사용하여 CloudShell 환경에 액세스할 수 있습니다. | 
| sendHeartBeat  | CloudShell 세션이 활성 상태임을 확인하기 위해 발생합니다. | 
| startEnvironment  | CloudShell 환경이 시작될 때 발생합니다. | 
| stopEnvironment  | 실행 중인 CloudShell 환경이 중단될 때 발생합니다. | 
| updateLayout  | 백엔드의 웹 애플리케이션에서 현재 레이아웃이 저장될 때 발생합니다. | 



“Layout”이라는 단어가 포함된 이벤트는 CloudShell 터미널의 모든 브라우저 탭을 복원합니다.

** AWS CloudShell 작업에 대한 EventBridge 규칙**

EventBridge 규칙으로 EventBridge가 규칙과 일치하는 이벤트를 수신할 때 수행할 대상 작업을 지정합니다. CloudTrail 로그 파일에 이벤트로 기록된 AWS CloudShell 작업을 기반으로 수행할 대상 작업을 지정하는 규칙을 정의할 수 있습니다.

예를 들어, `put-rule` 명령을 사용하여 [AWS CLI에 대한 EventBridge 규칙을 생성](https://docs.aws.amazon.com/cli/latest/reference/events/put-rule.html)할 수 있습니다. `put-rule` 호출에는 최소한 EventPattern 또는 ScheduleExpression이 포함되어야 합니다. EventPatterns가 포함된 규칙은 일치하는 이벤트가 관찰되면 트리거됩니다. AWS CloudShell 이벤트에 대한 EventPattern:

```
{ "source": [ "aws.cloudshell" ], "detail-type": [ "AWS API Call via CloudTrail" ], "detail": { "eventSource": [ "cloudshell.amazonaws.com" ] } }
```

자세한 내용은 *Amazon EventBridge 사용자 가이드*의 [EventBridge의 이벤트 및 이벤트 패턴](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html)을 참조하세요.