日志清洗

最后更新时间:2021-04-26 14:30:00

    简介

    日志清洗是腾讯云对象存储(Cloud Object Storage,COS)基于 云函数(Serverless Cloud Function,SCF) 为用户提供的日志文件处理解决方案。当用户开启 日志管理服务 或自行上传日志文件时,将自动触发对象存储为您预配置的云函数,通过函数中您预先指定的 SQL 检索语句,自动将文件中的日志信息进行过滤清洗,并将结果投递到指定的存储桶及其路径中。

    注意事项

    • 日志清洗功能使用的是 COS 数据检索接口,相关的限制说明请参见 Select 概述
    • 若您此前在对象存储控制台上为存储桶添加了日志清洗规则,可以在 云函数控制台 上看到您所创建的日志清洗函数,请不要删除或修改该日志清洗函数,否则可能导致您的规则不生效。
    • 当前日志清洗功能仅支持广州、上海、北京、成都。
    • 对象存储日志清洗功能依赖于云函数服务,云函数服务为用户提供了 免费额度,超出免费额度的部分需要按照 云函数产品定价 收费。

    操作步骤

    1. 登录 对象存储控制台

    2. 在左侧导航中,单击【应用集成】,在【数据处理】页签下找到【日志清洗】。

    3. 单击【配置备份规则】,进入规则配置页面。

    4. 单击【添加函数】。

      注意:

      如果您尚未开通云函数服务,请前往 云函数控制台 开通云函数服务,按照提示完成服务授权即可。

    5. 在弹出的窗口中,配置如下信息:

      • 函数名称:作为函数的唯一标识名称,创建后不可修改。您可以在 云函数控制台 上查看该函数。
      • 关联存储桶:存放日志的 COS 存储桶。
      • 事件类型:事件指触发云函数的操作。以上传操作为例,上传的方式可能是调用PUT Object接口,也可能是调用POST Object接口,当选择事件为【Put方法创建】时,只有通过PUT Object接口上传的压缩包会触发解压缩。

        注意:

        如果您的文件是通过简单上传、分块上传、跨地域复制等多种渠道上传到存储桶中,建议您选择【全部创建】事件。

      • 触发条件:指日志文件上传到哪个路径时会触发云函数。如果选择指定前缀,则仅当日志文件上传到指定前缀路径下时才会触发云函数;如果选择整个存储桶,则日志文件上传到存储桶任意位置均会触发。
      • SCF 授权:日志清洗需要授权云函数从您的存储桶中读取日志文件,并将清洗后的日志文件上传到您指定的位置。因此需要添加此授权。
    6. 单击【下一步】,进行日志清洗配置,配置项说明如下:

      • 源文件配置:根据实际情况选择您需要检索的文件类型、行/列分隔符、列表头部、压缩格式。
      • SQL 表达式:填写您想进行的检索语句,您也可以选择我们提供的 SQL 模板,SQL 相关命令说明请参见 SQL 函数
      • 导出配置:您可根据实际情况选择导出格式、行/列分隔符和转义设置。
    7. 单击【下一步】,进行投递配置,配置项说明如下:

      • 投递存储桶:日志文件清洗完毕后,生成的文件需要存储的存储桶。
      • 投递的路径:日志文件清洗完毕后,生成的文件需要存储的具体路径,为了避免循环触发,建议指定的投递路径前缀不要与触发条件相同。

        注意:

        如果配置的投递前缀与触发条件前缀存在包含关系,可能导致循环触发,请尽量避免这种情况。例如投递前缀为 prefix/target/,触发条件前缀为 prefix/,当上传一个 prefix/test.csv 的日志文件时将自动生成并投递日志清洗产物 prefix/target/test.cos_select_result.csv 到存储桶中,这将触发循环清洗。

    8. 添加配置后,单击【确认】,即可看到函数已添加完成。
      您可以对新创建的函数进行如下操作:

      • 单击【查看日志】,查看日志清洗的历史运行情况。当日志清洗出现报错时,您还可以通过单击【查看日志】,快速跳转到云函数控制台查看日志错误详情。
      • 单击【编辑】,修改日志清洗规则。
      • 单击【删除】,删除不使用的日志清洗规则。