数据可视化

209 阅读3分钟

背景

数据上报之后,日志存储是阿里云sls。为了方便更加直观的看到分析数据,有了数据之后,接下来要做的是两件事儿:

  1. 数据分析
  2. 数据可视化

image.png

前提

要做数据分析和数据可视化,前提条件是:

  1. 数据收集
  2. 添加索引

数据收集通过SDK在业务中使用,会上报到阿里云sls。添加索引是需要在阿里云的日志库里。

文档参考:如何配置索引_日志服务-阿里云帮助中心

数据分析

对收集的数据进行条件查询和聚合。 以PV\UV为例: PV: 页面访问量,即PageView,用户每次对网站的访问均被记录,用户对同一页面的多次访问,是访问量的累计,具体是指网站的是页面浏览量或者点击量。

UV独立访问用户数,即Unique Visitor,访问网站的一台电脑客户端为一个访客。根据IP地址来区分访客数,在一段时间内重复访问,也算是一个UV;UV价值=销售额/访客数。意思是每位访客带来多少销售额;UV价值越大,产品越迎合消费者需求,只有一定的推广投入才会带来相对应的UV。

注意:必要的时候也需要先对日志进行加工处理。

查询语法

日志服务提供一套查询语法用于设置查询条件,帮助您更有效地查询日志。

文档参考:查询语法介绍和相关示例_日志服务-阿里云帮助中心

SQL分析语法

文档参考: SQL分析语法与功能_日志服务-阿里云帮助中心

举个例子🌰

原始日志

image.png

PV

分析后的日志

image.png

图表呈现

image.png

语法格式

查询和分析语句之间用|隔开,左边是查询语句,右边是分析语句。具体语法见3.2, 3.3.

查询语句分析语句

data.type: pageload |  select split(json_extract_scalar(data, '$.title'), '-')[1] as pageTitle, count(*) as count GROUP BY pageTitle  ORDER BY count DESC

👆这个的含义是,统计各个页面的访问次数,也就是所说的PV。

  1. 查询语句:过滤出data.type的值是pageload的数据。
  2. 分析语句: 从数据的data对象里面找到page_url字段作为pageurl列,统计所有日志条数作为count列,根据pageurl对数据进行分组。查询结果见3.4.2.

单页面各个按钮点击量

分析后日志

image.png

图表呈现

image.png

语法格式
data.type: click and data.page_url: "https://convoy-daily.xiaomantuo.cn/business/order" | select json_extract_scalar(data, '$.btn_name') as btnName, count(*) as count GROUP BY btnName ORDER BY count DESC

👆这个的含义是:

  1. 查询语句: 过滤出data.type等于click并且data.page_url是业务订单的日志。
  2. **分析语句:**找到data.btn_name作为一列且命名为btnName,获取总的日志条数,根据btnName聚合分组,把分组结果按照count列降序排列。

用户浏览器分布

* | select
  concat(
    json_extract_scalar(dim, '$.browser_name'),
    json_extract_scalar(dim, '$.browser_version')
  ) as browser,
  count(distinct use_name) as count
WHERE
  tenant_id >= 700000
GROUP BY
  browser
ORDER BY
  count DESC
* | select
  json_extract_scalar(dim, '$.browser_name') as browser,
  count(distinct use_name) as count
  WHERE
  tenant_id >= 700000
GROUP BY
  browser
ORDER BY
  count DESC

image.png

数据可视化📈

对分析之后的数据,进行图形化的呈现。 目前日志服务支持的可视化方式有:

  1. 仪表盘: 日志服务提供的实时数据分析大盘。您可以在仪表盘查看多个基于查询与分析结果的统计图表。
  2. 统计图表: 统计图表是日志服务根据查询与分析语句渲染出的结果。日志服务提供表格、线图、柱状图等多种图表类型。
  3. 第三方可视化工具: 比如DataV、Grafana、Tableau等第三方可视化工具。

目前日志服务的可视化是通过仪表盘的方式呈现。 image.png 车队日志统计

更多的数据库查询分析语句,持续更新中,欢迎大家补充👏......