Graphite 데이터 소스 문제 해결

Graphite 데이터 소스 문제 해결 (Troubleshoot Graphite data source issues)

이 문서는 Graphite 데이터 소스를 사용할 때 겪을 수 있는 일반적인 문제의 해결책을 제공해요. 연결 문제, 쿼리 문제, 버전·기능 문제, 성능 문제, MetricTank 특유 문제를 다룹니다.

출처: 문서

본문

연결 문제

데이터 소스 테스트가 "Unable to connect"로 실패:

  • 데이터 소스 구성의 URL이 올바르고 Grafana 서버에서 접근 가능한지 확인해요.
  • Graphite 서버가 실행 중이고 연결을 받고 있는지 확인해요.
  • 방화벽 규칙이나 네트워크 정책이 Grafana와 Graphite 서버 간 트래픽을 허용하는지 확인해요.
  • TLS를 사용한다면 인증서가 유효하고 올바르게 구성됐는지 확인해요.

연결성을 테스트하려면 Grafana 서버에서 다음 명령을 실행해요:

curl -v <GRAPHITE_URL>/render

<GRAPHITE_URL>을 Graphite 서버 URL로 바꾸세요. 성공적인 연결은 Graphite 서버의 응답을 반환해요.

인증 오류 (401/403):

  • Basic Auth 사용자 이름과 비밀번호가 올바른지 확인해요.
  • Graphite 서버가 인증에 쿠키를 요구한다면 With Credentials 토글을 활성화해요.
  • TLS 클라이언트 인증서가 유효하고 서버가 기대하는 것과 일치하는지 확인해요.

자세한 인증 구성은 "Configure the Graphite data source" 문서를 참고하세요.

쿼리 문제

데이터 반환 안 됨:

  • Graphite 웹 인터페이스에서 직접 테스트해 메트릭 경로가 Graphite 서버에 존재하는지 확인해요.
  • Grafana의 시간 범위가 데이터 수집 시점과 일치하는지 확인해요.
  • 쿼리의 와일드카드가 기존 메트릭과 일치하는지 확인해요.
  • Graphite 버전에 맞는 쿼리 문법인지 확인해요.

HTML 콘텐츠가 있는 HTTP 500 오류: 1.6 이전 Graphite-web 버전은 쿼리 실패 시 전체 HTML 스택 트레이스와 함께 HTTP 500 오류를 반환해요. HTML 태그를 포함한 오류 메시지가 보이면:

  • 전체 오류 세부 정보는 Graphite 서버 로그를 확인해요.
  • 쿼리 문법이 유효한지 확인해요.
  • 요청한 시간 범위가 Graphite 서버의 능력을 초과하지 않는지 확인해요.
  • 쿼리의 모든 함수가 Graphite 버전에서 지원되는지 확인해요.

쿼리 편집기의 파서 오류:

  • 함수 호출에서 괄호 균형이 맞지 않는지 확인해요.
  • 함수 인수의 형식이 올바른지 확인해요.
  • 메트릭 경로에 지원되지 않는 문자가 없는지 확인해요.

쿼리 문법 도움말은 Graphite query editor 문서를 참고하세요.

버전 및 기능 문제

쿼리 편집기에 함수 없음:

  • 데이터 소스 구성에서 올바른 Graphite 버전이 선택됐는지 확인해요. 사용 가능한 함수는 구성된 버전에 따라 달라져요. 예를 들어 태그 기반 함수는 Graphite 1.1 이상이 필요해요.
  • 추가 함수가 있는 커스텀 Graphite 설치를 쓴다면 버전 설정이 서버와 일치하는지 확인해요.

태그 기반 쿼리가 동작하지 않음 (seriesByTag() 등 실패):

  • Graphite 서버가 1.1 이상 버전인지 확인해요.
  • 데이터 소스 구성의 Graphite 버전 설정이 실제 서버 버전과 일치하는지 확인해요.
  • Graphite 서버에서 태그가 올바르게 구성됐는지 확인해요.

성능 문제

쿼리 타임아웃:

  • 데이터 소스 구성에서 Timeout 설정을 늘려요.
  • 쿼리의 시간 범위를 줄여요.
  • 넓은 와일드카드 대신 더 구체적인 메트릭 경로를 사용해요.
  • 반환되는 데이터 양을 줄이려면 summarize() 또는 consolidateBy() 함수 사용을 고려해요.
  • Graphite 서버의 성능과 리소스 사용률을 확인해요.

쿼리 편집기의 느린 자동완성:

  • 이는 Graphite 서버의 메트릭 수가 많다는 신호인 경우가 많아요.
  • 검색 범위를 좁히려면 더 구체적인 경로 접두사를 사용해요.
  • Graphite 서버의 인덱스 성능을 확인해요.

MetricTank 특유 문제

롤업 표시기가 나타나지 않음:

  • 데이터 소스 구성에서 Graphite 백엔드 유형으로 Metrictank가 선택됐는지 확인해요.
  • Rollup indicator 토글이 활성화됐는지 확인해요.
  • 표시기는 실제로 데이터 집계가 발생할 때만 나타나요.

예기치 않은 데이터 집계:

  • MetricTank 인스턴스의 롤업 구성을 확인해요.
  • 시간 범위를 조정하거나 consolidateBy()를 사용해 집계 동작을 제어해요.
  • 데이터 처리 방식을 보려면 패널 인스펙터의 쿼리 처리 메타데이터를 검토해요.

추가 도움

문제 보고 시 다음 정보를 포함하세요:

  • Grafana 버전
  • Graphite 버전(예: 1.1.x)과 백엔드 유형(Default 또는 MetricTank)
  • 인증 방법(Basic Auth, TLS, 또는 없음)
  • 오류 메시지(민감 정보는 삭제)
  • 문제 재현 단계
  • 데이터 소스 설정, 타임아웃 값, Graphite 버전 설정 같은 관련 구성(비밀번호 및 자격 증명 삭제)
  • 샘플 쿼리(해당 시, 민감 데이터 삭제)

더 알아보기 (Learn more)