日志服务提供Data Explorer功能,帮助您简单、快速地构建查询和分析语句。本文介绍通过Data Explorer构建查询和分析语句的案例。

查询示例

示例1

  • 查询包含GET、PUT、POST中任意值的日志。
    • Data Explorer配置配置查询条件
    • 查询语句
      (GET or PUT or POST)
  • 查询同时包含GET、PUT、POST中的日志。
    • Data Explorer配置辅助输入
    • 查询语句
      (GET and PUT and POST)

示例2

查询user_agent字段的值中包含Chrome的日志。

  • Data Explorer配置配置查询条件
  • 查询语句
    user_agent : Chrome

示例3

查询请求时间小于1秒的成功请求的日志中包含SLS字符串的日志。

  • Data Explorer配置配置查询条件
  • 查询语句
    SLS and request_time < 1 and ( status >= 200 and status <= 299 )

分析示例

示例1

在网站访问日志中,统计过去一天内网站请求的每小时平均耗时以及随时间的变化情况。

  • Data Explorer配置Data Explorer
  • 查询和分析语句
    |
    select
      date_trunc('hour', __time__) as time,
      avg("request_time") as "_col0"
    FROM  log
    group by
      time
    order by
      time
    limit
      10000
  • 查询分析结果

    执行查询分析操作后,您可以在统计图表中查看结果。此处通过线图(Pro版本)展示网站请求平均耗时随时间的变化情况。

    Data Explorer

示例2

在网站访问日志中,统计HTTP请求方法Top 5的分布情况。

  • Data Explorer配置Data Explorer
  • 查询和分析语句
    |
    select
      "request_method",
      count,
      count * 1.0 / sum(count) over() as percent
    FROM  (
        select
          count(1) as count,
          "request_method"
        FROM      log
        group by
          "request_method"
        order by
          count desc
        limit
          5
      )
  • 查询分析结果

    执行查询分析操作后,您可以在统计图表中查看结果。此处通过柱状图(Pro版本)展示HTTP请求方法Top 5的分布情况。

    Data Explorer

示例3

在RDS数据库审计日志中,统计每个RDS实例的SQL平均执行延迟情况。

  • Data Explorer配置Data Explorer
  • 查询和分析语句
    |
    select
      "instance_id",
      avg("latency") as "平均延迟"
    FROM  log
    group by
      "instance_id"
    order by
      "平均延迟" desc
  • 查询分析结果

    执行查询分析操作后,您可以在统计图表中查看结果。此处通过表格(Pro版本)展示每个RDS实例的SQL平均执行延迟情况。

    Data Explorer

示例4

在RDS数据库审计日志中,统计执行频率Top 10的SQL语句及其执行次数,并统计每个SQL语句同比昨天的执行次数的变化情况。

  • Data Explorer配置Data Explorer
  • 查询和分析语句
    |
    select
      "sql",
      diff [1] as current_value,
      diff [2] as previous_value,
      (diff [1]-diff [2]) as change_value
    FROM  (
        select
          "sql",
          compare("count", 86400) as diff
        FROM      (
            select
              "sql",
              count,
              count * 1.0 / sum(count) over() as percent
            FROM          (
                select
                  count(1) as count,
                  "sql"
                FROM              log
                group by
                  "sql"
                order by
                  count desc
                limit
                  10
              )
          )
        group by
          "sql"
      )
  • 查询分析结果

    执行查询分析操作后,您可以在统计图表中查看结果。此处通过表格(Pro版本)展示统计结果。

    Data Explorer