云日志服务 LTS-构建字典与表格进行数据富化:字典构建
字典构建
不同字典构建方式对比参考如下:
构建方式 |
优点 |
缺点 |
---|---|---|
直接构建 |
直观、简单、方便。 |
如果内容较多,规则会相对冗长。且静态不灵活。 |
从任务配置资源构建 |
内容较多且经常修改时推荐使用,易于维护。 |
不易于扩展和跨任务复用,不支持自动刷新。 |
从表格构建 |
高级场景下使用,维护机制更灵活。 |
需要构建和维护对应的表格,过程相对繁琐。 |
从字典函数构建 |
基于逻辑动态构建字典,特定场景下适用。 |
较为高级,不易于维护。 |
从其他表达式构建 |
从日志事件的字段中动态提取映射关系,特定场景下适用。 |
较为高级,不易于维护。 |
- 直接构建
e_dict_map({"400": "error", "200": "ok", "*": "other"}, "status", "message")
- 从任务高级配置构建
e_dict_map(res_local("http_code_map"), "status", "message")
其中http_code_map是任务高级配置项,值为:
- 从表格构建
使用tab_to_dict从表格构建。而表格的构建参见本文后面的表格构建。
e_dict_map(tab_to_dict(tab_parse_csv("status_code,status_info\n400,error\n200,ok\n*,other"), "status_code", "status_info"), "status", "message")
- 从字典函数构建
e_dict_map(dct_make("400", "error", "200", "ok", "*", "other"), "status", "message")
- 从其他表达式构建
e_dict_map(json_parse(v("http_code_map")), "status", "message")
此处从源日志的http_code_map字段中获取映射关系。