zoukankan      html  css  js  c++  java
  • 用ELK分析支付宝账单(二)

    上一篇文章介绍了Logstash的配置,当我们将数据导入到ES后,就可以使用Kibana来分析和展示数据了。

    一、设置索引

    第一次登录Kibana,先设置索引样式(index pattern)。Kibana使用index pattern从ElasticSearch中提取数据。

    下面选择一个表示时间的字段,Kibana会按照这个字段来对数据进行过滤和排序,这里的@timestamp默认是数据导入到es的时间,但此时这里的@timestamp是我们在logstash的配置文件里使用date plugin转换成的CreationTime.

    二、Kibana Discover面板

    1.调整Time picker

    打开Discover面板,发现没有数据,原来是因为时间选择了今天。所以我们需要利用time picker选择@timestamp的值,展示历史数据。

    选择了Last 2 years后,数据就出现在面板上了

    2.利用Lucene Query来查找数据
    例如此时我要查找账单数额在100到200之间的,我用的query是Amount:[100 TO 200]

    这里的记录包含支出和收入,如果我只查找收入的记录呢?用的query应该是Amount:[100 TO 200] AND inOut:收入

     

    通过Save选项可以保存这个search的query.

     通过Open选项可以找到保存的query

    3.Filter
    在左侧的栏目中有所有的field,可以对记录进行过滤。下面以ProductName为例,点开ProductName,栏目中会显示这个field中top 5的value。
    每个value旁边有个加号和减号,加号表示只保留这部分的记录,减号表示排除这部分的记录。

    此时我只想看我在万宁的购买记录,所以我点击了Mannings后面的加号,此时只选择了ProductName=Mannings的记录了。

     

    可以add a filter

     

    还可以Edit Query DSL

     

    三、Kibana Visualize

    我觉得在Kibana,Visualization才是重头戏,我们可以创建很多个图表来展示和分析数据。

    例如此时我想展示2017.04到2018.03每个月的平均支出
    首先filter出inOut为支出的记录,设置Y轴为费用的平均数
    设置X轴为Date Histogram(日期柱状图),field为timestamp, 间隔为以月为单位。
    这里好像只能选择@timestamp作为field
    得到的图表如下:
    这里可以看出很明显2017年9月份的支出是最多的。
    2.根据商品名称创建了词云,过滤掉了收款和转账的记录,可见我有多爱华辉拉肠了。。。
    3.饼图
    把数量当做度量标准,按照费用分range
         
    最后得到如下饼图
  • 相关阅读:
    luogu 2491 [SDOI2011]消防 / 1099 树网的核 单调队列 + 树上问题
    BZOJ 1179: [Apio2009]Atm tarjan + spfa
    BZOJ 1112: [POI2008]砖块Klo Splay + 性质分析
    BZOJ 1596: [Usaco2008 Jan]电话网络 树形DP
    BZOJ 2060: [Usaco2010 Nov]Visiting Cows 拜访奶牛 树形DP
    CF286E Ladies' Shop FFT
    CF528D Fuzzy Search FFT
    BZOJ 3771: Triple 生成函数 + FFT
    BZOJ 3513: [MUTC2013]idiots FFT
    python爬虫网页解析之parsel模块
  • 原文地址:https://www.cnblogs.com/qingfei1994/p/8747822.html
Copyright © 2011-2022 走看看