本文介绍如何在日志服务控制台上创建、查看、修改及删除Logtail采集配置等操作。除了支持控制台操作外,日志服务还支持API与SDK的方式。
Logtail采集配置概述
采集配置项是定义如何采集、处理日志数据的核心规则。其目的是通过灵活配置,实现日志的高效采集、结构化解析、过滤加工等效果。
在控制台创建Logtail采集配置项主要有三部分内容:
全局配置:您可以在全局配置中通过设置不同的日志主题(Topic)对采集到的文本日志进行分类,例如按服务器类型、用户区分。
输入配置:您可以在输入配置中查看日志服务支持采集的数据类型与相应的输入插件介绍。
处理插件:Logtail提供处理插件用于将原始日志进一步解析为结构化数据,您可以根据期望的解析方式选择对应的处理插件,当单一插件不满足情况时日志服务也支持有限制的插件组合使用。
创建Logtail采集配置
登录日志服务控制台。在Project列表区域,单击目标Project。
单击日志存储下您的Logstore,在Logtail配置中添加Logtail配置,单击立即接入,本例使用正则-文本日志,表示将以正则匹配的方式解析文本日志。
单击创建机器组。
,在下方选择您之前创建的机器组后单击>按钮添加到应用机器组中,点击下一步。若无机器组,请参考在全局配置中输入配置名称。在其他全局配置中设置日志主题。
日志主题配置项说明如下:详细参数请参考全局配置参数介绍。
机器组Topic:选择为机器组Topic时,在创建机器组时必须配置机器组Topic。
文件路径提取:选择为文件路径提取时,必须配置相应的正则表达式。
自定义:选择为自定义时,须输入
customized:// + 自定义主题名
,使用自定义的静态日志主题。
在输入配置中配置文件路径,代表日志采集的路径,日志路径必须以正斜线(/)开头,例如下图
/data/wwwlogs/main/**/*.Log
表示/data/wwwlogs/main
目录下后缀名为.Log的文件。如果需要设置日志目录被监控的最大深度,即文件路径中通配符**
匹配的最大目录深度。可以修改最大目录监控深度的取值,0代表只监控本层目录。详细参数请参考输入配置参数介绍。在处理配置中,设置日志样例,多行模式以及处理模式。
建议您在日志样例中添加日志样例:日志样例可协助您配置日志处理相关参数,降低配置难度。若配置请务必使用实际场景中待采集日志的样例。
按需选择是否开启多行模式:多行日志是指每条日志占用了连续的多行,不开启则是单行模式,即每一行为一条日志。若开启多行模式请配置:
类型:
自定义:原始日志的格式不固定,则配置行首正则表达式,来标定每一条日志的起始行。例如我们使用行首正则表达式
\[\d+-\d+-\w+:\d+:\d+,\d+]\s\[\w+]\s.*
,即可将示例中五行原始数据切分为两条日志。需要注意,行首正则表达式需要能够匹配完整的一行数据。[2023-10-01T10:30:01,000] [INFO] java.lang.Exception: exception happened at TestPrintStackTrace.f(TestPrintStackTrace.java:3) at TestPrintStackTrace.g(TestPrintStackTrace.java:7) at TestPrintStackTrace.main(TestPrintStackTrace.java:16) [2023-10-01T10:31:01,000] [INFO] java.lang.Exception: exception happened
多行JSON:当原始日志均为标准JSON格式时,可以选择多行JSON,Logtail会自动处理单条JSON日志内部的换行。
切分失败处理方式:
丢弃:直接丢弃这段日志。
保留单行:将每行日志文本单独保留为一条日志。
处理插件:处理插件配置的是对一条日志切割处理的方式。示例为正则-文本日志,因此处理插件中自动生成了一个正则解析插件,您也可以根据需要使用其他插件。
以下为您介绍常用的插件配置方式:有关时间解析,过滤处理,脱敏处理等更多插件能力请参考处理插件。日志服务也提供了SPL处理方式,在实现类似于传统处理插件功能的前提下处理效率更高,详细了解请参考使用Logtail SPL解析日志。
正则解析JSON解析分隔符解析APACHE模式解析NGINX模式解析IIS模式解析SPL处理关于该插件的更多详情,请参见原生插件:正则解析。
单击正则解析可进入处理插件详细配置页面。
需要在此页面配置正则表达式,以及根据提取的value设置key值。您可以单击正则表达式下方的自动生成正则表达式,之后如图所示选中日志样例中的内容后,单击产生的生成正则,会自动生成选择内容的正则表达式。
生成对应的正则表达式后,您还需要对在日志提取字段中对应生成的value设置key值,这些键值将有助于您后续设置日志索引。完成后点击确认并点击下一步。
本模式适用于采集JSON日志。
JSON日志有两种结构,Object类型(键值对的集合)和Array类型(值的有序列表)。Logtail JSON解析插件支持解析Object类型的JSON日志,提取为键值对,即提取Object首层的键作为Key,Object首层的值作为Value。但插件不支持解析Array类型的JSON日志。如需更细粒度请配合扩展插件:展开JSON字段进行处理。
关于该插件的更多详情,请参见原生插件:JSON解析。
根据需要选择是否开启处理配置中的多行模式,如果开启,请使用以下选项:
类型,选择多行JSON。
切分失败处理方式,选择保留单行。
删除处理模式中的正则解析插件,然后添加一个JSON解析插件。
根据如下表格的配置说明进行插件配置,完成后单击确认,单击下一步。
参数名称
说明
原始字段
解析日志前,用于存放日志内容的原始字段,默认值为content。
解析失败时保留原始字段
选中解析失败时保留原始字段,则解析失败时,将保留原始字段。
解析成功时保留原始字段
选中解析成功时保留原始字段,则解析成功时,将保留原始字段。
重命名的原始字段
选中解析失败时保留原始字段或解析成功时保留原始字段后,可重命名原始字段名,用于存放原始的日志内容。
Logtail分隔符模式解析插件支持通过分隔符将日志内容结构化,解析为多个键值对形式。
关于该插件的更多详情,请参见原生插件:分隔符模式解析。
删除处理模式中的正则解析插件,然后添加一个分隔符解析插件。
根据如下表格的配置说明进行插件配置,完成后点击确认,点击下一步。
参数
描述
原始字段
解析日志前,用于存放日志内容的原始字段,默认值为content。
分隔符
请根据您的日志内容选择正确的分隔符,例如竖线(|)。
指定分隔符为不可见字符时,您需要查找不可见字符在ASCII码中对应的十六进制数,输入的格式为
0x<不可见字符在ASCII码中对应的十六进制数>
。例如ASCII码中排行为1的不可见字符为0x01。引用符
当日志字段内容中包含分隔符时,需要指定引用符进行包裹,被引用符包裹的内容会被日志服务解析为一个完整字段。请根据您的日志格式选择正确的引用符。
指定引用符为不可见字符时,您需要查找不可见字符在ASCII码中对应的十六进制数,输入的格式为
0x<不可见字符在ASCII码中对应的十六进制数>
。例如ASCII码中排行为1的不可见字符为0x01。日志提取字段
当您配置了日志样例时,日志服务会根据您输入的日志样例及选择的分隔符提取日志内容,并将其定义为Value,您需要为各个Value指定对应的Key。
当您未配置日志样例时,无Value列表,您需要根据实际日志及分隔符情况,输入对应的Key。
Key只能包括字母、数字或下划线(_),且只能以字母或下划线(_)开头。最大长度为128字节。
允许部分字段
如果日志中实际提取出的Value数量少于Key数量,是否上传日志到日志服务。选中允许部分字段表示上传。
例如日志为
11|22|33|44
,分隔符为竖线(|),Key为A
、B
、C
、D
和E
。如果选中允许部分字段,则
E
字段的Value为空,该日志将被上传到日志服务。如果未选中允许部分字段,该日志会被丢弃。
Linux Logtail 1.0.28及以上版本或Windows Logtail 1.0.28.0及以上版本支持配置分隔符模式的允许部分字段参数。
处理超出字段方式
日志中提取的Value数量大于Key数量时的处理方法。
展开:保留多余的Value内容,分别添加到
__column$i__
格式的字段中,其中$i
代表多余字段序号,从0开始计数。例如__column0__
、__column1__
。保留:保留多余的Value内容,并整体添加到名为
__column0__
的字段中。丢弃:丢弃多余的Value内容。
解析失败时保留原始字段
选中解析失败时保留原始字段,则解析失败时,将保留原始字段。
解析成功时保留原始字段
选中解析成功时保留原始字段,则解析成功时,将保留原始字段。
重命名的原始字段
选中解析失败时保留原始字段或解析成功时保留原始字段后,可重命名原始字段名,用于存放原始的日志内容。
Logtail Apache模式解析插件支持根据Apache日志配置文件中的定义将日志内容结构化并解析为多个键值对形式。
关于该插件的更多详情,请参见原生插件:Apache模式解析。
操作步骤
删除处理模式中的正则解析插件,然后添加一个APACHE模式解析插件。
根据如下表格的配置说明进行插件配置,完成后点击确认,点击下一步。
参数名称
说明
日志格式
根据Apache日志配置文件中定义的日志格式进行选择,包括common、combined和自定义。
APACHE配置字段
Apache配置文件中的日志配置部分,通常以LogFormat开头。
当配置日志格式为common或combined时,此处会自动填充对应格式的配置字段,请确认是否和Apache配置文件中定义的格式一致。
当配置日志格式为自定义时,请根据实际情况填写,例如
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %D %f %k %p %q %R %T %I %O" customized
。
原始字段
解析日志前,用于存放日志内容的原始字段,默认值为content。
正则表达式
用于提取Apache日志的正则表达式。日志服务会根据APACHE配置字段中的内容自动生成该正则表达式。
日志提取字段
根据APACHE配置字段中的内容自动生成日志字段(key)。
解析失败时保留原始字段
选中解析失败时保留原始字段,则解析失败时,将保留原始字段。
解析成功时保留原始字段
选中解析成功时保留原始字段,则解析成功时,将保留原始字段。
重命名的原始字段
选中解析失败时保留原始字段或解析成功时保留原始字段后,可重命名原始字段名,用于存放原始的日志内容。
Logtail Nginx模式插件支持根据log_format中的定义将日志内容结构化,解析为多个键值对形式。
关于该插件的更多详情,请参见原生插件:Nginx模式解析。
删除处理模式中的正则解析插件,然后添加一个NGINX模式解析插件。
根据如下表格的配置说明进行插件配置,完成后点击确认,点击下一步。
参数名称
说明
NGINX日志配置
Nginx配置文件中的日志配置部分,以log_format开头。例如:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$request_time $request_length ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent"';
更多信息,请参见Nginx日志简介。
原始字段
解析日志前,用于存放日志内容的原始字段,默认值为content。
正则表达式
用于提取Nginx日志的正则表达式。日志服务会根据NGINX日志配置 中的内容自动生成该正则表达式。
日志提取字段
根据NGINX日志配置自动提取对应的日志字段(Key)。
解析失败时保留原始字段
选中解析失败时保留原始字段,则解析失败时,将保留原始字段。
解析成功时保留原始字段
选中解析成功时保留原始字段,则解析成功时,将保留原始字段。
重命名的原始字段
选中解析失败时保留原始字段或解析成功时保留原始字段后,可重命名原始字段名,用于存放原始的日志内容。
Logtail IIS模式插件支持根据IIS日志格式定义将日志内容结构化,解析为多个键值对形式。
关于该插件的更多详情,请参见原生插件:IIS模式解析。
删除处理模式中的正则解析插件,然后添加一个IIS模式解析插件。
根据如下表格的配置说明进行插件配置,完成后点击确认,点击下一步。
参数名称
说明
日志格式
选择您的IIS服务器日志采用的日志格式,具体说明如下:
IIS:Microsoft IIS日志文件格式。
NCSA:NCSA公用日志文件格式。
W3C:W3C扩展日志文件格式。
IIS配置字段
配置IIS配置字段,具体说明如下:
日志格式为IIS或NCSA时,日志服务已默认设置了IIS配置字段。
日志格式为W3C日志时,设置为IIS配置文件中
logExtFileFlags
参数中的内容,例如:logExtFileFlags="Date, Time, ClientIP, UserName, SiteName, ComputerName, ServerIP, Method, UriStem, UriQuery, HttpStatus, Win32Status, BytesSent, BytesRecv, TimeTaken, ServerPort, UserAgent, Cookie, Referer, ProtocolVersion, Host, HttpSubStatus"
IIS5配置文件默认路径:
C:\WINNT\system32\inetsrv\MetaBase.bin
。IIS6配置文件默认路径:
C:\WINDOWS\system32\inetsrv\MetaBase.xml
。IIS7配置文件默认路径:
C:\Windows\System32\inetsrv\config\applicationHost.config
。
原始字段
解析日志前,用于存放日志内容的原始字段,默认值为content。
正则表达式
用于提取IIS日志的正则表达式。日志服务会根据IIS配置字段中的内容自动生成该正则表达式。
日志提取字段
根据IIS配置字段中的内容自动生成日志字段(Key)。
解析失败时保留原始字段
选中解析失败时保留原始字段,则解析失败时,将保留原始字段。
解析成功时保留原始字段
选中解析成功时保留原始字段,则解析成功时,将保留原始字段。
重命名的原始字段
选中解析失败时保留原始字段或解析成功时保留原始字段后,可重命名原始字段名,用于存放原始的日志内容。
日志服务还提供了自定义SPL处理方式,与传统的处理插件相比,使用SPL不仅提高了处理速度和效率,还提供了更多智能化和易用性方面的优势,使得日志服务的整体能力得到了显著增强。通过编写SPL语句,您可以充分利用其计算能力来处理数据。
SPL语法请参见SPL语法。
使用步骤请参见使用Logtail SPL解析日志。
使用示例请参见使用SPL采集文本日志。
查看Logtail采集配置
登录日志服务控制台。
在Project列表区域,单击目标Project。
在 页签中,单击目标日志库前面的>,依次选择 。
单击目标Logtail采集配置,查看Logtail采集配置详情。
修改Logtail采集配置
登录日志服务控制台。
在Project列表区域,单击目标Project。
在 页签中,单击目标日志库前面的>,依次选择 。
在Logtail配置列表中,单击目标Logtail采集配置。
在Logtail配置页面,单击修改。
根据需求,修改相关配置,并单击保存。
详细参数说明请参见Logtail采集配置概述。
删除Logtail采集配置
在Logtail配置列表中,单击目标Logtail采集配置右侧的
图标,选择删除。
在删除确认框中,单击确认。
删除成功后,该Logtail采集配置与机器组解除绑定,Logtail停止采集该Logtail采集配置对应的日志。
删除logstore前,必须删除其对应的所有Logtail采集配置。
- 本页导读 (1)
- Logtail采集配置概述
- 创建Logtail采集配置
- 查看Logtail采集配置
- 修改Logtail采集配置
- 删除Logtail采集配置