

# 구성 요소 구성 섹션
<a name="component-config-sections"></a>

구성 요소 구성에는 여러 주요 섹션이 포함되어 있습니다. 구성 요소 구성의 섹션은 임의의 순서로 나열될 수 있습니다.
+ **alarmMetrics(선택 사항)**

  구성 요소에 대해 모니터링할 [지표](#component-config-metric) 목록. alarmMetrics 섹션은 모든 구성 요소 유형에 포함될 수 있습니다.
+ **로그(선택 사항)**

  구성 요소에 대해 모니터링할 [로그](#component-configuration-log) 목록. 로그 섹션은 EC2 인스턴스에만 있습니다.
+ **프로세스(선택 사항)**

  구성 요소에 대해 모니터링하기 위한 [프로세스](#component-configuration-process) 목록입니다. 프로세스 섹션은 EC2 인스턴스에만 있습니다.
+ **subComponents(선택 사항)**

  구성 요소의 중첩된 인스턴스 및 볼륨 subComponent 구성입니다. ELB, ASG, EC2 인스턴스, 사용자 지정 그룹화 EC2 인스턴스와 같은 유형의 구성 요소에는 중첩된 인스턴스 및 subComponents 섹션이 있을 수 있습니다.
+ **경보(선택 사항)**

  구성 요소에 대해 모니터링할 [경보](#component-configuration-alarms) 목록입니다. 경보 섹션은 모든 구성 요소 유형에 포함될 수 있습니다.
+ **windowsEvents(선택 사항)**

  구성 요소에 대해 모니터링할 [Windows 이벤트](#windows-events) 목록입니다. EC2 인스턴스의 Windows에만 `windowsEvents` 섹션이 있습니다.
+ **JMXPrometheusExporter(선택 사항)**

  JMXPrometheus Exporter 구성입니다.
+ **hanaPrometheusExporter(선택 사항)**

  SAP HANA Prometheus Exporter 구성.
+ **haClusterPrometheusExporter(선택 사항)**

  HA Cluster Prometheus Exporter 구성.
+ **netWeaverPrometheusExporter(선택 사항) **

  SAP NetWeaver Prometheus Exporter 구성.
+ **sapAsePrometheusExporter(선택 사항)**

  SAP ASE Prometheus Exporter 구성입니다.

다음 예는 JSON 형식의 **subComponents 섹션 조각**에 대한 구문을 보여 줍니다.

```
[
  {
    "subComponentType" : "AWS::EC2::Instance",
    "alarmMetrics" : [
      list of alarm metrics
    ],
    "logs" : [
      list of logs
    ],
    "processes": [
      list of processes
    ],
    "windowsEvents" : [
      list of windows events channels configurations
    ]
  },
  {
    "subComponentType" : "AWS::EC2::Volume",
    "alarmMetrics" : [
      list of alarm metrics
    ]
  }
]
```

## 구성 요소 구성 섹션 속성
<a name="component-config-properties"></a>

이 단원에서는 각 구성 요소 구성 섹션의 속성을 설명합니다.

**Topics**
+ [지표](#component-config-metric)
+ [Log](#component-configuration-log)
+ [프로세스](#component-configuration-process)
+ [JMX Prometheus Exporter](#component-configuration-prometheus)
+ [HANA Prometheus Exporter](#component-configuration-hana-prometheus)
+ [HA Cluster Prometheus Exporter](#component-configuration-ha-cluster-prometheus)
+ [NetWeaver Prometheus Exporter](#component-configuration-netweaver-prometheus)
+ [SAP ASE Prometheus Exporter](#component-configuration-sap-ase-prometheus)
+ [Windows 이벤트](#windows-events)
+ [경보](#component-configuration-alarms)

### 지표
<a name="component-config-metric"></a>

구성 요소에 대해 모니터링할 지표를 정의합니다.

**JSON** 

```
{
  "alarmMetricName" : "monitoredMetricName",
  "monitor" : true/false
}
```

**속성**
+ **alarmMetricName(필수 사항)**

  구성 요소에 대해 모니터링할 지표의 이름. Application Insights에서 지원하는 지표에 대해서는 [Amazon CloudWatch Application Insights에서 지원하는 로그 및 지표](appinsights-logs-and-metrics.md) 단원을 참조하세요.
+ **monitor(선택 사항)**

  지표를 모니터링할지 여부를 나타내는 부울. 기본값은 `true`입니다.

### Log
<a name="component-configuration-log"></a>

구성 요소에 대해 모니터링할 로그를 정의합니다.

**JSON** 

```
{
  "logGroupName" : "logGroupName",
  "logPath" : "logPath",
  "logType" : "logType",
  "encoding" : "encodingType",
  "monitor" : true/false
}
```

**속성**
+ **logGroupName(필수 사항)**

  모니터링된 로그에 연결할 CloudWatch 로그 그룹 이름. 로그 그룹 이름 제약 조건에 대해서는 [CreateLogGroup](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogGroup.html)을 참조하세요.
+ **logPath(EC2 인스턴스 구성 요소에 필요, AWS Lambda 같은 CloudWatch 에이전트를 사용하지 않는 구성 요소에 불필요)**

  모니터링할 로그의 경로. 로그 경로는 절대 Windows 시스템 파일 경로여야 합니다. 자세한 내용은 [CloudWatch 에이전트 구성 파일: 로그 섹션](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-Configuration-File-Details.html#CloudWatch-Agent-Configuration-File-Logssection)을 참조하세요.
+ **logType(필수 사항)**

  로그 유형은 Application Insights가 로그를 분석하는 로그 패턴을 결정합니다. 로그 유형은 다음 중에서 선택됩니다.
  + `SQL_SERVER`
  + `MYSQL`
  + `MYSQL_SLOW_QUERY`
  + `POSTGRESQL`
  + `ORACLE_ALERT`
  + `ORACLE_LISTENER`
  + `IIS`
  + `APPLICATION`
  + `WINDOWS_EVENTS`
  + `WINDOWS_EVENTS_ACTIVE_DIRECTORY`
  + `WINDOWS_EVENTS_DNS`
  + `WINDOWS_EVENTS_IIS`
  + `WINDOWS_EVENTS_SHAREPOINT`
  + `SQL_SERVER_ALWAYSON_AVAILABILITY_GROUP`
  + `SQL_SERVER_FAILOVER_CLUSTER_INSTANCE`
  + `DEFAULT`
  + `CUSTOM`
  + `STEP_FUNCTION`
  + `API_GATEWAY_ACCESS`
  + `API_GATEWAY_EXECUTION`
  + `SAP_HANA_LOGS`
  + `SAP_HANA_TRACE`
  + `SAP_HANA_HIGH_AVAILABILITY`
  + `SAP_NETWEAVER_DEV_TRACE_LOGS`
  + `PACEMAKER_HIGH_AVAILABILITY`
+ **encoding(선택 사항)**

  모니터링할 로그의 인코딩 유형. 지정된 인코딩은 [CloudWatch 에이전트 지원 인코딩](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AgentReference.html) 목록에 포함되어야 합니다. 제공되지 않은 경우 CloudWatch Application Insights에서는 다음을 제외한 유형 utf-8의 기본 인코딩을 사용합니다.
  +  `SQL_SERVER`: utf-16 인코딩
  +  `IIS`: ascii 인코딩
+ **monitor(선택 사항)**

  로그를 모니터링할지 여부를 나타내는 부울. 기본값은 `true`입니다.

### 프로세스
<a name="component-configuration-process"></a>

구성 요소에 대해 모니터링하기 위한 프로세스를 정의합니다.

**JSON** 

```
{
  "processName" : "monitoredProcessName",
  "alarmMetrics" : [
      list of alarm metrics
  ] 
}
```

**속성**
+ **processName(필수)**

  구성 요소에 대해 모니터링하기 위한 프로세스의 이름. 프로세스 이름에는 다음과 같은 프로세스 스템(예: `sqlservr` 또는 `sqlservr.exe`)이 포함되어서는 안 됩니다.
+ **alarmMetrics(필수)**

  이 프로세스를 모니터링하기 위한 [지표](#component-config-metric) 목록입니다. CloudWatch Application Insights에서 지원하는 프로세스 지표를 보려면 [Amazon Elastic Compute Cloud(EC2)](appinsights-metrics-ec2.md)의 내용을 참조하세요.

### JMX Prometheus Exporter
<a name="component-configuration-prometheus"></a>

JMX Prometheus Exporter 설정을 정의합니다.

**JSON** 

```
"JMXPrometheusExporter": {
  "jmxURL" : "JMX URL",
  "hostPort" : "The host and port",
  "prometheusPort" : "Target port to emit Prometheus metrics"
}
```

**속성**
+ **jmxURL(선택 사항)**

  연결할 전체 JMX URL입니다.
+ **hostPort(선택 사항)**

  원격 JMX를 통해 연결할 호스트 및 포트입니다. `jmxURL` 및 `hostPort` 중 하나만 지정할 수 있습니다.
+ **prometheusPort(선택 사항)**

  Prometheus 지표를 보낼 대상 포트입니다. 지정하지 않으면 기본 포트인 9404가 사용됩니다.

### HANA Prometheus Exporter
<a name="component-configuration-hana-prometheus"></a>

HANA Prometheus Exporter 설정을 정의합니다.

**JSON** 

```
"hanaPrometheusExporter": {
    "hanaSid": "SAP HANA  SID",
    "hanaPort": "HANA database port",
    "hanaSecretName": "HANA secret name",
    "prometheusPort": "Target port to emit Prometheus metrics"
}
```

**속성**
+ **hanaSid**

  SAP HANA 시스템의 3글자 SAP 시스템 ID(SID).
+ **hanaPort**

  Exporter가 HANA 지표를 쿼리할 HANA 데이터베이스 포트.
+ **hanaSecretName**

  HANA 모니터링 사용자 자격 증명을 저장하는 AWS Secrets Manager 보안 암호. HANA Prometheus Exporter는 이러한 자격 증명을 사용하여 데이터베이스에 연결하고 HANA 지표를 쿼리합니다.
+ **prometheusPort(선택 사항)**

  Prometheus에서 지표를 보낼 대상 포트. 지정하지 않으면 기본 포트인 9668이 사용됩니다.

### HA Cluster Prometheus Exporter
<a name="component-configuration-ha-cluster-prometheus"></a>

HA Prometheus Exporter 설정을 정의합니다.

**JSON** 

```
"haClusterPrometheusExporter": {
    "prometheusPort": "Target port to emit Prometheus metrics"
}
```

**속성**
+ **prometheusPort(선택 사항)**

  Prometheus에서 지표를 보낼 대상 포트. 지정하지 않으면 기본 포트인 9664가 사용됩니다.

### NetWeaver Prometheus Exporter
<a name="component-configuration-netweaver-prometheus"></a>

NetWeaver Prometheus Exporter 설정을 정의합니다.

**JSON** 

```
"netWeaverPrometheusExporter": {
    "sapSid": "SAP NetWeaver  SID",
    "instanceNumbers": [ "Array of instance Numbers of SAP NetWeaver system "],
"prometheusPort": "Target port to emit Prometheus metrics"
}
```

**속성**
+ **sapSid**

  SAP NetWeaver 시스템의 3글자 SAP 시스템 ID(SID).
+ **instanceNumbers**

  SAP NetWeaver 시스템의 인스턴스 번호 배열.

  **예: **`"instanceNumbers": [ "00", "01"]`
+ **prometheusPort(선택 사항)**

  Prometheus 지표를 전송할 대상 포트입니다. 지정하지 않으면 기본 포트인 `9680`가 사용됩니다.

### SAP ASE Prometheus Exporter
<a name="component-configuration-sap-ase-prometheus"></a>

SAP ASE Prometheus Exporter 설정을 정의합니다.

**JSON** 

```
"sapASEPrometheusExporter": {
    "sapAseSid": "SAP ASE SID",
    "sapAsePort": "SAP ASE database port",
    "sapAseSecretName": "SAP ASE secret name",
    "prometheusPort": "Target port to emit Prometheus metrics",
    "agreeToEnableASEMonitoring": true
}
```

**속성**
+ **sapAseSid**

  SAP ASE 시스템의 3글자 SAP 시스템 ID(SID).
+ **sapAsePort**

  Exporter가 ASE 지표를 쿼리할 SAP ASE 데이터베이스 포트.
+ **sapAseSecretName**

  ASE 모니터링 사용자 자격 증명을 저장하는 AWS Secrets Manager 보안 암호. SAP ASE Prometheus Exporter는 이러한 자격 증명을 사용하여 데이터베이스에 연결하고 ASE 지표를 쿼리합니다.
+ **prometheusPort(선택 사항)**

  Prometheus에서 지표를 보낼 대상 포트. 지정하지 않으면 기본 포트인 9399가 사용됩니다. 기본 포트를 사용하는 다른 ASE DB가 있는 경우 9499를 사용합니다.

### Windows 이벤트
<a name="windows-events"></a>

기록할 Windows 이벤트를 정의합니다.

**JSON** 

```
{
  "logGroupName" : "logGroupName",
  "eventName" : "eventName",
  "eventLevels" : ["ERROR","WARNING","CRITICAL","INFORMATION","VERBOSE"],
  "monitor" : true/false
}
```

**속성**
+ **logGroupName(필수 사항)**

  모니터링된 로그에 연결할 CloudWatch 로그 그룹 이름. 로그 그룹 이름 제약 조건에 대해서는 [CreateLogGroup](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogGroup.html)을 참조하세요.
+ **eventName(필수)**

  기록할 Windows 이벤트 유형입니다. 이것은 Windows 이벤트 로그 채널 이름과 동일합니다. 예를 들면 System, Security, CustomEventName 등이 있습니다. 이 필드는 기록할 Windows 이벤트 유형마다 있어야 합니다.
+ **eventLevels(필수)**

  기록할 이벤트 수준을 지정합니다. 기록할 각 수준을 지정해야 합니다. 가능한 값은 `INFORMATION`, `WARNING`, `ERROR`, `CRITICAL` 및 `VERBOSE`입니다. 이 필드는 기록할 Windows 이벤트 유형마다 있어야 합니다.
+ **monitor(선택 사항)**

  로그를 모니터링할지 여부를 나타내는 부울. 기본값은 `true`입니다.

### 경보
<a name="component-configuration-alarms"></a>

구성 요소에 대해 모니터링할 CloudWatch 경보를 정의합니다.

**JSON** 

```
{
  "alarmName" : "monitoredAlarmName",
  "severity" : HIGH/MEDIUM/LOW
}
```

**속성**
+ **alarmName(필수)**

  구성 요소에 대해 모니터링할 CloudWatch 경보의 이름입니다.
+ **severity(선택 사항)**

  경보가 울릴 때의 중단 정도를 나타냅니다.