어쩌다 StatsD exporter -> Prometheus 루트가 아니라 Telegraf -> InfluxDB 루트를 타게된 썰😅
statsd:
enabled: true
...
config:
metrics:
statsd_on: '{{ ternary "True" "False" .Values.statsd.enabled }}'
statsd_port: 9125 # StatsD 서버와 통신할 포트
statsd_prefix: 'airflow' # StatsD로 전송되는 메트릭의 접두사
statsd_host: 'telegraf' # StatsD 데이터를 수신할 서버의 호스트 이름
tcpdump -i any udp port 9125 -A
등의 네트워크 조회 명령어를 통해 실제로 어떤 메트릭을 내보내고 확인할 수 있습니다.config:
...
outputs:
- influxdb_v2:
urls:
- "${urls}"
organization: "${organization}"
bucket: "${bucket}"
token: "${token}"
inputs:
- statsd:
service_address: ":9125"
metric_separator: "_"
data_format: "influx"
templates:
- "*.dag.*.*.duration measurement.measurement.dag_id.task_id.measurement"
- "*.dagrun.dependency-check.* measurement.measurement.measurement.dag_id"
- "*.dag_processing.last_duration.* measurement.measurement.measurement.dag_id"
- "*.dagrun.duration.*.* measurement.measurement.measurement.status.dag_id"
- "*.dagrun.schedule_delay.* measurement.measurement.measurement.dag_id"
- "*.dag_processing.last_runtime.* measurement.measurement.measurement.dag_id"
- "*.dag.loading-duration.* measurement.measurement.measurement.dag_id"
- "*.operator.*.* measurement.measurement.status.operator"
- kubernetes:
url: "https://$K8S_NODE_IP:10250"
bearer_token: "/var/run/secrets/kubernetes.io/serviceaccount/token"
tls_ca: "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
insecure_skip_verify: true