tencent cloud

日志服务

动态与公告
产品动态
公告
新手指引
产品简介
产品概述
产品优势
地域和访问域名
规格与限制
基本概念
购买指南
计费概述
产品定价
按量计费(后付费)
欠费说明
清理日志服务资源
成本优化
常见问题
快速入门
一分钟入门指南
入门指南
使用 Demo 日志快速体验 CLS
操作指南
资源管理
权限管理
日志采集
指标采集
日志存储
指标存储
检索分析(日志主题)
检索分析(指标主题)
仪表盘
数据处理
投递与消费
监控告警
云产品中心
DataSight 独立控制台
历史文档
实践教程
日志采集
检索分析
仪表盘
监控告警
投递和消费
成本优化
开发者指南
通过 iframe 内嵌 CLS(旧方案)
通过 Grafana 使用 CLS
API 文档
History
Introduction
API Category
Making API Requests
Topic Management APIs
Log Set Management APIs
Index APIs
Topic Partition APIs
Machine Group APIs
Collection Configuration APIs
Log APIs
Metric APIs
Alarm Policy APIs
Data Processing APIs
Kafka Protocol Consumption APIs
CKafka Shipping Task APIs
Kafka Data Subscription APIs
COS Shipping Task APIs
SCF Delivery Task APIs
Scheduled SQL Analysis APIs
COS Data Import Task APIs
Data Types
Error Codes
常见问题
健康监测问题解释
采集相关
检索分析相关
其他问题
服务等级协议
CLS 政策
隐私协议
数据处理和安全协议
联系我们
词汇表

LogListener 常见问题

PDF
聚焦模式
字号
最后更新时间: 2026-01-07 16:23:32

为何单个文件不支持上报至多个 topic?

LogListener 采集程序的策略是,单个文件,只能上传至一个 topic。 例如,您有 topicA 和 topicB 两个文件,并对这两个文件进行如下设置。
设置 topicA 的采集路径为:/data/log/**/*.log
设置 topicB 的采集路径为:/data/log/test/**/*.log、/data/log/**/test*.log、/data/log/**/*.log,或者其他与 topicA 采集路径类似的路径。
此场景的配置,虽对应到两条采集路径交集的文件,但只会将数据上传至其中一个 topic 中。因此,我们建议针对不同的日志主题,应承载不同业务类型的日志,并在设置采集配置路径时,尽量精确配置信息。如果仍需要将某一个文件上传至不同的 topic,可使用软链接实现。对同一个采集目标创建不同的软链接,不同的 topic 分别采集不同的软链接路径/文件。

如何进行采集路径的设置?

目前采集路径的配置为:路径前缀+ “/**/”+通配文件名的形式。例如:/data/log + /**/ + *.log ==> /data/log/**/*.log。
由于设置通配采集路径时,需要将采集路径(前缀部分)设置的尽量准确,从而使采集器能够更有效率的提供服务。如果采集路径前缀部分设置不准确,可能会导致采集路径匹配到的路径数量巨大,从而造成采集器进入异常转台,无法工作。
例如,采集路径设置为://**/*.log,其前缀部分为"/",这种情况下采集程序会扫描整个根目录,导致采集程序无法工作。

推荐的日志轮转方案是什么?

对于日志的轮转,推荐方式为轮转后的文件名,不要被采集通配路径覆盖到。
例如,配置的采集路径是 /var/log/xxxx/**/*.log,需要采集的日志是 test.log。当 test.log 轮转成 test.2021-07-13.4.log 时,LogListener 能够识别 test.2021-07-13.4.log 是 test.log 的轮转文件,对它仍按照 test.log 来标记。因此,LogListener 保存的位点文件中,没有 test.2021-07-13.4.log 这个文件的采集记录。
而当 LogListener 重启后,LogListener 会按照 /var/log/xxxx/**/*.log 去扫描文件,并发现 test.2021-07-13.4.log 文件符合匹配规则,且没有采集记录,是一个新文件,然后重新采集。
所以建议,采集通配路径不要匹配到轮转文件,避免造成重启后重新采集轮转文件。
我们推荐的日志轮转方案是,如果您需要采集 test.log,建议将轮转后的文件名命名为 test.log.2021-07-13.xxx,可以有效不被 *.log 覆盖到。

LogListener 升级说明?

在 LogListener 迭代过程中,采集路径的接口参数做过变更,比较老的版本(ver< 2.2.8)设置的采集路径,在新版本中不再被支持。 因此,如需对存量老版本(ver < 2.2.8)进行升级,在采集程序升级之后,需要在控制台重新以通配路径的方式,再次设置采集路径。

LogListener 采集配置如何使用正则采集模式?

在控制台设置采集配置时,如果选择正则相关的采集模式,控制台虽提供正则 kv 提取小工具,但此工具暂不提供对中文内容的正则自动生成功能。如需对中文文本进行正则提取,可以自行编写正则表达式,在控制台进行验证,或者使用其他第三方工具进行验证。

初次使用 LogListener 采集器接入时,发现无日志上传,怎么办?

可能是采集器配置不正确导致,常见情况如下:
配置的服务端域名不匹配,采集器拉取不到当前地域的采集配置,无采集业务进行。
采集器加入了 IP 机器组,但是采集器中又配置了标签 label 信息,导致在当前地域拉取不到采集配置,无采集业务进行。
采集器中配置的 secret ID/KEY 不正确,或者权限不足,导致无法上传日志。
环境问题(如 VPC 子网内,外网未开启),如果配置了跨地域上传,是不生效的,采集器实际上还是与本地域服务端进行通信。
通常这种情况下,可以登录采集器所在机器,进入采集器安装目录,并执行./bin/check 命令,检查如下内容:
域名是否正确。
心跳上报是否正常。
采集配置是否正确拉取。

机器组使用混用,导致采集不采集,怎么办?

目前机器组分为两类,其使用方法相互独立:
IP 机器组,机器 IP 需要在控制台上手动加入机器组,对应机器上 loglistener.conf的group_label 需为空。
标签机器组,控制台设置机器组标签,对应机器上 loglistener.conf的group_label 需要设置为相同的标签。
如上两种用法不兼容,如果混合使用,采集机器将拉取不到正确的采集配置,造成不采集的现象。

LogListener 的采集策略是什么?

一堆文件排队进行 LogListener 采集时,队首文件先采集,且要求其在某个时刻读取到文件尾才会让出队首位置。即:不是每个文件在单位时间内,都能均等的享受采集资源。
当单个文件始终写入大于采集速度,且采集速度慢导致始终消费不到文件最新位置时,会出现某个文件长时间或一直霸占采集资源,从而导致其他的文件无法进入采集流程。

Topic 采集阻塞严重怎么办?

在某段时间内,如果单个文件的产生速度大于采集速度,LogListener 会持续一直在采集这一个文件,陷入了对其他文件的采集阻塞场景。

过滤器的规则是什么?

过滤器的规则是匹配后采集,而不是匹配后丢弃。对于未能匹配的日志,LogListener 将不会进行采集。

如何使用非 root 权限启动 LogListener?

建议用户使用 root 权限安装启动。如需在非 root 权限下使用 LogListener,可以参考设置非 root 权限启动 LogListener。

如何对 LogListener 的进程进行绑核?

使用 taskset 工具进行绑核, taskset -cp ${cpu number} ${pid>}

如何处理 LogListener 占用内存过高,控制资源的使用?

建议升级到最新 LogListener 版本 ,并设置 memory_tight_mode = true
使用 CGroup 限制 CPU 和内存使用。

LogListener 是否支持软链接方式采集?

LogListener 低于2.3.0版本不支持监听软连接方式的日志文件和 NFS、CIFS 等共享文件目录上的日志文件,以上版本均可支持。

LogListener 可以向多个日志主题上传数据吗?

LogListener 可以为同地域的多个日志主题采集数据,但不支持为异地多个日志主题采集。
同一个日志文件只支持采集到一个主题。

LogListener 初始化的时候是否可以自动加入机器组?

标识机器组机支持, 参考文档 管理机器组

LogListener 日志上传策略是什么?

缓存的日志量超过4M。
缓存的日志条数超过10000条。
读到文件末尾。

LogListener 支持的最大性能是多少?

单行全文日志最大处理能力为115MB/s。
多行全文日志最大处理能力为40MB/s。
JSON 格式日志最大处理能力为25MB/s。
CSV 格式日志采最大处理能力为50MB/s。
完全正则格式日志最大处理能力为18MB/s (和正则的复杂度有关)。

服务器更换 IP 地址后,LogListener 应该如何适配?

若服务器通过机器标识绑定机器组,用户无需变更 LogListener 配置。若服务器 IP 需要频繁变更,建议用户使用 机器标识 配置机器组。
若服务器通过 IP 地址绑定机器组,用户需要完成以下配置变更: a. 修改配置文件中 group_ip 选项,填入变更后的 IP 地址,例如:
sed -i '' "s/group_ip *=.*/group_ip = ${group_ip}/" etc/loglistener.conf
b. 重启 LogListener。
/etc/init.d/loglistenerd restart
c. 如果使用的是 IP 机器组,登录 日志服务控制台,在左侧导航栏中,单击机器组管理,修改该服务器绑定的机器组配置,使用新 IP 替换原机器 IP 地址并确定。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈