배트맨 토토 팀은 기꺼이 발표합니다배트맨 토토-오픈 소스 (Apache 2.0) 쿼리 성능 통계에 중점을 둔 Prometheus의 Postgres Expler.
배트맨 토토에서는 서비스 중단의 근본 원인을 감지하고 사용자에게 가능한 수정 목록을 제공하는 제품을 사용합니다..
처음에, 우리는 기존 오픈 소스 Prometheus 수출 업체가 수집 한 메트릭을 사용하여Postgres_Exporter(Github의 1.7K 별). 불행히도, 우리는 그것이 수집하는 메트릭이 다음과 같은 가장 일반적인 성능 문제를 식별하는 데 쓸모가 없다는 것을 깨달았습니다.
제안 된 변경 사항postgres_exporter너무 커서 다른 수출국을 건설하기로 결정했습니다.
포괄적 인 쿼리 메트릭
에이전트가 통계를 집계합니다pg_stat_statementsandpg_stat_activity완성 된 쿼리뿐만 아니라 여전히 실행중인 쿼리를 고려하려면
잠금 모니터링
활성 자물쇠 수를 수집하기에는 충분하지 않습니다.pg_locks. DBA가 실제로 알고 싶은 것은 다른 쿼리를 차단하는 쿼리입니다. 수집 된 메트릭은 그것에 대한 답을 제공 할 수 있습니다.
쿼리 정규화 및 난독 화
Postgres가하는 쿼리 정규화 외에도 에이전트는 모든 쿼리를 난독 화하여 민감하지 않도록합니다. 데이터는 메트릭 레이블에 들어갑니다.