更新时间:2024-08-19 GMT+08:00

ICAgent限制

本文介绍日志采集器ICAgent的限制。

表1 ICAgent文件采集限制

限制项

说明

备注

文件编码

仅支持UTF8,其他编码可能会产生乱码。

不支持采集其他类型日志文件,例如:二进制文件。

不涉及。

日志文件大小

无限制。

不涉及。

日志文件轮转

ICAgent目前支持配置固定日志文件名或者模糊匹配文件名,用户需要自己处理日志文件轮转。

不涉及。

日志采集路径

Linux

  • 采集路径支持递归路径,**表示递归5层目录。示例:/var/logs/**/a.log。
  • 采集路径支持模糊匹配,匹配目录或文件名中的任何字符。示例:/var/logs/*/a.log、/var/logs/service/a*.log。
  • 采集路径如果配置的是目录,示例:/var/logs/,则只采集目录下后缀为“.log”、“.trace”和“.out”的文件;如果配置的是文件名,则直接采集对应文件,只支持文本类型的文件。
  • 采集路径不能重复配置,即同一主机下的同一路径,即使跨日志组和日志流,也只能配置一次。

Windows

  • Windows环境日志采集路径支持递归路径,**表示递归5层目录。配置样例:C:\var\service\**\a.log。
  • Windows环境日志采集路径支持模糊匹配,匹配目录或文件名中的任何字符。配置样例:C:\var\service\*\a.log、C:\var\service\a*.log。
  • 采集路径不能重复配置,即同一主机下的同一路径,即使跨日志组和日志流,也只能配置一次。
  • windows事件日志采集不能重复配置,即同一主机下,即使跨日志组和日志流,也只能配置一次。

不涉及。

软链接

不支持软链接。

不涉及。

单条日志大小

每条日志最大500KB,超出限制部分ICAgent将截断后丢弃。

不涉及。

正则表达式

正则表达式类型支持Perl兼容正则表达式。

不涉及。

同一文件对应多个采集配置

同一个文件只能上报到一个日志组、日志流。如果配置一个文件采集到多个日志流,只会有一个配置生效。

不涉及。

文件打开行为

读取时打开,读取完后关闭。

不涉及。

首次日志采集行为

全量采集,从头开始。

不涉及。

表2 ICAgent性能规格

限制项

说明

备注

日志采集速率

原始日志单节点最大采集速率50MB/S。

超过限制尽可能提供服务,不保证服务质量。

监控目录数

目录递归深度最多5层,最大不超过1000个文件。

不涉及。

监控文件数

容器场景下:

  • 每个通过卷挂载日志的路径下,ICAgent最多采集20个日志文件。
  • 每个ICAgent最多采集1000个容器标准输出日志文件,容器标准输出日志只支持json-file类型。

虚机场景下:

  • 最大1000个文件。

不涉及。

默认资源限制

CPU

  • 对CPU资源的消耗最大不超过2核。

内存

  • 对内存的消耗不超过min{4G,节点物理内存/2},超过时将启动重启保护(min{4G,节点物理内存/2}表示取“节点物理内存的一半”和“4G”中的较小值)。

不涉及。

资源超限处理策略

强制重启,若期间日志轮转,可能会丢失或重复。

不涉及。

Agent安装、升级或卸载

无限制。

不涉及。

表3 ICAgent其他限制

限制项

说明

备注

配置更新

配置更新生效的延时约1-3分钟。

不涉及。

配置动态加载

支持console的配置动态下发,且其中某一配置更新不影响其他采集。

不涉及。

配置数

无限制。

不涉及。

多租户隔离

默认隔离。

不涉及。

日志采集延迟

正常情况下从日志写入磁盘到采集日志延迟<2秒(阻塞状态下除外)。

不涉及。

日志上传策略

检测到文件变更,会立即读取上传,单次可以上报1条或者多条日志。

不涉及。

网络错误处理

在出现网络异常时会主动重试,间隔5秒。

不涉及。

资源配额超限处理

当日志量太大,分配给ICAgent的资源无法满足日志上报的要求时,ICAgent尽量上报,失败会重试,持续资源不足日志采集会积压。

不涉及。

超时最大尝试时间

周期性重试。

不涉及。

状态自检

通过心跳检测采集器状态是否正常。

不涉及。

Checkpoint超时时间

12小时无更新,则自动删除Checkpoint。

不涉及。

Checkpoint保存策略

上报成功则更新checkpoint的内容。

不涉及。

Checkpoint保存位置

默认保存路径为/var/share/oss/manager/ICProbeAgent/internal/TRACE。

不涉及。

日志丢失/日志重复

采集器使用多种机制保证日志采集的可靠性,尽可能保证数据不丢失,但在如下场景可能导致日志丢失或日志重复。

  • 日志文件未使用CCE提供的logPolicy轮转策略。
  • 日志文件轮转速度过快,如1秒轮转一次。
  • 系统安全设置或syslog自身原因导致无法转发日志。
  • 容器运行时间过短,例如小于30s。
  • 单节点总日志产生速度过快,超过了单节点网络发送带宽或日志采集速度,建议单节点总日志产生速度<50MB/s。

当采集器被重启后,重启时间点附近可能会产生一定的数据重复。

不涉及。

表4 ICAgent支持访问的IP地址

组件/服务

IP地址

说明

openstack

http://169.254.169.254/openstack/latest/meta_data.json

获取节点元数据,节点名称和节点id。

http://169.254.169.254/openstack/latest/securitykey

委托方式获取临时ak/sk和securitytoken。

http://169.254.169.254/latest/meta-data/public-ipv4

获取节点绑定的弹性IP地址。

CCE

http://127.0.0.1:4194/api/v2.0/ps

cadvisor接口获取进程信息。

http://127.0.0.1:4194/api/v1.2/docker

cadvisor接口获取容器全量指标。

http://nodeip:10255/pods

k8s接口获取pod信息。

表5 ICAgent支持访问的端口号

端口号

说明

#icmgr-service 
{podlb}:30200

ICAgent注册。

icmgr-controller
{podlb}:30201

ICAgent状态配置。

#als-access 
{podlb}:8102

日志上报。

#ams-access 
{podlb}:8149

上报监控指标。

#ats-access apm
{podlb}:8923

上报数据到APM。