In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.
New Relic PostgreSQL 온-호스트 통합 은 PostgreSQL 인스턴스에서 New Relic 플랫폼으로 인벤토리 메트릭을 수신 및 전송합니다. 여기서 핵심 성능 메트릭을 집계하고 시각화할 수 있습니다. 인스턴스, 데이터베이스 및 클러스터의 데이터는 문제의 원인을 찾는 데 도움이 됩니다.
인프라 에이전트를 다시 시작하기 전에 필수 기능에 대한 READ 권한이 있는 사용자를 만드 십시오.
자동 Postgresql 구문 분석 및 전달을 활성화하려면 postgresql-log.yml.example 파일을 복사하거나 이름을 postgresql-log.yml 로 바꿉니다.에이전트를 다시 시작할 필요는 없지만 기본 위치를 사용하지 않는 경우 postgresql 로그 파일의 위치로 YML 파일을 업데이트해야 할 수 있습니다.
호스트에 설치된 경우 통합의 YAML 구성 파일 postgresql-config.yml 에서 구성을 편집합니다. 통합의 YAML 형식 구성은 필수 로그인 자격 증명을 배치하고 데이터 수집 방법을 구성할 수 있는 곳입니다. 변경하는 옵션은 설정 및 기본 설정에 따라 다릅니다. 구성 파일에는 interval , timeout , inventory_source 와 같은 모든 통합에 적용할 수 있는 공통 설정이 있습니다. 이러한 공통 설정에 대한 모든 내용을 보려면 구성 형식 문서를 참조하십시오.
PostgreSQL과 관련된 특정 설정은 구성 파일의 env 섹션을 사용하여 정의됩니다. 이러한 설정은 PostgreSQL 인스턴스에 대한 연결과 기타 보안 설정 및 기능을 제어합니다. 유효한 설정 목록은 이 문서의 다음 섹션에 설명되어 있습니다.
PostgreSQL 사용자 및 권한
다음에 대한 SELECT 권한이 있는 사용자 생성:
pg_stat_database
pg_stat_database_conflicts
pg_stat_bgwriter
PostgreSQL 통합을 위한 사용자를 생성하려면:
CREATEUSER new_relic WITH PASSWORD MY_PASSWORD;
GRANTSELECTON pg_stat_database TO new_relic;
GRANTSELECTON pg_stat_database_conflicts TO new_relic;
GRANTSELECTON pg_stat_bgwriter TO new_relic;
이렇게 하면 통합에서 PostgreSQL 인스턴스와 관련된 전역 메트릭을 수집할 수 있습니다.
테이블 및 인덱스 관련 측정항목(예: 테이블 크기 및 인덱스 크기)도 가져오려면 통합에서 사용하는 PostgreSQL 역할( new_relic )에도 측정항목을 수집할 테이블에 대한 SELECT 권한이 필요합니다. 에서. 예를 들어, 통합이 데이터베이스(공개 schema 에 있음)에 있는 모든 테이블 및 인덱스에서 메트릭을 수집할 수 있도록 하려면 다음을 사용합니다.
GRANTSELECTONALLTABLESINSCHEMApublicTO new_relic;
PostgreSQL 사용자 지정 쿼리 구성 파일에서도 쿼리 수준 측정항목을 얻으려면 통합에서 사용하는 PostgreSQL 역할( new_relic )을 ( pg_read_all_stats ) 역할에 추가해야 합니다. 이는 사용자가 ( pg_stat_statements ) 확장을 활용하기 때문입니다.
GRANT pg_read_all_stats TO new_relic;
pg_stat_statements 확장을 활성화하려면 쿼리 프롬프트에서 수동으로 생성해야 할 수 있습니다.
CREATE EXTENSION pg_stat_statements;
postgresql-config.yml 샘플 파일
JSON 배열: 해당 데이터베이스에 속한 테이블 및 인덱스를 포함하여 모든 관련 메트릭을 수집할 데이터베이스 이름 목록으로 해석됩니다.
예를 들어:
collection_list:'["postgres"]'
JSON 개체: 개체에 지정된 엔터티만 수집되며 자동 검색은 수행되지 않습니다. JSON 레벨은 database name -> schema name -> table name -> index name 입니다.
Azure/AWS SSL 사용 옵션: Azure Flexible 관리형 데이터베이스 제품을 연결하려면 SSL이 필요합니다. MySQL 버전이 5.7 이상이고 Aurora 파라미터 그룹에서 require_secure_transport가 ON으로 설정된 경우 AWS RDS/Aurora에 SSL이 필요할 수 있습니다. SSL 요구 사항을 수용하려면 postgresql-config.yml의 이러한 설정을 true 으로 설정해야 합니다.
예를 들어:
ENABLE_SSL:"true"
TRUST_SERVER_CERTIFICATE:"true"
Azure/AWS SSL 비활성화 옵션: 위의 설정 외에도 다음 SSL 설정을 주석 처리하거나 구성에서 제거해야 합니다. 이는 위의 서버 인증서를 신뢰하는 구성 때문입니다.