容器日志采集
容器日志采集
1.1. 前提条件
在容器云使用日志采集服务,需要确认容器集群所在的区域已开通日志服务,日志服务开通操作可参考 服务开通 ;
在容器云中使用日志采集服务单独计费,计费说明参考 计费说明 。
2. 管理日志采集规则
2.1. 创建日志采集规则
登录容器云服务控制台,若默认进入的集群非目标集群,可在顶部的导航栏处切换进入集群;
在【集群概况】->【日志采集】页面,点击【管理日志采集】;
在【采集规则管理】页面,点击【创建】;
在【创建采集规则】页面,完成以下参数设置:
- 采集配置:
- 规则名称:自定义设置日志收集规则的名称;
- 日志主题:不支持设置,系统自动创建日志主题;
- 采集策略:支持选择全量或增量;
- 全量:采集文件时,从文件的开头开始读;
- 增量:采集文件时,只采集文件新增的内容;
- 类型:
- 容器标准输出:采集容器内任意服务下的容器日志,仅支持stderr和stdout日志;
- 容器文件路径:采集集群内指定容器内的文件日志;
- 日志源:
- 容器标准输入日志,日志源支持所有容器、指定工作负载、Pod Labels三种类型;
- 容器文件路径日志,日志源支持指定工作负载、指定Pod Labels两种类型。采集文件路径填文件绝对路径,支持通配符;
- 日志解析方式
- 提取模式:
- 单行全文:以回车作为一条日志的结束标记,每条日志将被解析为键值为message的一行完全字符串;
- 多行全文:提取以 message 为键值的多行日志数据;
- 日志切分:使用正则的方式切分日志,从原始日志中提取字段。如:通过正则从nginx访问日志中提取 ip、url、time 等信息;
- 提取模式:
完成以上参数设置后,点击【确定】完成日志采集规则创建。
说明:通过容器云创建的日志规则默认日志保留策略为3天,若需要修改,可通过【采集规则管理】列表页面的主题ID跳转至日志服务进行修改。
3. 更新日志采集规则
登录容器云服务控制台,若默认进入的集群非目标集群,可在顶部的导航栏出切换进入集群;
在【集群概况】->【日志采集】页面,点击【管理日志采集】;
点击列表中目标规则所在列右侧的【编辑】按钮;
根据需求完成参数修改。
4. 查看日志
登录容器云服务控制台,若默认进入的集群非目标集群,可在顶部的导航栏出切换进入集群;
在【集群概况】->【日志采集】页面,点击【管理日志采集】;
点击列表中目标规则所在列右侧的【日志检索】按钮,登录Kibana;
若【日志检索】按钮置灰,说明该区域的日志服务未开通公网访问,可至 日志服务 进行公网访问开通,或使用内网地址登录Kibana;
登录Kibana后根据需要进行日志检索。
容器日志接入字段说明:
字段 | 说明 |
---|---|
@timestamp | 日志采集时间 |
csk_containername | 容器名称 |
csk_labels.{label name} | Pod标签(例如Pod带有2个label:app=nginx,env=prod,则上传的日志附带两个metedata:csk_label.app,csk_labels.env) |
csk_container_image | 容器镜像信息 |
csk_container_uid | 容器uid |
csk_logconfig | 日志采集规则名称 |
csk_logtype | 采集类型,stdout:标准输出,file:文件内采集 |
csk_namespace | Pod对应的命名空间 |
csk_pod_ip | Pod的ip信息 |
csk_pod_uid | Pod的uid |
csk_podname | Pod名称 |
csk_restype | 工作负载类型,ReplicaSet:无状态,Statefulset:有状态,Job:任务 |
csk_sn | 集群sn |
message | 日志原始消息 |
user_datas.{colum name} | 日志切分后,生成的字段放到user_datas下 |