86 lines
2.4 KiB
YAML
86 lines
2.4 KiB
YAML
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: promtail-config
|
|
namespace: monitoring
|
|
data:
|
|
promtail.yaml: |
|
|
server:
|
|
http_listen_port: 3101
|
|
grpc_listen_port: 0
|
|
|
|
positions:
|
|
filename: /run/promtail/positions.yaml
|
|
|
|
clients:
|
|
- url: http://loki.monitoring.svc.cluster.local:3100/loki/api/v1/push
|
|
tenant_id: talos-cluster
|
|
|
|
scrape_configs:
|
|
# Container logs from /var/log/pods
|
|
- job_name: kubernetes-pods
|
|
kubernetes_sd_configs:
|
|
- role: pod
|
|
pipeline_stages:
|
|
- cri: {}
|
|
relabel_configs:
|
|
# Only scrape pods with promtail.io/scrape annotation (or all by default)
|
|
- source_labels:
|
|
- __meta_kubernetes_pod_annotation_promtail_io_scrape
|
|
action: drop
|
|
regex: false
|
|
|
|
# Use pod name as instance
|
|
- source_labels:
|
|
- __meta_kubernetes_pod_name
|
|
target_label: instance
|
|
|
|
# Namespace label
|
|
- source_labels:
|
|
- __meta_kubernetes_namespace
|
|
target_label: namespace
|
|
|
|
# Pod name label
|
|
- source_labels:
|
|
- __meta_kubernetes_pod_name
|
|
target_label: pod
|
|
|
|
# Container name label
|
|
- source_labels:
|
|
- __meta_kubernetes_pod_container_name
|
|
target_label: container
|
|
|
|
# Node name label
|
|
- source_labels:
|
|
- __meta_kubernetes_pod_node_name
|
|
target_label: node
|
|
|
|
# App label (from pod labels)
|
|
- source_labels:
|
|
- __meta_kubernetes_pod_label_app
|
|
target_label: app
|
|
|
|
# App.kubernetes.io/name label
|
|
- source_labels:
|
|
- __meta_kubernetes_pod_label_app_kubernetes_io_name
|
|
target_label: app
|
|
regex: (.+)
|
|
action: replace
|
|
|
|
# Set path to container log file
|
|
- source_labels:
|
|
- __meta_kubernetes_pod_uid
|
|
- __meta_kubernetes_pod_container_name
|
|
target_label: __path__
|
|
separator: /
|
|
replacement: /var/log/pods/*$1/*.log
|
|
|
|
# Talos system logs (if mounted)
|
|
- job_name: talos-system
|
|
static_configs:
|
|
- targets:
|
|
- localhost
|
|
labels:
|
|
job: talos-system
|
|
__path__: /var/log/containers/*.log
|