New Relic Prometheus OpenMetrics 통합은 Docker에 대한 Prometheus 메트릭을 New Relic으로 보내기 전에 변환하는 컨트롤을 제공합니다. 통합 구성 파일에서 변환을 정의하면 모든 엔드포인트에 대해 변환이 수행됩니다.
계층
nri-prometheus-latest.yaml
매니페스트 파일에는 예시 구성을 보여주는 nri-prometheus-cfg
구성 맵이 포함되어 있습니다. 변환은 다음 순서로 실행됩니다.
- 측정항목을 무시합니다.
- 속성을 추가하거나 포함합니다.
- 속성 이름을 바꿉니다.
- 속성을 복사합니다.
중요
모니터링 요구 사항과 관련이 없는 Prometheus OpenMetrics 통합 데이터를 보내지 마십시오. 대신 필터를 사용하여 특정 측정항목을 무시하거나 포함합니다. 이렇게 하면 New Relic에 보내는 데이터의 양과 유형을 제어하는 데 도움이 됩니다. 이는 또한 추가 청구 비용을 피하는 데 도움이 됩니다. 자세한 내용 은 Prometheus 메트릭 무시 또는 포함 을 참조하십시오.
구성 예
이 옵션을 사용하려면 스크레이퍼 컨테이너 구성 파일(현재 디렉토리의 config.yaml
)을 설정합니다.
docker run -d --restart unless-stopped \ --name nri-prometheus \ -e CLUSTER_NAME="YOUR_CLUSTER_NAME" -e LICENSE_KEY="YOUR_LICENSE_KEY" \ -v "$(pwd)/config.yaml:/config.yaml" \ newrelic/nri-prometheus:latest --configfile=/config.yaml
다음은 이러한 모든 예를 포함하는 구성 파일의 예입니다.
transformations: - description: "Transformation for MySQL exporter" add_attributes: - metric_prefix: "mysql_" attributes: owningTeam: "database-team" rename_attributes: - metric_prefix: "mysql_" attributes: table: "tableName" under_score: "CamelCase" copy_attributes: - from_metric: "mysql_version_info" to_metrics: - "mysql_" attributes: - "innodb_version" - "version" ignore_metrics: - prefixes: - "go_" - "process_"
속성 추가
이 변환을 통해 대상 메트릭 세트에 정적으로 정의된 속성 세트를 포함할 수 있습니다.
속성 이름 바꾸기
모든 Prometheus 끝점에 일관된 이름이 있는 것은 아닙니다. 필요에 따라 속성의 이름을 바꿀 수 있습니다.
속성 복사
일부 Prometheus 엔드포인트는 버전과 같은 서비스에 대한 메타데이터가 포함된 _info
또는 _static
측정항목을 제공합니다. 해당 서비스에 대한 모든 메트릭에 이 속성이 있으면 도움이 될 수 있습니다. 이 변환을 통해 소스 메트릭에서 대상 메트릭 세트로 속성을 복사할 수 있습니다.
중요
동일한 엔드포인트의 메트릭 간에만 속성을 복사할 수 있습니다.