日志文件路径匹配,在进行relabel_configs配置时需要结合容器中的实际地址进行标签设置。 -action:replacesource_labels:-__meta_kubernetes_pod_container_nametarget_label:container-replacement:/var/log/pods/$1/**/*.logseparator:_source_labels:-namespace-pod-__meta_kubernetes_pod_uidtarget_label:__path__ ...
在这个配置中: Promtail通过Kubernetes服务发现(kubernetes_sd_configs)自动找到集群中的Pod。 relabel_configs部分用于筛选那些具有promtail.io/scrape: "true"注解的Pod,并从Pod的日志路径读取日志。 pipeline_stages是一个可选配置,用于在发送日志到Loki前对其进行预处理,如正则表达式解析,这里举例的是针对常见的Java应...
Promtail配置主要就是配置抓取目标,Helm部署后默认抓取配置如下(取其中一个job): scrape_configs: - job_name: kubernetes-pods-name pipeline_stages: - docker: {} kubernetes_sd_configs: - role: pod relabel_configs: - source_labels: - __meta_kubernetes_pod_label_name target_label: __service__ -...
上述配置仅为基础示例,实际部署时需要根据自身Kubernetes集群的具体情况进行调整,比如存储配置、网络策略、安全设置等。 Promtail的配置文件promtail-config.yaml中定义了如何从Kubernetes Pods中抓取日志,可以根据实际需要调整relabel_configs和scrape_configs部分。 实际部署时,可能需要创建Service资源以方便内外部访问Loki服务。
kubernetes_sd_configs: # role 可以配置为以下类型发现 #pod#service#node#endpoints#ingress-role: pod # 重写标签 relabel_configs: #目标的源标签-source_labels:-__meta_kubernetes_pod_label_name #需要替换的标签 没有配置action 默认为replace (这里理解为用源标签的__meta_kubernetes_pod_label_name值替换...
relabel_configs: - source_labels: ["__journal__systemd_unit"] target_label: "unit" 上面这个给了 scrape_configs 就可以格式化的采集systemd文件,注意里面有个Path未配置,默认路径/var/log/journal, /run/log/journal promtail 也支持 syslog 等其他方式,可以按需使用,因为这里没有需求,就没有再测试了 ...
Promtail采用了类似Prometheus 的服务发现机制,使用 scrape_configs 进行配置, relabel_configs 可以对日志流进行细粒度的控制。 日志打标签 支持复杂的过滤规则,Promtail不仅支持通过服务发现来添加标签,而且可以根据日志内容进行标签的追加和替换。 将日志发送到Loki ...
kubernetes_sd_configs: - role: pod relabel_configs: - action: drop regex: .+ separator: '' source_labels: - __meta_kubernetes_pod_label_name - __meta_kubernetes_pod_label_app - action: keep regex: '[0-9a-z-.]+-[0-9a-f]{8,10}' ...
relabel_configs: - source_labels: ['__journal__systemd_unit'] target_label: 'unit' - job_name: system pipeline_stages: static_configs: - labels: job: varlogs host: yourhost __path__: /var/log/*.log - job_name: biz001 pipeline_stages: ...
relabel_configs: - source_labels: ['__meta_docker_container_name'] regex: '/(.*)' target_label: 'container' - job_name: container_scrape docker_sd_configs: - host: unix:///var/run/docker.sock refresh_interval: 5s filters: - name: name ...