

# AWS Toolkit for JetBrains를 사용하여 CloudWatch Logs 작업
<a name="building-cloudwatch"></a>

Amazon CloudWatch Logs는 확장성이 뛰어난 단일 서비스에서 사용하는 모든 시스템, 애플리케이션 및 AWS 서비스에서 로그를 중앙 집중화할 수 있습니다. 그런 다음 로그를 쉽게 보고, 특정 오류 코드 또는 패턴이 있는지 검색하고, 특정 필드를 기반으로 필터링하거나, 향후 분석을 위해 안전하게 보관할 수 있습니다. 자세한 내용은 *Amazon CloudWatch 사용 설명서*에서 [Amazon CloudWatch Logs란 무엇입니까?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatchLogs.html)를 참조하세요.

다음 주제에서는 AWS 계정에서 AWS Toolkit for JetBrains를 사용하여 CloudWatch Logs 작업을 수행하는 방법을 설명합니다.

**Topics**
+ [CloudWatch 로그 그룹 및 로그 스트림 보기](viewing-CloudWatch-logs.md)
+ [CloudWatch 로그 이벤트 작업](working-CloudWatch-log-events.md)
+ [CloudWatch Logs Insights 작업](cloudwatch-log-insights.md)

# AWS Toolkit for JetBrains를 사용하여 CloudWatch 로그 그룹 및 로그 스트림 보기
<a name="viewing-CloudWatch-logs"></a>

*로그 스트림*은 동일한 소스를 공유하는 로그 이벤트 시퀀스입니다. CloudWatch Logs에서 각 별도의 로그 소스가 별도의 로그 스트림을 구성합니다.

 *로그 그룹*은 동일한 보존 기간, 모니터링 및 액세스 제어 설정을 공유하는 로그 스트림의 그룹입니다. 로그 그룹을 정의하고 각 그룹에 배치할 스트림을 지정할 수 있습니다. 하나의 로그 그룹에서 포함할 수 있는 로그 스트림의 수에는 제한이 없습니다.

자세한 내용은 *Amazon CloudWatch 사용 설명서*에서 [로그 그룹 및 로그 스트림 작업](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Working-with-log-groups-and-streams.html)을 참조하세요.

**Topics**
+ [**CloudWatch Logs** 노드를 사용하여 로그 그룹 및 로그 스트림 보기](#viewing-log-groups)
+ [**Lambda** 노드로 로그 스트림 보기](#viewing-lamba-log-groups)
+ [**Amazon ECS** 노드로 로그 스트림 보기](#viewing-ecs-log-groups)

## **CloudWatch Logs** 노드를 사용하여 로그 그룹 및 로그 스트림 보기
<a name="viewing-log-groups"></a>

1. AWS Explorer가 열려 있지 않은 경우 이를 엽니다.

1. [**CloudWatch Logs**] 노드를 클릭하여 로그 그룹 목록을 확장합니다.

   [현재 AWS 리전](setup-region.md#setup-region-current-region)에 대한 로그 그룹이 **CloudWatch Logs** 노드 아래에 표시됩니다.

1. 로그 그룹의 로그 스트림을 보려면 다음 중 하나를 수행하세요.
   + 로그 그룹의 이름을 두 번 클릭합니다.
   + 로그 그룹의 이름을 마우스 오른쪽 버튼으로 클릭하고 **로그 스트림 보기**를 선택합니다.

   로그 그룹의 내용은 **로그 스트림** 창에 표시됩니다. 각 스트림의 로그 이벤트와 상호 작용하는 방법에 대한 자세한 내용은 [CloudWatch 로그 이벤트 작업CloudWatch Logs Insights 작업](working-CloudWatch-log-events.md) 섹션을 참조하세요.  
![\[AWS Explorer에서 CloudWatch 로그 그룹의 로그 스트림 보기\]](http://docs.aws.amazon.com/ko_kr/toolkit-for-jetbrains/latest/userguide/images/cloudwatch-view-log-streams.png)

## **Lambda** 노드로 로그 스트림 보기
<a name="viewing-lamba-log-groups"></a>

AWS Explorer에서 **Lambda** 노드를 사용하여 AWS Lambda 함수에 대한 CloudWatch Logs를 볼 수 있습니다.

**참고**  
AWS Explorer에서 **CloudWatch Logs** 노드를 사용하여 Lambda 함수를 포함한 모든 AWS 서비스에 대한 로그 스트림을 볼 수도 있습니다. 그러나 Lambda 함수에 관련된 로그 데이터의 개요를 보려면 **Lambda** 노드를 사용하는 것이 좋습니다.

1. AWS Explorer가 열려 있지 않은 경우 이를 엽니다.

1. **Lambda** 노드를 클릭하여 Lambda 함수 목록을 확장합니다.

   [현재 AWS 리전](setup-region.md#setup-region-current-region)에 대한 Lambda 함수는 **Lambda** 노드 아래에 표시됩니다.

1. Lambda 함수를 마우스 오른쪽 버튼으로 클릭하고 **로그 스트림 보기**를 선택합니다.

   함수에 대한 로그 스트림이 **로그 스트림** 창에 표시됩니다. 각 스트림의 로그 이벤트와 상호 작용하는 방법에 대한 자세한 내용은 [CloudWatch 로그 이벤트 작업CloudWatch Logs Insights 작업](working-CloudWatch-log-events.md) 섹션을 참조하세요.

## **Amazon ECS** 노드로 로그 스트림 보기
<a name="viewing-ecs-log-groups"></a>

AWS Explorer에서 **Amazon ECS** 노드를 사용하여 Amazon Elastic Container Service에서 실행되고 유지 관리되는 클러스터와 컨테이너에 대한 CloudWatch Logs를 볼 수 있습니다.

**참고**  
AWS Explorer에서 **CloudWatch Logs** 노드를 사용하여 Amazon ECS를 포함한 모든 AWS 서비스에 대한 로그 그룹을 볼 수도 있습니다. Amazon ECS 클러스터 및 컨테이너와 관련된 로그 데이터의 개요를 보려면 **Amazon ECS** 노드를 사용하는 것이 좋습니다.

1. AWS Explorer가 열려 있지 않은 경우 이를 엽니다.

1. **Amazon ECS** 노드를 클릭하여 Amazon ECS 클러스터의 목록을 확장합니다.

   [현재 AWS 리전](setup-region.md#setup-region-current-region)의 Amazon ECS 클러스터가 **Amazon ECS** 노드 아래에 표시됩니다.

1. 클러스터를 마우스 오른쪽 버튼으로 클릭하고 **로그 스트림 보기**를 선택합니다.

   클러스터에 대한 로그 스트림이 **로그 스트림** 창에 표시됩니다.

1. 특정 컨테이너에 대한 로그 스트림을 보려면 클러스터를 클릭하여 등록된 컨테이너 목록을 확장합니다.

   클러스터에 등록된 컨테이너가 아래에 표시됩니다.

1. 컨테이너를 마우스 오른쪽 버튼으로 클릭하고 **컨테이너 로그 스트림 보기**를 선택합니다.

   컨테이너에 대한 로그 스트림이 **로그 스트림** 창에 표시됩니다. 클러스터 및 컨테이너의 로그 이벤트와 상호 작용하는 방법에 대한 자세한 내용은 [CloudWatch 로그 이벤트 작업CloudWatch Logs Insights 작업](working-CloudWatch-log-events.md) 섹션을 참조하세요.

# AWS Toolkit for JetBrains를 사용하여 로그 스트림의 CloudWatch 로그 이벤트 작업
<a name="working-CloudWatch-log-events"></a>

**로그 스트림** 창을 연 후 각 스트림의 로그 이벤트에 액세스할 수 있습니다. 로그 이벤트는 모니터링 중인 애플리케이션 또는 리소스에 의해 기록된 활동의 기록입니다.

**Topics**
+ [스트림의 로그 이벤트 보기 및 필터링](#viewing-log-events)
+ [로그 작업](#working-with-log-actions)
+ [파일 또는 편집기로 CloudWatch 로그 이벤트 내보내기](#exporting-CW-logs)

## 스트림의 로그 이벤트 보기 및 필터링
<a name="viewing-log-events"></a>

로그 스트림을 열면 **로그 스트림** 창에 해당 스트림의 로그 이벤트 시퀀스가 표시됩니다.

1. 보려는 로그 스트림을 찾으려면 **로그 스트림** 창을 엽니다([CloudWatch 로그 그룹 및 로그 스트림 보기](viewing-CloudWatch-logs.md) 참조).
**참고**  
패턴 매칭을 사용하여 목록에서 스트림을 찾을 수 있습니다. **로그 스트림** 창을 클릭하고 텍스트 입력을 시작합니다. 사용자가 입력한 텍스트와 일치하는 텍스트가 포함된 첫 번째 로그 스트림 이름이 강조 표시됩니다. **마지막 이벤트 시간** 열의 상단을 클릭하여 목록을 재정렬할 수도 있습니다.

1. 로그 스트림을 두 번 클릭하여 로그 이벤트의 시퀀스를 봅니다.

   **로그 이벤트** 창에는 로그 스트림을 구성하는 로그 이벤트가 표시됩니다.

1. 콘텐츠에 따라 로그 이벤트를 필터링하려면 **로그 스트림 필터링** 필드에 텍스트를 입력하고 **Return** 키를 누릅니다.

    결과는 필터 텍스트와 대/소문자를 구분하여 일치하는 텍스트가 포함된 로그 이벤트입니다. 필터는 화면에 표시되지 않는 이벤트를 포함하여 전체 로그 스트림을 검색합니다.
**참고**  
패턴 일치를 사용하여 창에서 로그 이벤트를 찾을 수도 있습니다. **로그 이벤트** 창을 클릭하고 텍스트 입력을 시작합니다. 사용자가 입력한 텍스트와 일치하는 텍스트가 포함된 첫 번째 로그 이벤트가 강조 표시됩니다. **로그 스트림 필터링** 검색과 달리 화면의 이벤트만 확인됩니다.

1. 시간에 따라 로그 이벤트를 필터링하려면 로그 이벤트를 마우스 오른쪽 버튼으로 클릭하고 **다음 시간 전후의 로그 표시**를 선택합니다.

    **1분**, **5분** 또는 **10분**을 선택할 수 있습니다. 예를 들어, **5분**을 선택하면 선택한 항목 5분 전후에 발생한 로그 이벤트만 필터링된 목록에 표시됩니다.  
![\[로그 이벤트 창에서 로그 작업 보기 및 필터링\]](http://docs.aws.amazon.com/ko_kr/toolkit-for-jetbrains/latest/userguide/images/cloudwatch-filter-log-events.png)

**로그 이벤트** 창 왼쪽의 [로그 작업](#working-with-log-actions)은 로그 이벤트와 상호 작용하는 더 많은 방법을 제공합니다.

## 로그 작업
<a name="working-with-log-actions"></a>

**로그 이벤트** 창 왼쪽의 4가지 로그 작업을 통해 CloudWatch 로그 이벤트를 새로 고치고, 편집하고, 테일링하고, 래핑할 수 있습니다.

![\[로그 이벤트 창에서 로그 작업 보기\]](http://docs.aws.amazon.com/ko_kr/toolkit-for-jetbrains/latest/userguide/images/cloudwatch-log-actions.png)


1. 상호 작용할 로그 이벤트를 찾으려면 [**로그 스트림** 창을 엽니다](#viewing-log-events).

1. 다음 로그 작업 중 하나를 선택합니다.
   + **새로 고침** – 로그 이벤트 창이 열린 후 발생한 **로그 이벤트**로 목록을 업데이트합니다.
   + **편집기에서 열기** – IDE의 기본 편집기에서 화면 로그 이벤트를 엽니다.
**참고**  
이 작업은 화면의 로그 이벤트만 IDE 편집기로 내보냅니다. 편집기에서 모든 스트림의 이벤트를 보려면 [**로그 스트림 내보내기**](#exporting-CW-logs) 옵션을 선택합니다.
   + **테일 로그** - **로그 이벤트** 창으로 새 로그 이벤트를 스트리밍합니다. 이 기능은 Amazon EC2 인스턴스 및 AWS CodeBuild 빌드와 같은 장기 실행 서비스를 지속적으로 업데이트하는 데 유용합니다.
   + **로그 래핑** – 창 크기로 인해 긴 항목이 숨겨지는 경우 로그 이벤트 텍스트를 여러 줄로 표시합니다.

## 파일 또는 편집기로 CloudWatch 로그 이벤트 내보내기
<a name="exporting-CW-logs"></a>

CloudWatch 로그 스트림을 내보내면 로그 이벤트를 IDE의 기본 편집기에서 열거나 로컬 폴더에 다운로드할 수 있습니다.

1. 액세스하려는 로그 스트림을 찾으려면 [**로그 스트림** 창을 엽니다](#viewing-log-events).

1. 로그 스트림을 마우스 오른쪽 버튼으로 클릭한 다음 **로그 스트림 내보내기**, **편집기에서 열기** 또는 **로그 스트림 내보내기**, **파일에 저장**을 선택합니다.
   + **편집기에서 열기** – IDE의 기본 편집기에서 선택한 스트림을 구성하는 로그 이벤트를 엽니다.
**참고**  
이 옵션은 로그 스트림의 모든 이벤트를 IDE 편집기로 내보냅니다.
   + **파일에 저장** - **로그 스트림 다운로드** 대화 상자를 엽니다. 이 대화 상자에서 다운로드 폴더를 선택하고 로그 이벤트가 포함된 파일의 이름을 바꿀 수 있습니다.

# AWS Toolkit for JetBrains를 사용하여 CloudWatch Logs Insights 작업
<a name="cloudwatch-log-insights"></a>

AWS Toolkit for JetBrains를 사용하여 CloudWatch Logs Insights 작업을 수행할 수 있습니다. CloudWatch Logs Insights를 사용하면 Amazon CloudWatch Logs 내 로그 데이터를 대화식으로 검색해 분석할 수 있습니다. 자세한 내용은 **Amazon CloudWatch Logs 사용 설명서의 [CloudWatch Logs Insights를 사용한 로그 분석](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html)을 참조하세요.

## CloudWatch Logs Insights에 대한 IAM 권한
<a name="iam-permissions-for-cwlog-insights"></a>

 CloudWatch Logs Insights 쿼리 결과를 실행하고 보려면 다음 권한이 필요합니다.

```
{
  "Version": "2012-10-17",
  "Statement" : [
    {
      "Effect" : "Allow",
      "Action" : [
        "logs:StartQuery",
        "logs:GetQueryResults",
        "logs:GetLogRecord",
        "logs:describeLogGroups",
        "logs:describeLogStreams"
      ],
      "Resource" : "*"
    }
  ]
}
```

다음 권한은 필수는 아니지만 연결된 결과 창이나 IDE를 닫을 때 AWS Toolkit for JetBrains가 현재 실행 중인 쿼리를 자동으로 중지할 수 있게 합니다.

```
{
  "Version": "2012-10-17",
  "Statement" : [
    {
      "Effect" : "Allow",
      "Action" : [
        "logs:StopQuery"
      ],
      "Resource" : "*"
    }
  ]
}
```

## CloudWatch Logs Insights 작업
<a name="working-with-cwlog-insights"></a>

**CloudWatch Logs Insights 쿼리 편집기 열기**

1. AWS Explorer를 엽니다.

1.  **CloudWatch Logs** 노드를 두 번 클릭하여 로그 그룹 목록을 확장합니다.

1.  열려는 로그 그룹을 마우스 오른쪽 버튼으로 클릭한 다음 **쿼리 편집기 열기**를 선택합니다.

**CloudWatch Logs Insights 쿼리 시작**

1. **쿼리 로그 그룹** 창에서 쿼리 파라미터를 원하는 대로 변경합니다.

   날짜 또는 상대 시간별로 시간 범위를 선택할 수 있습니다.

   **쿼리 로그 그룹** 필드는 CloudWatch Logs Insights 쿼리 구문을 허용합니다. 자세한 내용은 **Amazon CloudWatch Logs 사용 설명서의 [CloudWatch Logs Insights 쿼리 구문](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html)을 참조하세요.

1.  **실행**을 선택하여 쿼리를 시작합니다.

**CloudWatch Logs Insights 쿼리 저장**

1. 쿼리 이름을 입력합니다.

1.  **쿼리 저장**을 선택합니다.

    선택한 로그 그룹과 쿼리가 AWS 계정에 저장됩니다. 시간 범위는 저장되지 않습니다.

   CloudWatch Logs Insights AWS Management Console 페이지에서 저장된 쿼리를 검색하고 재사용할 수 있습니다.

**저장된 CloudWatch Logs Insights 쿼리 검색**

1.  **쿼리 로그 그룹** 창에서 **저장된 쿼리 검색**을 선택합니다.

1.  원하는 쿼리를 선택하고 **확인**을 선택합니다.

   선택한 로그 그룹과 쿼리가 기존 대화 상자의 모든 항목을 대체합니다.

**쿼리 결과 탐색**
+  CloudWatch Logs Insights **쿼리 결과** 창의 오른쪽 상단에서 **쿼리 편집기 열기**를 선택합니다.

**개별 로그 레코드 보기**
+  쿼리 결과 창에서 행을 두 번 클릭하여 해당 로그 레코드에 대한 세부 정보가 포함된 새 탭을 엽니다.

   오른쪽 상단에서 **로그 스트림 보기**를 선택하여 로그 레코드의 연결된 로그 스트림으로 이동할 수도 있습니다.