文档中心>日志服务>采集相关>机器组常见问题

机器组常见问题

最近更新时间:2026-06-10 09:31:31

我的收藏

通过 IP 添加机器不生效

1. 检查 IP 对应机器是否已安装 LogListener,安装指引请参见 LogListener 安装和部署
2. 参考 如何使用采集自检工具,检查 LogListener 是否存在异常。
3. 检查机器组中添加的 IP 是否与 LogListener 识别到的 IP 一致。您可通过执行以下代码查看 LogListener 检测到的 IP。
Linux
Windows
LogListener 版本≥3.4.0:
//查看心跳及配置
systemctl check loglistener

//核对机器 IP
cd /opt/loglistener/ && grep -n 'agent_ip' conf/loglistener.yaml

LogListener 版本<3.4.0:
/etc/init.d/loglistenerd check
在返回数据中,通过查看 group ip,可确认 LogListener 识别到的 IP,如下图:


以安装路径 C:\\Program Files (x86)\\Tencent\\LogListener 为例,以管理员身份运行 Windows PowerShell,在安装路径下,执行以下命令检查 LogListener 心跳及配置:
.\\loglistener_work.exe check
在返回数据中, 通过查看 group_id,可确认 LogListener 识别到的 IP,如下图:



通过机器标识添加机器不生效

1. 检查目标机器是否已安装 LogListener,安装指引请参考 LogListener 安装和部署
2. 参考 如何使用采集自检工具,检查 LogListener 是否存在异常。
3. 检查 LogListener 的机器标识是否与机器组中配置的机器标识一致。您可参考以下步骤查看 LogListener 的机器标识。
Linux
Windows
LogListener 版本≥3.4.0:以安装路径 /opt/loglistener 为例, 您可在 /opt/loglistener/conf 路径下,运行以下命令查看并配置 LogListener 配置文件。
grep -n 'agent_labels' loglistener.yaml
无输出时,表示当前机器未配置机器标识,如下图:



其中 agent_labels 则为 LogListener 的机器标识,请确保该标识与机器组中配置的一致。
LogListener 版本<3.4.0:以安装路径 /usr/local/ 为例, 您可在 /usr/local/loglistener/etc 路径下,运行以下命令查看并配置 LogListener 配置文件。
vim loglistener.conf



其中 group_label 则为 LogListener 的机器标识,请确保该标识与机器组中配置的一致。
以安装路径 C:\\Program Files (x86)\\Tencent\\LogListener 为例,在安装目录下找到 LogListener 配置文件 loglistener.yaml,并用任意编辑器打开,如下图:



其中 agent_label 则为 LogListener 的机器标识,请确保该标识与机器组中配置的一致。

机器组机器状态异常问题

完成机器组配置后,在机器组管理页中,点击机器组名称可以查看与该机器组关联的机器心跳。状态正常说明机器心跳正常上报,若不为正常(如下图), 则说明该机器上的 LogListener 存在异常。



心跳异常

当状态为心跳异常时, 说明 LogListener 与日志服务后端连接中断,会导致 LogListener 无法正常上传日志。您可通过以下方式进一步排查连接中断的原因:
说明
仅适合于 LogListener 2.2.4 及以上版本,其他请参见 低版本 LogListener 异常状态排查

1. 使用 LogListener 快速诊断工具

LogListener 快速诊断工具可以快速诊断 LogListener 是否启动、心跳是否正常、配置拉取是否正常。在命令行下执行如下指令:
LogListener 版本≥3.4.0:
systemctl check loglistener
LogListener 版本<3.4.0:
/etc/init.d/loglistenerd check
如果 LogListener 运行正常,诊断工具返回的结果如图所示:

1574426236479


LogListener 进程异常:如果出现如下图所示 [ERROR] loglistener is not running 字样,表示 LogListener 没有启动。执行 systemctl start loglistener 启动,更多操作指令参见 LogListener 常用操作指令

img


LogListener 心跳异常:如果出现如下图所示 [ERROR] check loglistener heareat fail 字样,表示 LogListener 心跳异常。

img


引起 LogListener 心跳异常的原因有很多,最常见的情况有:
网络异常。执行以下命令检查网络环境是否连通,命令中的 “cls domain name” 为 CLS 服务域名,请参见 可用地域 文档填写。
telnet <cls domain name> 80
密钥信息错误。进入 LogListener 安装目录执行./bin/check,末尾输出内容如下表示密钥信息错误。

密钥缺少权限。进入 LogListener 安装目录执行./bin/check,末尾输出内容如下表示密钥缺少权限,需要按照 策略模板 配置上报权限。


2. 检查机器组 IP 配置

检查机器组所添加的 IP 地址是否为 LogListener 安装过程中获取的 IP 地址。
1. 进入到 LogListener 安装目录执行如下命令检查 LogListener 配置的 IP 地址。
LogListener 版本≥3.4.0
LogListener 版本<3.4.0
说明:
若无特殊指定,LogListener 安装目录通常为 /opt/loglistener
grep agent_ip conf/loglistener.yaml
说明:
若无特殊指定,LogListener 安装目录通常为/usr/local/loglistener
grep group_ip etc/loglistener.conf
2. 登录 日志服务控制台,单击机器组管理,查看机器组配置的 IP 地址,机器组所配置的 IP 地址必须与 LogListener 获取的 IP 地址完全一致。




目录超限

当状态为目录超限时,会导致 LogListener 超出部分的目录的日志无法被采集。您可通过以下方式进行修复:
1. 执行以下命令查看当前 LogListener 关联的采集配置。
//LogListener 版本≥3.4.0
systemctl check loglistener

//LogListener 版本<3.4.0
/etc/init.d/loglistenerd check

2. 以上返回结果中,logconfig 数组包含了当前 LogListener 的所有采集配置,您可针对每个采集配置,检查 wildpath 是否可能模糊命中大量无需采集的目录,例如/root/**/error.log 这类根目录的模糊路径。
3. 找到目标可优化的采集配置后, 从步骤1的返回数据中查看该采集配置关联的 topicid,并基于该 topicid 前往 CLS 控制台找到目标日志主题,优化或删除该采集配置。

文件超限

当状态为文件超限时,说明 LogListener 监听的采集文件数量已超过规格限制10000,会导致 LogListener 无法采集超出该限制的文件的日志。您可通过以下方式进行修复:
1. 执行以下命令查看当前 LogListener 关联的采集配置。
//LogListener 版本≥3.4.0
systemctl check loglistener

//LogListener 版本<3.4.0
/etc/init.d/loglistenerd check

2. 以上返回结果中,logconfig 数组包含了当前 LogListener 的所有采集配置,您可针对每个采集配置,检查 wildpath 是否可能模糊命中大量无需采集的文件,例如/root/**/*.log 这类从根目录模糊匹配任意名称的日志文件。
3. 找到目标可优化的采集配置后,从步骤1的返回数据中查看该采集配置关联的 topicid,并基于该 topicid 前往 CLS 控制台找到目标日志主题,优化或删除该采集配置。

CPU 超限

当状态为 CPU 超限时,说明 LogListener 所占用 CPU 已超过预先设置的阈值。您可通过以下方式进行排查与修复:

优化目标采集目录

1. 执行以下命令查看当前 LogListener 关联的采集配置。
//LogListener 版本≥3.4.0
systemctl check loglistener


//LogListener 版本<3.4.0
/etc/init.d/loglistenerd check

2. 以上返回结果中,logconfig 数组包含了当前 LogListener 的所有采集配置,您可针对每个采集配置,检查 wildpath 是否可能模糊命中大量无需采集的文件,例如/root/**/*.log 这类从根目录模糊匹配任意名称的日志文件。
3. 找到目标可优化的采集配置后,从步骤1的返回数据中查看该采集配置关联的 topicid,并基于该 topicid 前往 CLS 控制台找到目标日志主题,优化或删除该采集配置。

优化正则表达式

1. 执行以下命令查看当前 LogListener 关联的采集配置。
//LogListener 版本≥3.4.0
systemctl check loglistener

//LogListener 版本<3.4.0
/etc/init.d/loglistenerd check

2. 以上返回结果中,logconfig 数组包含了当前 LogListener 的所有采集配置,您可针对每个带有 fullregex 或 multi_fullregex 字段的采集配置,检查正则是否过于复杂。
3. 找到目标可优化的采集配置后,从步骤1的返回数据中查看该采集配置关联的 topicid,并基于该 topicid 前往 CLS 控制台找到目标日志主题,优化或删除该采集配置。

提升 LogListener CPU 占用的限制

LogListener 版本≥3.4.0
LogListener 版本<3.4.0
1. 以 LogListener 安装目录为 opt/loglistener 为例,执行以下命令打开 LogListener 配置文件:
vim conf/loglistener.yaml
2. 在 LogListener 配置文件中, 找到 cpu_limit 并按需提升 CPU 利用率限制(建议在保障业务进程资源的前提下按500/1000逐步提升),如下图:



3. 完成配置后,保存并 重启 LogListener
systemctl restart loglistener
1. 以 LogListener 安装目录为/usr/local/loglistener 为例,执行以下命令打开 LogListener 配置文件:
vim etc/loglistener.conf
2. 在 LogListener 配置文件中, 找到 cpu_usage_thres 并按需提升 CPU 利用率限制(建议在保障业务进程资源的前提下按500/1000逐步提升), 如下图:



3. 完成配置后,保存并 重启 LogListener
systemctl restart loglistenerd

提升 CPU 资源配额

K8s 场景下,请确保 DaemonSet:tke-log-agentPod: loglistener 的 CPU 配额充足。

内存超限

当状态为内存超限时,说明 LogListener 所占用内存已超过预先设置的阈值。您可通过以下方式进行修复。
LogListener 版本≥3.4.0
LogListener 版本<3.4.0
1. LogListener 安装目录为 opt/loglistener 为例,执行以下命令打开 LogListener 配置文件。
vim conf/loglistener.yaml
2. 在 LogListener 配置文件中,找到 max_mem (单位:Bytes)并按需提升内存占用限制,如下图:
说明:
建议在保障业务进程内存资源充足、不影响业务稳定性的前提下,再按当前值的1 - 2倍逐步提升。



3. 完成配置后,保存并 重启 LogListener
systemctl restart loglistener
1. 以 LogListener 安装目录为/usr/local/loglistener 为例,执行以下命令打开 LogListener 配置文件。
vim etc/loglistener.conf
2. 在 LogListener 配置文件中,找到 max_mem (单位:Bytes)并按需提升内存占用限制,如下图:
说明:
建议在保障业务进程内存资源充足、不影响业务稳定性的前提下,再按当前值的1 - 2倍逐步提升。



3. 完成配置后,保存并 重启 LogListener
systemctl restart loglistenerd

鉴权失败

确认密钥有效

当状态为鉴权失败时,说明 LogListener 中配置的密钥错误或已失效。您可通过以下方式进行修复。
LogListener 版本≥3.4.0
LogListener 版本<3.4.0
密钥不再明文暴露在本地配置文件中。如仍出现鉴权失败,通常表示当前实例使用的密钥已失效、权限异常或配置未正确下发。请确认 控制台密钥 及机器组配置是否有效,必要时可以 重新安装 LogListener。
1. 以 LogListener 安装目录为/usr/local/loglistener 为例,执行以下命令打开 LogListener 配置文件。
vim etc/loglistener.conf
2. 在 LogListener 配置文件中,找到 secret_idsecret_key 并判断是否正确有效,若无效则修改为正确的密钥信息,如下图:



3. 完成配置后,保存并 重启 LogListener
systemctl restart loglistenerd

服务器时间正确

请确保服务器时间准确,否则可能导致鉴权失败。
1. Linux 服务器可参考以下方式检查:
date
timedatectl status
重点确认以下信息:
Local time:当前本地时间是否正确。
Time zone:时区是否符合服务器所在地域,例如中国大陆地域通常为 Asia/Shanghai。
System clock synchronized:是否为 yes。
NTP service:是否为 active。
2. 如时区不正确,可执行以下命令修改时区(以中国大陆地域为例):
sudo timedatectl set-timezone Asia/Shanghai