- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- Administrator's Guide
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
Supported OS
Datadog Agent는 다음을 포함하여 Consul 노드에서 많은 메트릭을 수집합니다.
Consul Agent는 DogStatsD를 통해 추가 메트릭을 제공할 수 있습니다. 이러한 메트릭은 Consul에 의존하는 서비스가 아닌 Consul 자체의 내부 상태와 더 관련이 있습니다. 메트릭은 다음과 같습니다.
이외에 다수가 있습니다.
Datadog Agent는 메트릭 외에도 Consul의 각 상태 점검마다 서비스 점검을 전송하고, 새 리더 선출마다 이벤트를 전송합니다.
Datadog Agent의 Consul 점검은 Datadog Agent 패키지에 포함되어 있으므로 Consul 노드에 다른 것을 설치할 필요가 없습니다.
호스트에서 실행 중인 에이전트에 대해 이 점검을 구성하려면:
Consul 메트릭 수집을 시작하려면 Agent의 설정 디렉터리 루트의 conf.d/
폴더에서 consul.d/conf.yaml
파일을 편집합니다. 사용 가능한 모든 설정 옵션은 샘플 consul.d/conf.yaml을 참조하세요.
init_config:
instances:
## @param url - string - required
## Where your Consul HTTP server lives,
## point the URL at the leader to get metrics about your Consul cluster.
## Use HTTPS instead of HTTP if your Consul setup is configured to do so.
#
- url: http://localhost:8500
(선택 사항) use_prometheus_endpoint
설정 옵션을 활성화하여 Consul Prometheus 엔드포인트에서 추가 메트릭 세트를 가져올 수 있습니다.
참고: 동일한 인스턴스에 대해 두 가지를 모두 활성화하지 말고 DogStatsD 또는 Prometheus 메서드를 사용하세요.
Prometheus 엔드포인트에 메트릭을 노출하도록 Consul을 설정합니다. 기본 Consul 설정 파일의 최상위 telemetry
키에 중첩된 prometheus_retention_time
을 설정합니다.
{
...
"telemetry": {
"prometheus_retention_time": "360h"
},
...
}
Prometheus 엔드포인트 사용을 시작하려면 Agent의 설정 디렉터리 루트에 있는 conf.d/
폴더에서 consul.d/conf.yaml
파일을 편집합니다.
instances:
- url: <EXAMPLE>
use_prometheus_endpoint: true
Prometheus 엔드포인트를 사용하는 대신 DogStatsD를 통해 동일한 추가 메트릭 세트를 Agent에 보내도록 Consul을 설정할 수 있습니다.
DogStatsD 메트릭을 보내도록 Consul을 설정하려면 Consul의 기본 설정 파일에서 최상위 telemetry
키 아래에 중첩된 dogstatsd_addr
을 추가합니다.
{
...
"telemetry": {
"dogstatsd_addr": "127.0.0.1:8125"
},
...
}
메트릭에 태그가 올바르게 지정되었는지 확인하려면 다음 설정을 추가하여 Datadog Agent 기본 설정 파일 datadog.yaml
을 업데이트합니다.
# dogstatsd_mapper_cache_size: 1000 # default to 1000
dogstatsd_mapper_profiles:
- name: consul
prefix: "consul."
mappings:
- match: 'consul\.http\.([a-zA-Z]+)\.(.*)'
match_type: "regex"
name: "consul.http.request"
tags:
method: "$1"
path: "$2"
- match: 'consul\.raft\.replication\.appendEntries\.logs\.([0-9a-f-]+)'
match_type: "regex"
name: "consul.raft.replication.appendEntries.logs"
tags:
peer_id: "$1"
- match: 'consul\.raft\.replication\.appendEntries\.rpc\.([0-9a-f-]+)'
match_type: "regex"
name: "consul.raft.replication.appendEntries.rpc"
tags:
peer_id: "$1"
- match: 'consul\.raft\.replication\.heartbeat\.([0-9a-f-]+)'
match_type: "regex"
name: "consul.raft.replication.heartbeat"
tags:
peer_id: "$1"
Agent 버전 6.0 이상에서 사용 가능
로그 수집은 Datadog Agent에서 기본적으로 비활성화되어 있습니다. datadog.yaml
에서 다음을 사용하여 활성화합니다.
logs_enabled: true
Consul 로그를 수집하려면 consul.yaml
파일에서 이 설정 블록을 편집합니다.
logs:
- type: file
path: /var/log/consul_server.log
source: consul
service: myservice
path
와 service
파라미터 값을 변경하고 환경에 맞게 구성합니다.
사용 가능한 모든 설정 옵션은 샘플 consul.d/conf.yaml을 참조하세요.
컨테이너화된 환경의 경우 자동탐지 통합 템플릿에 다음 파라미터를 적용하는 방법이 안내되어 있습니다.
파라미터 | 값 |
---|---|
<INTEGRATION_NAME> | consul |
<INIT_CONFIG> | 비어 있음 또는 {} |
<INSTANCE_CONFIG> | {"url": "https://%%host%%:8500"} |
Agent 버전 6.0 이상에서 사용 가능
Datadog 에이전트에서 로그 수집은 기본값으로 비활성화되어 있습니다. 이를 활성화하려면 쿠버네티스(Kubernetes) 로그 수집을 참조하세요.
파라미터 | 값 |
---|---|
<LOG_CONFIG> | {"source": "consul", "service": "<SERVICE_NAME>"} |
Agent의 상태 하위 명령을 실행하고 Checks 섹션에서 consul
을 찾으세요.
참고: Consul 노드에 디버그 로깅이 활성화된 경우 Datadog Agent의 정기적인 폴링이 Consul 로그에 표시됩니다.
2017/03/27 21:38:12 [DEBUG] http: Request GET /v1/status/leader (59.344us) from=127.0.0.1:53768
2017/03/27 21:38:12 [DEBUG] http: Request GET /v1/status/peers (62.678us) from=127.0.0.1:53770
2017/03/27 21:38:12 [DEBUG] http: Request GET /v1/health/state/any (106.725us) from=127.0.0.1:53772
2017/03/27 21:38:12 [DEBUG] http: Request GET /v1/catalog/services (79.657us) from=127.0.0.1:53774
2017/03/27 21:38:12 [DEBUG] http: Request GET /v1/health/service/consul (153.917us) from=127.0.0.1:53776
2017/03/27 21:38:12 [DEBUG] http: Request GET /v1/coordinate/datacenters (71.778us) from=127.0.0.1:53778
2017/03/27 21:38:12 [DEBUG] http: Request GET /v1/coordinate/nodes (84.95us) from=127.0.0.1:53780
netstat
를 사용해 Consul 메트릭도 전송되고 있는지 확인합니다.
$ sudo netstat -nup | grep "127.0.0.1:8125.*ESTABLISHED"
udp 0 0 127.0.0.1:53874 127.0.0.1:8125 ESTABLISHED 23176/consul
Consul Agent가 DogStatsD에 보내는 메트릭에 대한 설명은 Consul의 Telemetry 문서를 참조하세요.
네트워크 지연 시간 메트릭 측정 방법은 Consul의 Network Coordinates 문서를 참조하세요
consul.new_leader:
Datadog Agent는 Consul 클러스터가 새 리더를 선출할 때 prev_consul_leader
, curr_consul_leader
, consul_datacenter
로 태그를 지정하여 이벤트를 보냅니다.
도움이 필요하신가요? Datadog 지원 팀에 문의하세요.
기타 유용한 문서, 링크 및 기사: