极简日志的分析方法

极简模式的分析需求

极简模式是按照行为单位,把一行日志打包作为一个字段上传到日志服务。对于用户而言,极简模式避免了去配置复杂的正则式,极大的简化了日志接入云端的流程,上传后只需要开启全文索引即可完成搜索。

但是,在某些场景下,我们需要对日志中的某些部分进行分析,例如分析日志中的ip,这种情况下,就需要通过SQL先完成一些字段提取工作,然后再进行分析。

普通文本的分析

分析IP

例如下图中的Nginx访问日志。打包到了一个content字段中。

极简日志的分析方法

当我们需要分析日志中的IP归属地的时候, 首先要从这一串文本中提取出IP日志。为了提取IP地址,我们有这些手段可以使用:

  1. 通过正则式函数
  2. 通过json 函数
  3. 通过url函数

上边的文本,不是json也不是url,而是一串普通文本,那么我们只能用正则式函数进行提取

* | select  content, regexp_extract(content, '(\d+\.\d+\.\d+\.\d+)',1)

通过以上函数,可以从content中提取ip:

极简日志的分析方法

IP 提取完成之后,接下来就可以IP函数分析用户的地理位置信息了。

例如分析省份:

* | select   ip_to_province(regexp_extract(content, '(\d+\.\d+\.\d+\.\d+)',1)) as ip , count(1) as count group by ip

极简日志的分析方法

分析URL参数

极简日志的分析方法

在nging日志中, 如果我们想要提取url中的type这个参数,需要用到通过url函数

* | select url_extract_path(request),request from
      ( 
       
       select    regexp_extract(content, 'GET\s+([\S]+)',1) as request from log
      )

极简日志的分析方法

从图中可以看出,成功提取了type这个参数,url还有N多好玩的用户,例如提取域名,url路径等,期待你的挖掘。

日志上云进阶

日志服务(Log Service,简称LOG/原SLS)是针对实时数据一站式全托管服务,在阿里集团经历大量大数据场景锤炼而成。
提供日志类数据采集、智能查询分析、消费与投递等功能,全面提升海量日志处理/分析能力。

日志服务用户手册,最完整的资料

日志服分析试用Demo,Nginx日志、CDN日志、DDOS日志、SLB日志Demo,grafana、Datav大屏Demo

5分钟搭建网站实时分析:Grafana+日志服务实战

以下5个子帐号供试用,请随机选择一个登录,登录地址,若登录不成功请换一个子帐号尝试:

用户名 密码
sls_reader1@1654218965343050 pnX-32m-MHH-xbm
sls_reader2@1654218965343050 pnX-32m-MHH-xbm
sls_reader3@1654218965343050 pnX-32m-MHH-xbm
sls_reader4@1654218965343050 pnX-32m-MHH-xbm
sls_reader5@1654218965343050 pnX-32m-MHH-xbm
上一篇:POLARDB · 最佳实践 · POLARDB不得不知道的秘密


下一篇:PgSQL · 应用案例 · PostgreSQL 图像搜索实践