Logtail 新功能:采集路径黑名单

本文涉及的产品
对象存储 OSS,20GB 3个月
文件存储 NAS,50GB 3个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: 背景 在某些场景下,我们需要采集的日志会分散在多个目录,为了在一个采集配置中同时采集它们,我们往往需要把采集配置中的目录指定为这些目录的共同父目录,这在实际使用用可能会产生一些问题。以如下的目录结构为例,我们希望在一个采集配置内指定采集 dira/b/c 目录下的 *.log,就必须将采集目录指定为父目录 admin。

背景

在某些场景下,我们需要采集的日志会分散在多个目录,为了在一个采集配置中同时采集它们,我们往往需要把采集配置中的目录指定为这些目录的共同父目录,这在实际使用用可能会产生一些问题。以如下的目录结构为例,我们希望在一个采集配置内指定采集 dira/b/c 目录下的 *.log,就必须将采集目录指定为父目录 admin。但这样指定后,由于 logtail 递归采集子目录的规则,一方面 dirs 目录下的 private.log 由于符合规则,也会被采集上来,会违背数据安全;另一方面,如果目录 diredirf 这些不需要的目录也会被监控,带来性能问题。

admin
├── dire
├── dira
│   └── a.log
├── dirb
│   └── b.log
├── dirc
│   └── c.log
├── dirf
└── dirs
    └── private.log

在当前情况下,为了避免这种问题,我们一般会通过创建多个采集配置来分别指定具体的子目录,非常麻烦。为了支撑此类场景,logtail 新增了指定采集路径黑名单的功能,可以在采集配置所指定的根目录基础上,对指定的目录、文件进行过滤,使 logtail 跳过对它们的采集。

依赖 logtail 版本:0.16.26 及以上。

功能说明及示例

目前,黑名单功能支持按照 目录路径文件路径 两种方式进行过滤,前者会跳过指定目录下所有内容(文件、子目录)的采集,后者则是跳过对指定文件的采集。为了提高使用的灵活性,在指定目录、文件的路径时,可以使用 *? 等通配符来匹配多个目标

假设我们采集的内容是目录 /home/admin 下的 *.log,以下是一些黑名单示例以及它们的效果。

  • 按目录路径忽略 /home/admin/dir1:忽略子目录 dir1 下的所有内容。
  • 按目录路径忽略 /home/admin/dir*:忽略 /home/admin/ 下所有 dir 开头的子目录内容。
  • 按目录路径忽略 /home/admin/*/dir:忽略 /home/admin/ 下所有二级目录名为 dir 的子目录内容,比如 /home/admin/a/dir 会被忽略,而 /home/admin/a/b/dir 会被采集。
  • 按文件路径忽略 /home/admin/private*.log:忽略 /home/admin/ 目录下所有 private 开头、.log 结尾的文件。
  • 按文件路径忽略 /home/admin/private*/*_inner.log:忽略 /home/admin/ 目录下 private 开头的一级子目录内,以 _inner.log 结尾的文件,比如 /home/admin/private/app_inner.log 会被忽略,而 /home/admin/private/app.log 会被采集。

控制台操作

通过【文本日志】的接入方式(比如 JSON、分隔符、单行等),根据向导进入配置页面后。启用【设置采集黑名单】,在黑名单配置中根据需要新增条目即可使用此功能。匹配黑名单过程会有计算开销,因此,建议黑名单条目数不要超过 10 条。

undefined

目录
相关文章
|
7月前
|
存储
phpcms自带采集功能 需注意
phpcms自带采集功能 需注意
34 0
|
7月前
|
JSON NoSQL 网络安全
业务服务器免装插件,使用rsync+nxlog同步+采集应用日志并接入到GrayLog5.1
业务服务器免装插件,使用rsync+nxlog同步+采集应用日志并接入到GrayLog5.1
109 0
|
7月前
|
JSON API 数据处理
Logtail 混合模式:使用插件处理文件日志
作为一个服务百万机器的日志采集 agent,Logtail 目前已经提供了包括日志切分、日志解析(完整正则、JSON、分隔符)、日志过滤在内的常见处理功能,能够应对绝大多数场景的处理需求。但有些时候,由于应用的历史原因或是本身业务日志的复杂性,单一功能可能无法满足所采集日志的处理需求,比如:日志可能...
155 1
Logtail 混合模式:使用插件处理文件日志
|
7月前
|
SQL JSON 监控
无需重启应用,动态采集任意点位日志
借助日志治理的现有能力,我们能够在不重启应用的前提下,动态采集任意点位信息,同时由于日志治理在采集信息时会引入链路信息,在分析复杂调用问题时能够起到很好的效果。
105 0
无需重启应用,动态采集任意点位日志
|
7月前
|
数据采集 监控 Kubernetes
【最佳实践】使用CloudLens排查iLogtail采集配置错误问题
本文主要介绍如何使用CloudLens for SLS定位和解决iLogtail日常使用中的常见问题之一:采集配置错误问题。
444 0
【最佳实践】使用CloudLens排查iLogtail采集配置错误问题
|
应用服务中间件 Shell nginx
网站流量日志埋点收集—日志格式、日志切分|学习笔记
快速学习网站流量日志埋点收集—日志格式、日志切分
325 0
网站流量日志埋点收集—日志格式、日志切分|学习笔记
|
JSON 运维 Kubernetes
K8s场景下Logtail组件可观测方案升级-Logtail事件监控发布
SLS针对Logtail本身以及Logtail的管控组件alibaba-log-controller,采用K8s事件的方式,将处理流程中的关键事件透出,从而让用户能够更清楚的感知其中发生的异常。
557 0
K8s场景下Logtail组件可观测方案升级-Logtail事件监控发布
|
网络协议 监控
使用sls logtail的netping功能探测网络质量
随着多云,多region业务部署越来越普遍,对于复杂的网络链路而言,延迟/丢包成为客户关注的一个重点。 sls的logtail作为可观测性的组件,目前集成了icmping和tcping的功能,帮助业务快速发现网络侧的延迟和丢包问题,提升网络可观察性。
353 0
使用sls logtail的netping功能探测网络质量
|
7月前
|
运维 监控 安全
SLS相同监控规则太多?试试告警监控模板
本文主要介绍了SLS自定义告警监控模板的使用场景以及最佳实践。
151 0
SLS相同监控规则太多?试试告警监控模板