이 참조 문서는 뉴렐릭 OpenTelemetry 배포판(NRDOT) Collector를 사용한 PostgreSQL 모니터링을 위한 포괄적인 YAML 설정을 제공합니다. 이러한 전체 기능 설정에는 자체 호스팅 및 Amazon RDS 배포 전반의 운영 환경을 위한 전체 PostgreSQL 메트릭 카탈로그가 포함됩니다.
중요
빠르게 시작하고 싶으십니까? 이는 프로덕션 환경을 위한 고급 설정입니다. PostgreSQL 모니터링을 처음 설정하는 경우, 설정 가이드의 표준 설정으로 시작하여 기본 기능을 확인한 후 이 포괄적인 설정으로 돌아오는 것을 권장합니다.
자체 호스팅
이 설정은 호스트 수준 메트릭을 추가하지 않고 nrpostgresql 수신기가 생성할 수 있는 전체 PostgreSQL 메트릭 카탈로그를 활성화합니다.
postgresql-config.yaml
1receivers:2nrpostgresql:3 endpoint: "postgresql.example.com:5432"4 username: "newrelic"5 password: "YOUR_PASSWORD"6databases:7 - YOUR_DATABASE_NAME8 collection_interval: 15s9events:10 db.server.top_query:11 enabled: true12 db.server.query_sample:13 enabled: true14 db.server.query_plan:15 enabled: true16top_query_collection:17 max_rows_per_query: 100018 top_n_query: 20019 collection_interval: 60s20 allowed_comment_keys: [nr_service_guid]21query_sample_collection:22 max_rows_per_query: 100023 allowed_comment_keys: [nr_service_guid]24
25resource_attributes:26 db.system.version:27 enabled: true28 # All metrics disabled by default in the receiver, enabled here for full dashboard coverage29metrics:30 postgresql.blks_hit:31 enabled: true32 postgresql.blks_read:33 enabled: true34 postgresql.database.locks:35 enabled: true36 postgresql.deadlocks:37 enabled: true38 postgresql.function.calls:39 enabled: true40 postgresql.query.conflicts:41 enabled: true42 postgresql.query.execution.time:43 enabled: true44 postgresql.sequential_scans:45 enabled: true46 postgresql.temp.io:47 enabled: true48 postgresql.temp_files:49 enabled: true50 postgresql.tup_deleted:51 enabled: true52 postgresql.tup_fetched:53 enabled: true54 postgresql.tup_inserted:55 enabled: true56 postgresql.tup_returned:57 enabled: true58 postgresql.tup_updated:59 enabled: true60 postgresql.vector.insert.duration:61 enabled: true62 postgresql.vector.insert.rows:63 enabled: true64 postgresql.vector.search.calls:65 enabled: true66 postgresql.vector.search.duration:67 enabled: true68 postgresql.vector.search.rows_returned:69 enabled: true70 postgresql.wal.delay:71 enabled: true72
73processors:74batch:75 batch/metrics:76 send_batch_size: 819277 send_batch_max_size: 819278 timeout: 10s79
80exporters:81 otlp/newrelic:82 endpoint: "https://otlp.nr-data.net:4318"83headers:84 api-key: "YOUR_LICENSE_KEY"85 compression: gzip86sending_queue:87 enabled: true88 sizer: bytes89 queue_size: 100_000_00090 num_consumers: 1091 batch:92 sizer: bytes93 max_size: 1_000_00094 min_size: 095 flush_timeout: 5s96retry_on_failure:97 enabled: true98 initial_interval: 5s99 max_interval: 30s100 max_elapsed_time: 300s101
102service:103telemetry:104metrics:105 level: none106pipelines:107metrics:108 receivers: [nrpostgresql]109 processors: [batch/metrics]110 exporters: [otlp/newrelic]111logs:112 receivers: [nrpostgresql]113 processors: [batch]114 exporters: [otlp/newrelic]중요
NRDOT Collector를 통한 PostgreSQL 통합은 표준 데이터 수집 가격 정책을 따릅니다. 전체 기능 설정은 표준 설정보다 더 많은 데이터를 수집하므로 전체 청구 금액이 증가할 수 있음에 유의하시기 바랍니다.
RDS
이 설정은 호스트 수준 메트릭을 추가하지 않고 nrpostgresql 수신기가 생성할 수 있는 전체 PostgreSQL 메트릭 카탈로그를 활성화합니다.
postgresql-config.yaml
1receivers:2nrpostgresql:3 endpoint: "mydb-instance.xxxxxxxxxxxx.us-east-1.rds.amazonaws.com:5432"4 username: "newrelic"5 password: "YOUR_PASSWORD"6databases:7 - YOUR_DATABASE_NAME8 # top_query/query_sample scan pg_stat_statements/pg_stat_activity cluster-wide9 # regardless of the databases list above; on RDS/Aurora, exclude reserved10 # databases the monitoring user can never reach.11exclude_databases:12 - rdsadmin13 collection_interval: 15s14events:15 db.server.top_query:16 enabled: true17 db.server.query_sample:18 enabled: true19 db.server.query_plan:20 enabled: true21top_query_collection:22 max_rows_per_query: 100023 top_n_query: 20024 collection_interval: 60s25 allowed_comment_keys: [nr_service_guid]26query_sample_collection:27 max_rows_per_query: 100028 allowed_comment_keys: [nr_service_guid]29
30resource_attributes:31 db.system.version:32 enabled: true33 # All metrics disabled by default in the receiver, enabled here for full dashboard coverage34metrics:35 postgresql.blks_hit:36 enabled: true37 postgresql.blks_read:38 enabled: true39 postgresql.database.locks:40 enabled: true41 postgresql.deadlocks:42 enabled: true43 postgresql.function.calls:44 enabled: true45 postgresql.query.conflicts:46 enabled: true47 postgresql.query.execution.time:48 enabled: true49 postgresql.sequential_scans:50 enabled: true51 postgresql.temp.io:52 enabled: true53 postgresql.temp_files:54 enabled: true55 postgresql.tup_deleted:56 enabled: true57 postgresql.tup_fetched:58 enabled: true59 postgresql.tup_inserted:60 enabled: true61 postgresql.tup_returned:62 enabled: true63 postgresql.tup_updated:64 enabled: true65 postgresql.vector.insert.duration:66 enabled: true67 postgresql.vector.insert.rows:68 enabled: true69 postgresql.vector.search.calls:70 enabled: true71 postgresql.vector.search.duration:72 enabled: true73 postgresql.vector.search.rows_returned:74 enabled: true75 postgresql.wal.delay:76 enabled: true77
78processors:79batch:80 batch/metrics:81 send_batch_size: 819282 send_batch_max_size: 819283 timeout: 10s84
85exporters:86 otlp/newrelic:87 endpoint: "https://otlp.nr-data.net:4318"88headers:89 api-key: "YOUR_LICENSE_KEY"90 compression: gzip91sending_queue:92 enabled: true93 sizer: bytes94 queue_size: 100_000_00095 num_consumers: 1096 batch:97 sizer: bytes98 max_size: 1_000_00099 min_size: 0100 flush_timeout: 5s101retry_on_failure:102 enabled: true103 initial_interval: 5s104 max_interval: 30s105 max_elapsed_time: 300s106
107service:108telemetry:109metrics:110 level: none111pipelines:112metrics:113 receivers: [nrpostgresql]114 processors: [batch/metrics]115 exporters: [otlp/newrelic]116logs:117 receivers: [nrpostgresql]118 processors: [batch]119 exporters: [otlp/newrelic]중요
NRDOT Collector를 통한 PostgreSQL 통합은 표준 데이터 수집 가격 정책을 따릅니다. 전체 기능 설정은 표준 설정보다 더 많은 데이터를 수집하므로 전체 청구 금액이 증가할 수 있음에 유의하시기 바랍니다.