预览功能用于调试数据加工脚本,包括快速预览和高级预览。本文介绍两种预览方式的适用场景及具体配置步骤。

前提条件

背景信息

快速预览可免费、快速检验数据加工脚本语法正确性,验证加工规则的输出结果是否符合预期,并且支持自定义测试数据或者从Logstore中选取特定日志进行测试。快速预览不能真正连接到资源函数(res_local、res_rds_mysql、res_log_logstore_pull、res_oss_file)所指定的资源,如果在加工过程中涉及到函数资源,您可以在维表页签中输入测试数据进行预览。

高级预览会产生一定的流量,计入数据加工费用。建议您通过快速预览确认输出结果符合预期后,使用高级预览完整测试资源函数的配置准确性。

快速预览

  1. 登录日志服务控制台
  2. Project列表区域,单击目标Project。
  3. 进入数据加工模式。
    您可以通过以下两种方式进入数据加工模式。
    • 日志存储 > 日志库页签中,单击目标Logstore。在查询分析页面,开启数据加工,进入数据加工模式。
    • 日志存储 > 日志库页签中,单击目标日志库前的>,依次选择数据处理 > 加工。单击加工后的加号(+),进入数据加工模式。
  4. 在编辑框输入加工规则。
    规则语法请参见数据加工语法
  5. 预览数据。
    1. 在页面右上角,单击快速
    2. 在页面下方,单击测试数据
    3. 测试数据页签中,输入测试数据。
      测试数据包括基础数据和维表数据。数据
      • 数据页签中配置测试数据。

        您可以在原始日志页签中,找到一条目标日志,单击加入测试数据,将该日志加入到测试数据中。您也可以手动输入一条测试数据。

        说明
        • 单次预览的测试数据大小不超过1 MB。
        • 多条测试数据之间用空行分隔。
        • 跨行字段值使用Markdown编辑格式,通过```,识别整个字段。
        • 数据页签中配置的测试数据可以为KV格式或者JSON格式,其中KV格式数据使用冒号(:)连接字段名和字段值。
        • 样例1:包含2条测试数目,第1条是KV格式(包含1个跨行字段traceback),第2条是JSON格式。
          time_local: 25/May/2020:01:56:22
          user agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18
          "request:method": GET
          ```    
          traceback: Traceback (most recent call last):
            File "traceback_print_exc.py", line 20, in <module>
              produce_exception()
            File "/home/user/code/test.py", line 16, in produce_exception
              produce_exception(recursion_level-1)
            File "/home/user/code/test.py", line 18, in produce_exception
              raise RuntimeError()
          
          RuntimeError
          ```
          
          {
            "time_local": "25/May/2020:01:56:22",
            "user agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18",
            "request:method": "GET",
            "remote user": "john"
          }
        • 样例2:1个完整的JSON实例,包含3条测试数据。
          [
            {
              "time_local": "25/May/2020:01:56:22",
              "user agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18",
              "request:method": "GET",
              "remote user": "john"
            },
            {
              "time_local": "25/May/2020:01:56:22",
              "user agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18",
              "request:method": "GET",
              "remote user": "john"
            },
            {
              "time_local": "25/May/2020:01:56:22",
              "user agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.661.0 Safari/534.18",
              "request:method": "GET",
              "remote user": "john"
            }
          ]
      • 维表页签中配置测试数据。

        维表用于快速预览资源函数所涉及的资源。您可以输入对应的维表数据样本,用于数据预览调试。

        说明维表页签中配置的测试数据,如果是res_rds_mysql、res_log_logstore_pull资源函数对应的数据样例必须为CSV格式,如果是res_oss_file、res_local资源函数对应的数据样例可以为CSV格式,也可以为JSON格式。

        样例:包含2条测试数据,第1条是CSV格式,第2条是JSON格式。

        ip,country,province
        127.0.0.1,China,Shanhai
        192.168.0.0,China,Zhejiang
        
        [
          {
            "ip": "127.0.0.1",
            "country": "China",
            "province": "Shanhai"
          },
          {
            "ip": "192.168.0.0",
            "country": "China",
            "province": "Zhejiang"
          }
        ]
    4. 单击预览数据
      说明 单次预览最多返回100条加工结果。
      • 如果加工规则语法错误或者权限配置错误,导致数据加工失败,请根据页面提示处理。
      • 如果确认数据加工结果无误,可保存加工结果,详情请参见创建数据加工任务

高级预览

  1. 登录日志服务控制台
  2. Project列表区域,单击目标Project。
  3. 进入数据加工模式。
    您可以通过以下两种方式进入数据加工模式。
    • 日志存储 > 日志库页签中,单击目标Logstore。在查询分析页面,开启数据加工,进入数据加工模式。
    • 日志存储 > 日志库页签中,单击目标日志库前的>,依次选择数据处理 > 加工。单击加工后的加号(+),进入数据加工模式。
  4. 在数据加工页面,设置原始日志的查询时间范围。
    请确保在原始日志页签中有日志数据。
  5. 在编辑框输入加工规则。
    规则语法请参见数据加工语法
  6. 预览数据。
    1. 单击高级
    2. 单击预览数据
    3. 添加预览配置页面,配置如下参数,并单击确定
      说明 首次预览数据时,需配置如下参数。后续可通过单击修改预览配置,修改如下参数。
      参数 说明
      授权方式 您可以通过如下方式授予日志服务读取源Logstore中数据的权限。
      • 默认角色:授予日志服务使用阿里云系统角色AliyunLogETLRole来读取源Logstore中的数据。

        单击授权系统角色AliyunLogETLRole,根据页面提示完成授权。

        说明
        • 如果您使用的是RAM用户,需要由阿里云主账号进行授权。
        • 该操作仅在首次配置时需要。
      • 自定义角色:授予日志服务使用自定义角色来读取源Logstore中的数据。

        角色ARN中输入您自定义角色的ARN,详情请参见配置自定义角色授权

      • 密钥:日志服务使用具备源Logstore读取权限的阿里云主账号或RAM用户的访问密钥来读取源Logstore中的数据。

        AccessKey IDAccessKey Secret中输入阿里云主账号或RAM用户的访问密钥,详情请参见配置访问密钥

      高级参数配置 对于加工规则脚本中需要使用的密码信息,例如数据库连接密码等,可以使用Key-Value的形式保存在密钥对中,在脚本中通过变量引用${key}的方式进行使用。
      您可以单击+,配置多组Key-Value对。例如config.vpc.vpc_id.test1:vpc-uf6mskb0b****n9yj,表示RDS实例所属的专有网络ID。高级参数配置
    4. 查看预览结果。
      • 如果加工规则语法错误或者权限配置错误,导致数据加工失败,请根据页面提示处理。
      • 如果确认数据加工结果无误,可保存加工结果,详情请参见创建数据加工任务

后续步骤

创建数据加工任务