日志服务CLI ETL - 编排与转换
背景
CLI的命令中,可以看到有一个重要的参数config
进行ETL的规则配置。这其实是一个Python模块,通过使用内置的模块对事件进行编排和处理。本篇介绍CLI ETL规则配置文件的使用细则,
编排和转换
一个例子
这里我们举一个服务器上多钟复杂日志格式的混合通过syslog发送给日志服务后的ETL的例子:
# 丢弃所有无关的元字段,例如__tag:...___等 DROP_FIELDS_f1 = [F_TAGS, "uselss1", "useless2"] # 分发:根据正则表达式规则,设置__topic__的值 DISPATCH_EVENT_data = [ ({"data": "^LTE_Information .+"}, {"__topic__": "let_info"}), ({"data": "^Stat
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
新功能:日志服务命令行工具ETL发布!
日志服务托管服务数据加工已经发布,参考: https://yq.aliyun.com/articles/704935 背景 使用日志服务,在搜索、分析时是否经常遇到以下数据格式规整的痛点? 1. 采集时ETL的痛点: 交换机、服务器、容器、Logging模块等,通过文件、标准输出、syslog、网络等途径收集时,里面是各种日志格式的混合,只能做部分提取,例如使用logtail先提取某些基础字段,例如时间、log level、IP等,但是日志主体message中很多有价值的信息因为混合了各种日志,无法在导入时提取? 单一场景下的日志,例如NGNIX,的QueryString中的字符串,或者HttpCookie、甚至HttpBody信息等,里面字段内容变化巨大,格式信息复杂度也很高,难以在提取的时候一次性使用正则表达式完成提取。 某些常规日志包含
- 下一篇
日志服务CLI ETL - 扩展UDF
背景 CLI的命令中,可以看到有一个重要的参数config进行ETL的规则配置。这其实是一个Python模块,通过import其他Python模块,或者直接编写符合协议的UDF来扩展ETL的规则。本篇介绍CLI ETL规则的扩展协议与机制。 扩展与UDF 条件式事件转换UDF 在转换列表中支持UDF扩展: UDF (Python): @support_event_list_simple # 自动支持多事件处理 def update_fields(e): e["some_field_x"] = "100" del e["some_feild_y"] return e # 也可以返回None(表示丢弃), 返回列表(表示分裂) TRANSFORM_LIST_data = [ ({"data": "^LTE
相关文章
文章评论
共有0条评论来说两句吧...