Agent에서 설정하는 HTTP Check Integration 방법은 안내드립니다.
Agent에서 설정하는 http check을 통한 서비스 URL 모니터링 주기는 기본적으로 15초이며,
network.http.response_time, network.http.can_connect, http.ssl.days_left 등의 Metrics을 수집할 수 있습니다.
URL개수 제한은 없지만 많은 Endpoint를 체크한다면 Agent의 check_runners 개수(default: 4)를 늘려야 합니다. 다만, check_runners개수를 늘릴 경우 Datadog Agent가 사용하는 리소스가 많아져서 여러 Host로 Agent를 분산해서
HTTP check를 사용하는 것을 권고합니다.
Integration 작업 전 설치할 Host에서 curl 명령어 등을 통해 url에 접속이 가능 한 환경인지 우선 확인 합니다.
http check 설정
1. Linux 환경
대상 Host가 Linux 환경인 경우 아래와 같이 설정합니다.
- http_check를 Integration 하기 위해 http_check.d를 활성화 합니다.
$ cd /etc/datadog-agent/conf.d/http_check.d
http_check.d 디렉터리에는 설정파일 샘플(conf.yaml.example)이 있으며, conf.yaml로 변경합니다.$ sudo cp conf.yaml.example conf.yaml
혹은
$ mv conf.yaml.example conf.yaml
- conf.yaml의 소유권 변경 및 파일 내 설정을 수정합니다.
$ sudo chown dd-agent:dd-agent conf.yaml $ vi conf.yaml
init_config:
instances:
- name: “대상서비스명”
url: https://www.skcc.co.kr/
- name: “SK recruit”
url: https://recruit.skcc.co.kr/
- Datadog agent를 재시작합니다.(서비스 영향 없음)
$ sudo systemctl restart datadog-agent.service - Datadog agent 수집상태를 확인합니다.
$ sudo datadog-agent status 확인 예
Running Checks
==============
<중략>
http_check (6.1.2)
------------------
Instance ID: http_check:SKHomepage Login:7499e0886c55190d [OK]
Configuration Source: file:/etc/datadog-agent/conf.d/http_check.d/conf.yaml
Total Runs: 1
Metric Samples: Last Run: 5, Total: 5
Events: Last Run: 0, Total: 0
Service Checks: Last Run: 2, Total: 2
Average Execution Time : 307ms
Last Execution Date : 2022-05-11 05:04:51 UTC (1652245491000)
Last Successful Execution Date : 2022-05-11 05:04:51 UTC (1652245491000)
2. Windows 환경
대상 Host가 Windows 환경인 경우 아래와 같이 설정합니다.
- http_check를 Integration 하기 위해 http_check.d를 활성화 합니다.
- C:\ProgramData\Datadog\conf.d\http_check.d로 이동합니다.
- http_check.d 폴더에 설정파일 샘플(conf.yaml.example)이 있으며, conf.yaml로 ‘이름 바꾸기’를 하거나 복사 후 이름을 변경합니다.
- conf.yaml의 설정을 수정합니다.
init_config:
instances:
- name: “대상서비스명”
url: https://www.skcc.co.kr/
- name: “SK recruit”
url: https://recruit.skcc.co.kr/
- Datadog Agent Manager를 재시작합니다. (서비스 영향 없음) Restart Agent를 실행하거나, 우측 하단 Tray에서 Datadog Agent를 선택 및 우클릭 후 Restart를 실행합니다.
GUI 환경에서 http_check을 설정하면 아래와 같습니다.
- 실행 중인 Datadog Agent Manager좌측 메뉴의 Checks를 클릭 후 선택 박스에서 ‘Add a Check’을 선택합니다.
- Add a Check 목록에서 http_check를 선택 후 설정 정보(conf.yaml)를 변경합니다. (위의 conf.yaml의 설정 부분을 참고 하시기 바랍니다.)
- 화면 오른쪽 상단의 Add Check 버튼을 클릭합니다.
해당 작업 후 C:\ProgramData\Datadog\conf.d\http_check.d\conf.yaml 의 위치에 파일이 생성 됩니다. - Datadog Agent Manager좌측 메뉴의 Restart Agent를 클릭합니다. (서비스 영향 없음)
- 재시작 후 Datadog Agent Manager좌측 메뉴의 Checks를 클릭 후 ‘Edit Enabled Check’을 선택하면, http_check.d/conf.yaml이 확인됩니다.
설정을 변경하려면 위의 conf.yaml의 설정 내용을 참고해서 수정하고 Save를 한 후 재시작을 합니다.
- HTTP Check Dashboard Sample은 Support portal Datadog Monitoring > Datadog Sample > [ Datadog ] Agent Integration Dashbaord Sample 내의 HTTP Check Integration Dashboard를 참고하시기 바랍니다.
( Datadog Sample은 Support portal 로그인을 해야 목록이 표시됩니다. )
3. Monitor 설정
URL의 점검 결과가 비정상일 때 담당자가 Alert을 받을 수 있도록 설정합니다.
- Monitors > New Monitor메뉴를 선택 하거나 Monitors > Monitor List 메뉴의 상단의 New Monitor 버튼을 클릭 후
Metric을 선택 합니다. - ‘Choose the detection method’에서 임계치 기반인 ‘Threshold Alert’을 선택합니다.
- ‘Define the metric’에서 network.http.can_connect를 선택합니다.
group by 를 url을 선택해 url 별로 Alert 이 발생하도록 합니다.
Alert 발생 여부를 체크할 데이터의 기간을 설정합니다. - ‘Set alert conditions’에서 임계치를 선택합니다. 본 예는 1분 동안 결과의 평균이 0.6미만일 시 alert을 발생하도록 하는 예로, 수집 주기가 15초이기 때문에 예시의 조건은 2번 이상 URL 점검 결과가 없을 때 담당자가 Alert을 받는 조건의 예시입니다. 임계치와 alert 조건은 운영조직에 적합한 설정이 필요합니다.
- ‘Notify your team’에서 Alert을 받을 내용과 수신자 정보를 작성합니다. 본 예에서는 {{url.name}}으로 URL 이름을 제목에 포함하도록 했으며, 아래 부분에서 Alert을 수신할 담당자 Email 혹은 Channel(opsgenie/Slack 등)의 정보를 선택할 수 있습니다. 그 외에 본문에 @ 이후 수신자 정보를 추가하면 송신 가능합니다.
- ‘Define permissions and audit notifications’에서 등록한 Monitor(Alert)의 수정 권한 설정 및 수정 시 관련자(생성자/Alert 수신자)에게 공유가 될지를 설정합니다.
- 위의 내용까지 모두 설정했으면, 내용 확인 후 저장합니다. ‘Test Notifications’를 통해 사전에 정상 동작 여부를 확인할 수도 있습니다.
온라인상담
문의하기