Clemens Valiente
03/02/2026, 10:53 AMspec:
flinkConfiguration:
metrics.reporter.datadog.apikey: ${DATADOG_API_KEY}
[...]
- name: DATADOG_API_KEY
valueFrom:
secretKeyRef:
name: {{ .Values.flink.ddApiKey.secretName }}
key: ddApiConfigString
but I get this exception:
[] - Could not instantiate MetricReporter datadog. Reporting might not be exposed.
java.lang.IllegalArgumentException: API key: ${DATADOG_API_KEY} is invalidLee Wallen
03/02/2026, 8:38 PMapiVersion: v1
kind: Secret
metadata:
name: datadog-api
type: Opaque
stringData:
DATADOG_API_KEY: "<your-real-key>"
spec:
containers:
- name: flink-main-container
env:
- name: DATADOG_API_KEY
valueFrom:
secretKeyRef:
name: datadog-api
key: DATADOG_API_KEY
You could then use env.java.default-opts.jobmanager and env.java.default-opts.taskmanager (or env.java.opts.all) in the config yaml like this:
env.java.opts.all: "-Dmetrics.reporter.dghttp.apikey=${DATADOG_API_KEY}"Clemens Valiente
03/03/2026, 1:50 AMenv.java.opts.all wasn't working due to a malformed entry. so anything prefixed with a -D entry will also be considered for the config.yaml in Flink?Lee Wallen
03/03/2026, 5:01 PMspec:
flinkConfiguration:
jobmanager.memory.process.size: "2048m"
taskmanager.memory.process.size: "8192m"
env.java.opts.all: >
-Dservice.name=my-flink-service
-Denv=${ENVIRONMENT}
-Dfeature_x_enabled=trueClemens Valiente
03/10/2026, 7:12 AM