콘텐츠로 이동

Traefik

Traefik 메트릭 정보 수집

설치 설정

사전 조건

  • DataKit 설치

Traefik 설정

메트릭

Traefik은 기본적으로 Prometheus 프로토콜 방식으로 메트릭을 노출하며, Traefik 설정 파일에 다음 구성을 추가합니다.

[entryPoints]
  [entryPoints.metrics]
    address = ":9100"

[metrics]
  [metrics.prometheus]
    entryPoint = "metrics"
    buckets = [0.1, 0.3, 1.2, 5.0]

트레이스

Traefik은 Zipkin 프로토콜 방식으로 트레이스 정보를 보고할 수 있으며, Traefik 설정 파일에 다음 구성을 추가합니다.

[tracing]
  serviceName= "traefik-service"
  [tracing.zipkin]
    httpEndpoint = "http://<datakit-ip>:9529/api/v2/spans"
    sameSpan = true
    id128Bit = true
    sampleRate = 1.0

로그

로그 기능을 활성화한 뒤, Traefik 설정 파일에 다음 구성을 추가합니다. level은 필요에 따라 조정합니다.

[log]
  level = "DEBUG"
  format = "json"
  filePath = "/var/log/traefik.log"

DataKit 설정

메트릭

Traefik 메트릭을 수집하려면 DataKit 설치 디렉터리conf.d/samples로 이동한 뒤 다음 명령을 실행합니다.

cp prom.conf.sample traefik.conf

traefik.conf 내용을 조정하며, 주로 urls를 조정합니다. 예시는 다음과 같습니다.

[[inputs.prom]]
  ## Exporter URLs.
  urls = ["http://127.0.0.1:9100/metrics"]
  measurement_name = "Traefik"

기타 설정은 필요에 따라 조정, 조정 항목 설명:

  • urls: prometheus 메트릭 주소로, 여기에는 해당 컴포넌트가 노출하는 메트릭 URL을 입력합니다.
  • source: 수집기 별칭이며, 구분해서 사용하는 것을 권장합니다.
  • interval: 수집 주기

트레이스

DataKit 수집기로 Traefik의 트레이스 데이터를 수집하려면 DataKit 설치 디렉터리conf.d/zipkin으로 이동한 뒤 다음 명령을 실행합니다.

cp zipkin.conf.sample zipkin.conf

내용은 조정할 필요가 없습니다.

로그

Traefik 로그를 수집하려면 DataKit 설치 디렉터리conf.d/log로 이동한 뒤 다음 명령을 실행합니다.

cp log.conf.sample traefik.conf

traefik.conflogfiles 내용을 다음과 같이 조정합니다.

[[inputs.logging]]
  ## Required
  ## File names or a pattern to tail.
  logfiles = [
    "/var/log/traefik.log",
  ]

DataKit 재시작

조정이 끝나면 DataKit을 재시작합니다.

메트릭

메트릭 세트 Traefik

메트릭 설명 단위
traefik_config_last_reload_failure 마지막 설정 재로드 실패 시각의 타임스탬프 s
traefik_config_last_reload_success 마지막 설정 재로드 성공 시각의 타임스탬프 s
traefik_config_reloads_failure_total 설정 재로드 실패 총 횟수 count
traefik_config_reloads_total 설정 재로드 총 횟수 count
traefik_entrypoint_open_connections 현재 특정 entrypoint에서 열린 연결 수 count
traefik_entrypoint_request_duration_seconds_bucket 요청 처리 시간의 히스토그램 버킷 s
traefik_entrypoint_request_duration_seconds_count 요청 처리 시간의 히스토그램 카운트 count
traefik_entrypoint_request_duration_seconds_sum 요청 처리 시간의 합계 s
traefik_entrypoint_requests_bytes_total 처리된 요청의 총 바이트 수 byte
traefik_entrypoint_requests_total 처리된 요청 수 count
traefik_entrypoint_responses_bytes_total 처리된 응답의 총 바이트 수 count
traefik_router_open_connections 현재 특정 router에서 열린 연결 수 count
traefik_router_request_duration_seconds_bucket 요청 처리 시간의 히스토그램 버킷 s
traefik_router_request_duration_seconds_count 요청 처리 시간의 히스토그램 카운트 count
traefik_router_request_duration_seconds_sum 요청 처리 시간의 합계 s
traefik_router_requests_bytes_total 처리된 요청의 총 바이트 수 byte
traefik_router_requests_total 처리된 요청 수 count
traefik_router_responses_bytes_total 처리된 응답의 총 바이트 수 byte
traefik_service_open_connections 현재 특정 서비스에서 열린 연결 수 count
traefik_service_request_duration_seconds_bucket 요청 처리 시간의 히스토그램 버킷 s
traefik_service_request_duration_seconds_count 요청 처리 시간의 히스토그램 카운트 count
traefik_service_request_duration_seconds_sum 요청 처리 시간의 합계 s
traefik_service_requests_total 처리된 요청 수 count
traefik_service_responses_bytes_total 처리된 응답의 총 바이트 수 byte

문서 평가

이 페이지가 도움이 되었나요?