Skip to content
共绩算力文档中心

日志采集容器配置说明

为了满足平台用户发布任务时对日志持久化的需求,平台提供了一套低侵入、开箱即用的日志采集方案。

通过本指南,您可以轻松地将容器内产生的业务日志,实时投递至指定的第三方云日志服务(如阿里云 SLS、腾讯云 CLS、火山引擎等),而无需手动编写复杂的底层配置文件。

在创建或编辑多容器任务时,开启“该任务为多容器任务”开关。在下方的容器标签页区域,点击最右侧的 「添加日志容器」 按钮,系统将弹出“日志容器配置”窗口。

在弹出的配置窗口中,您只需按步骤完成以下三个模块的填写,最后点击底部的 「确认挂载」 即可。

平台支持将日志推送到多种主流云厂商。选中您的目标厂商后(需要您提前在云厂商日志服务中进行注册,表单下方提供了对应云厂商的官方配置参考文档链接),请填写对应的鉴权与路由参数:

  • 阿里云 SLS(示例)

    • 地址:填写 SLS_KAFKA_ENDPOINT,例如 cn-hangzhou.log.aliyuncs.com:10012。
    • Project 名称:您的 SLS 项目名。
    • LogStore 名称:接收日志的 Logstore 名称。
    • 具备 sls 写入权限的 AccessKeySecret:填写对应权限的密钥凭证(SLS_PASSWORD)。
  • 火山引擎 TLS / 腾讯云 CLS

    • 切换选项后,请根据界面上动态变化的表单,填入对应云厂商要求的主题 ID (Topic)、日志集 ID 等路由及鉴权参数。
  • 自定义配置

    • 如果您使用其他日志中心,可选择此项进行高度自定义的配置。

您需要告诉采集器去哪里读取业务日志文件。平台会自动在底层建立安全的临时共享卷,您无需手动配置复杂的挂载关系。

  • 配置方法:在输入框中填写需要采集的日志绝对路径,支持使用通配符(例如默认的 /logs/*.log)。
  • 注意:请务必确保您的核心业务容器(如 container-01)也已将日志落盘(写入文件)至上述填写的路径中。本方案暂不支持直接采集控制台的标准输出。

长时间运行的服务如果不清理日志,极易导致容器磁盘打满。平台为您提供了开箱即用的日志轮转能力。

  • 开启轮转托管:打开开关后,平台将为您“自动轮转并控制日志保留数量”(默认单文件上限 100MB,保留 5 个)。
  • 避坑指南:如果您的业务代码已经自带了日志按天或按大小切割的逻辑,请务必保持此开关处于“关闭”状态。同时开启业务轮转和平台轮转会导致严重的文件读取冲突,从而造成日志丢失。

三、 ⚠️ Job 批处理任务专属退出机制

Section titled “三、 ⚠️ Job 批处理任务专属退出机制”

如果您运行的是数据批处理、AI 离线训练等 Job 批处理类任务,请务必阅读本章节,这关乎您的任务能否正常结束。

由于日志采集器是一个常驻后台的进程,它永远不会主动停止。当您的主业务程序执行完毕退出后,如果没有特定的信号通知,日志容器将一直在后台挂起等待。这将导致整个任务的 Pod 无法变为已完成状态,不仅会持续占用计算资源,还会导致重试机制失效

为确保任务结束后能释放资源,平台已为您底层挂载了共享目录 /tasksite。请在业务代码运行结束时(或异常捕获逻辑中)执行以下命令触发退出机制:

在启动命令最后添加命令 touch /tasksite/tombstone 通知日志容器退出。

风险提示:若程序异常崩溃导致该命令未执行,可能会造成任务挂起或重试失败

Q:为什么配置了日志容器,但在云平台界面上的控制台日志里看不到输出?

A:当前方案会将日志落盘写入文件。写入指定目录文件的日志会被精准投递到您配置的云服务商(如阿里云 SLS)中。控制台只展示标准输出的内容。

Q:提交配置后,还能修改挂载关系吗?

A:点击“确认挂载”后,系统会在工作负载中自动生成一个专用的日志容器。对于弹性部署服务,如需修改,您可以随时点击该日志容器的标签页进行重新配置或移除。但是对于 job 批处理任务,将不可以更改配置。