zoukankan      html  css  js  c++  java
  • ELK 信息统计分析-1

    Aggregations

    格式如下:

       

    "aggregations"{ //可以简写为aggs

    "<aggregation_name>":{ //名称

    "<aggregation_type>":{ //agg 类型

    <aggregation_body> //统计字段...

    },

    [,"aggregations":{ [ <sub_aggregation>]+ } ]?

    }

    [ , "<aggregation_name_2>" : { … } ]*

    }

       

    以下所有测试数据均来自iis日志

       

    最值、求和、均值统计

       

    1.最小值统计

       

    {

    "query": {

    "match_all": {}

    },

    "aggs": {

    "min_size": {

    "min": { 统计最小值

    "field": "time-taken" 取字段 time-taken 最小值

    }

    }

    }

    }

       

    最大、求和、求平均统计只需要在类型上写max、sum、avg

       

       

    Stats、extended_stats

       

    Stats 是多值统计,返回值包括最大值、最小值、求和、计数、均值等

    {

    "query": {

    "match_all": {}

    },

    "aggs": {

    "multi_stats": {

    "stats": {

    "field": "time-taken"

    }

    }

    }

    }

       

       

    extended_stats 可以在上述输出结果上添加平方和、方差、标准差等测度。

       

       

       

    Terms 用于对指定字段的内容进行分布统计,

    {

    "query": {

    "match_all": {}

    },

    "aggs": {

    "terms_sc-status": {

    "terms": {

    "field": "sc-status",

    "order": {

    "_term": "desc"

    }

    }

    }

    },

    "size": 20

    }

       

       

       

    嵌套查询,获取每个状态下的最大、最小、平均值

       

    {

    "query": {

    "match_all": {}

    },

    "aggs": {

    "terms_sc-status": {

    "terms": {

    "field": "sc-status",

    "order": {

    "_term": "desc"

    }

    },

    "aggs": {

    "avg_size": {

    "stats": {

    "field": "time-taken"

    }

    }

    }

    }

    },

    "size": 20

    }

       

       

    包含和不包含

    {

    "query": {

    "match_all": {}

    },

    "aggs": {

    "terms_sc-status": {

    "terms": {

    "field": "cs-method",

    "order": {

    "_term": "desc"

    },

    "include": "g.*", 包含,匹配所有字符用 .*

    "exclude": "p.*" 不包含

    },

    "aggs": {

    "avg_size": {

    "stats": {

    "field": "time-taken"

    }

    }

    }

    }

    },

    "size": 20

    }

       

       

       

    Cardinality 获取某个字段去重后的数量

       

    {

    "query": {

    "match_all": {}

    },

    "aggs": {

    "aggname": {

    "cardinality": {

    "field": "sc-status"

    }

    },

    "aggname1": {

    "terms": {

    "field": "sc-status"

    }

    }

    },

    "size": 20

    }

       

       

       

       

  • 相关阅读:
    window下cmd命令行的个人使用——集录
    前端之 —— node.js摸爬打滚之路(一)
    GIT常用命令以及作用【备忘】
    如何将Eclipse中的开源项目使用到Android Studio中
    2015读书目录
    Android4.0+锁屏程序开发——设置锁屏页面篇
    Android4.0+锁屏程序开发——按键屏蔽篇
    【光速使用开源框架系列】数据库框架OrmLite
    【光速使用开源框架系列】图片加载框架ImageLoader
    Android输入法部分遮挡UI的问题(与EditText框相切)
  • 原文地址:https://www.cnblogs.com/liuyuhua/p/5260682.html
Copyright © 2011-2022 走看看