feat(opentelemetry): enhance logging attributes for Kubernetes integration

This commit is contained in:
Nicolas 2025-09-28 09:04:18 +08:00
parent f88be5581b
commit 38ae6e7b17

View File

@ -75,8 +75,20 @@ spec:
log_statements:
- context: log
statements:
- set(resource.attributes["application"], "authentication")
# Set Grafana queryable labels
- set(resource.attributes["service_name"], "authentication")
- set(resource.attributes["environment"], "{{ .Values.global.environment | default .Release.Namespace }}")
- set(resource.attributes["pod_name"], resource.attributes["k8s.pod.name"])
- set(resource.attributes["pod_ip"], resource.attributes["k8s.pod.ip"])
# Keep application for backward compatibility
- set(resource.attributes["application"], "authentication")
# Set additional kubernetes labels
- set(resource.attributes["kubernetes_node_name"], resource.attributes["k8s.node.name"])
- set(resource.attributes["kubernetes_pod_name"], resource.attributes["k8s.pod.name"])
- set(resource.attributes["kubernetes_pod_ip"], resource.attributes["k8s.pod.ip"])
- set(resource.attributes["kubernetes_deployment_name"], resource.attributes["k8s.deployment.name"])
- set(resource.attributes["kubernetes_namespace"], resource.attributes["k8s.namespace.name"])
# Parse and enrich log body
- set(resource.attributes["body_json"], ParseJSON(log.body))
- set(resource.attributes["body_json"]["kubernetes"]["pod"], resource.attributes["k8s.pod.name"])
- set(resource.attributes["body_json"]["kubernetes"]["namespace"], resource.attributes["k8s.namespace.name"])