You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将AKS容器日志文件采集至Azure日志空间?

解决方案:将容器日志文件收集至Azure日志空间

完全可以通过挂载日志文件的方式实现需求,以下是两种常用的落地方法:

方法1:Sidecar容器转发日志到控制台

给目标业务容器搭配一个sidecar容器,通过共享存储卷挂载日志文件所在目录,让sidecar读取日志文件并输出到自身控制台,借助Azure Monitor默认的控制台日志采集能力,将日志同步到Azure日志空间。

示例Pod配置片段:

apiVersion: v1
kind: Pod
metadata:
  name: business-app
spec:
  containers:
  - name: main-service
    image: your-business-image
    volumeMounts:
    - name: log-storage
      mountPath: /app/logs  # 业务容器生成日志的目录
  - name: log-forwarder
    image: busybox
    command: ["sh", "-c", "tail -f /app/logs/core.log"]  # 持续读取日志并输出到控制台
    volumeMounts:
    - name: log-storage
      mountPath: /app/logs
  volumes:
  - name: log-storage
    emptyDir: {}  # 临时存储,需持久化可替换为Azure Disk等存储类

方法2:配置Azure Monitor直接读取日志文件

修改Azure Monitor容器洞察的配置ConfigMap,添加日志文件路径规则,让日志采集代理直接读取指定路径的日志文件,发送到Azure日志空间。

示例ConfigMap修改片段:

apiVersion: v1
kind: ConfigMap
metadata:
  name: container-azm-ms-agentconfig
  namespace: kube-system
data:
  schema-version: '1.0'
  config-version: '1'
  log-data-collection-settings: |-
    [log_collection_settings]
    [log_collection_settings.file_logs]
    enabled = true
    [[log_collection_settings.file_logs.collect]]
    file_path = "/var/log/containers/*-app-logs-*.log"  # 匹配挂载到节点的日志文件路径
    log_type = "custom_app_log"  # 自定义日志类型,方便后续查询

注意事项

  • 确保日志文件目录的访问权限配置正确,采集代理或sidecar容器能正常读取文件
  • 使用持久化存储时,需验证存储卷的挂载路径与配置中的文件路径一致
  • 在Azure Monitor查询时,自定义日志需对应配置的log_type,或在ContainerLog表中查看

内容的提问来源于stack exchange,提问作者user286974

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 16:03:11