lts
结构化配置
更新时间:2021/01/19 GMT+08:00
日志数据可分为结构化数据和非结构化数据。结构化数据指能够用数字或统一的数据模型加以描述的数据,具有严格的长度和格式。非结构化数据指不便于用数据库二维逻辑表来表现的数据,数据结构不规则或不完整,没有预定义的数据模型。
日志结构化是以日志流为单位,通过不同的日志提取方式将日志流中的日志进行结构化,提取出有固定格式或者相似程度较高的日志,过滤掉不相关的日志,以便对结构化后的日志按照SQL语法进行查询与分析。

目前仅“拉美-圣地亚哥”区域不支持日志结构化功能。
注意事项
- 日志结构化是以日志流为单位,请先创建一个日志流。
- 日志流中的大部分日志需有一定的规则,否则结构化是无意义的。
结构化原始日志
通过对日志流添加提取规则将日志流中的原始日志按一定的规律进行提取,并将提取后的日志整合到一起,以便进行SQL查询与分析。
下面详细介绍原始日志结构化的操作步骤:
- 登录LTS控制台,在左侧导航栏中选择“日志管理”。
- 结构化日志以日志流为单位,请在“日志管理”页面选择目标日志组和日志流。
- 在日志流详情页面,单击左侧导航栏“配置中心”,选择“结构化配置”,进入日志结构化配置页面,选择日志提取方法,如下图所示。
- 正则分析:使用正则表达式提取字段。
- JSON:通过提取JSON字段将其拆分为键值对。
- 分隔符:使用分隔符(例如:逗号、空格或字符)提取字段。
- 结构化模板:系统内置ELB、VPC、CTS云服务的结构化模板。
图1 日志结构化 - 选择示例日志:应选择一条比较典型的日志作为示例日志。在“步骤1 选择示例日志”中,可单击“从已有日志中选择”,在弹出框中根据业务需求选择待操作的日志,单击“确定”。通过选择不同时间段“近1小时”、“近1天”、“近1周”或者“自定义时间段”筛选日志。
“JSON”和“分隔符”方式可以直接在输入框中输入待操作的日志。
“结构化模板”方式提取日志时,日志从对应的云服务接入,可以直接应用模板的数据模型作为示例日志。
- 当选择“分隔符”方式提取日志时,需要根据原始日志内容选择分隔符,或自定义其他需要的特殊字符作为分隔符,如下图所示。图2 指定分隔符
- 字段提取。可将输入或选择的日志自动提取为以一个示例字段对应一个字段名称的格式的日志解析结果。
- 正则分析日志。在示例日志中,用鼠标选中待结构化的日志内容,在弹出的对话框中为选中内容设置一个名称,并单击“添加”。如下图所示。图3 选择字段
分词符指将日志内容切分为多个单词的符号,默认分词符包括, '";=()[]{}@&<>/:\n\t\r,在日志搜索或者对日志进行结构化时,可以选取相邻两分词符之间的单词。
- JSON格式日志。在“步骤2 字段提取”下单击“智能提取”。以如下原始日志为例进行分析:
{"code":"201","source_ip":"10.10.1.10","trace_type":"ApiCall","event_type":"global","project_id":"221123nsada3sda3231das3111ndsab","trace_id":"1eesdd-dad6-11dsaea-edaxfeqdf","trace_name":"demodemodemo","resource_type":"token","trace_rating":"normal","service_type":"IAM","resource_id":"98763hkjhdteoi03861732hjh7983bhd","tracker_name":"global","time":"1597042369296","resource_name":"demodemodemo/demo","record_time":"1597042370464","user":{"domain":{"name":"testdemo","id":"21185d8818e443e1ryjkh71622f09212b"},"name":"testdemo/demo","id":"6hfakl86faqw87dsasasadf09ajbml"}}
通过智能提取结果如下图。
- 分隔符格式日志。在“步骤3字段提取”下单击“智能提取”。以如下原始日志为例进行分析:
1 5f67944957444bd6bb4fe3b367de8f3d 1d515d18-1b36-47dc-a983-bd6512aed4bd 192.168.0.154 192.168.3.25 38929 53 17 1 96 1548752136 1548752736 ACCEPT OK
通过智能提取结果如下图。
在字段提取完成后,可对日志模板进行设置。日志模板设置规则如下表。表1 模板设置规则 日志提取方式
字段名称
字段类型是否可修改
字段是否可删除
是否支持创建快速分析
正则分析
用户自定义。
是
是
是
JSON格式
智能提取字段名称,可设置别名。
是
是
是
分隔符
默认名称field1、field2、field3……,可进行修改。
是
是
是
ELB模板
根据ELB资料中提供的日志字段被定义。
否
否
是
VPC模板
根据VPC资料中提供的日志字段被定义。
否
否
是
CTS模板
字段名称为json日志中的key。
否
否
是
- 正则分析日志。在示例日志中,用鼠标选中待结构化的日志内容,在弹出的对话框中为选中内容设置一个名称,并单击“添加”。如下图所示。
- 单击“保存”,完成日志结构化,初次设置完成后将不能对字段类型编辑修改。
结构化后的日志数据可理解为数据库中的二维表,接下来就可以使用SQL语句对提取的字段进行查询与分析。
父主题: 日志分析
