zoukankan      html  css  js  c++  java
  • 搜索引擎elasticsearch监控利器cat命令

    一、Cat通用参数

    参数名 指令示例 功能
    Verbose GET /_cat/XXX/?v 开启详细输出
    Help GET /_cat/XXX/?help 输出可用的列
    Headers GET /_cat/XXX/?h=column1,column2 指定输出的列
    Sort GET /_cat/XXX/?v&s=column1,column2:desc,column3 指定输出的列进行排序,默认按照升序排序
    Format GET /_cat/XXX?format=json 指定响应返回的数据格式:text(默认),json,yaml,smile,cbor。
    (通过设置Accept的HTTP头部的多媒体格式的优先级更高)

    二、cat命令

    命令 示例 功能
    aliases GET /_cat/XXX/aliases?v
    GET /_cat/aliases/alias1,aliase2,aliase3
    查询当前配置索引,过滤器,路由的别名
    如果需要指定一至多个别名,则以逗号隔开
    allocation GET /_cat/allocation?v 查询每个节点上分配的分片(shard)的数量和每个分片(shard)所使用的硬盘容量
    count GET /_cat/count?v
    GET /_cat/count/[index]?v
    快速查询当前整个集群或者指定索引的document的数量(不包括删除的但是还没有清理掉的document)
    fielddata GET /_cat/fielddata?v
    GET /_cat/fielddata?v&fields=XXX
    GET /_cat/fielddata/field1,field2,field3?v
    查询集群中每个节点中的fileddata所使用的堆内存
    指定fields
    指定多个field
    health GET /_cat/health?v
    GET /_cat/health?v&ts=false
    查询当前集群的健康信息(同/_cluster/health)
    ts用于控制是否显示时间戳(timestamp)
    1、常见的用途是用于监测节点之间的健康值
    2、通过循环使用该命令,用于追踪大集群恢复的时间
    /_cat/health; sleep 120; done green:
    每个索引的primary shard和replica shard都是active状态的
    yellow:
    每个索引的primary shard都是active状态的,但是部分replica shard不是active状态,处于不可用的状态
    red:
    不是所有索引的primary shard都是active状态的,部分索引有数据丢失了
    indices GET /_cat/indices/index1?v 查询指定索引index1的相关信息(组成一个索引(index)的shard数量,document的数量,删除的doc数量,主存大小和所有索引的总存储大小(包括replicas)
    其中document的数量和删除document的数量是lucense层级的,包括所有隐藏的document数量
    要获取Elasticsearch层级的精确的document数量可以使用 cat count或者Count API
    master GET /_cat/master?v 仅用于显示master的节点ID,绑定IP地址,节点名称
    nodeattrs GET /_cat/nodeattrs?v 输出显示自定义节点属性
    nodes GET /_cat/nodes?v
    GET /_cat/nodes?v&full_id=false
    输出当前集群的拓扑结构(包括当前节点所在的地方和整个集群的相关信息等)
    full_id(true/false)用于是否格式化ID字段以显示ID的全长或者简写
    pending tasks GET /_cat/pending_tasks?v 输出集群中正在执行的任务(集群层级的变化,比如:创建索引,更新mapping,分配或者fail shard)同 /_cluster/pending_tasks
    plugins GET /_cat/plugins?v 输出每个节点正在运行的插件信息
    recovery GET /_cat/recovery?v 提供一个视图关于索引分片 正在恢复或者已经完成恢复的相关信息
    恢复事件操作可以发生在集群中一个索引分片从一个节点移动到另外一个节点上。可以发生在快照恢复期间,一个replication层级的变化,节点失败,或者节点启动的时候。节点启动的恢复操作也叫本地存储恢复(当一个节点启动的时候分片从硬盘上被加载到)
    repositories GET /_cat/repositories?v 输出集群中注册快照存储库
    thread pool GET /_cat/thread_pool 输出每个节点集群范围的线程池统计信息,默认情况下返回正在活动,队列和被拒绝的统计信息
    shards GET /_cat/shards

    GET /_cat/shards/twitt*
    输出节点包含分片的详细信息(当前分片是primary shard还是 replica shard,doc的数量,硬盘上占用的字节已经该节点被分配在哪里等)
    指定索引(模糊匹配)
    这个命令可以用于查看分片的迁移情况和分片的状态
    segments GET /_cat/segments?v

    GET /_cat/segments/index1,index1
    输出索引分片中关于segment的低层级的信息(包括索引名称,分片数量,doc数量等),提供的信息类似于_segments端点
    查询指定索引(index1,index2)的segments信息
    snapshots GET /_cat/snapshots/repo1?v 输出属于指定仓库的快照信息(snapshots)
    每个快照信息包括了它被启动和被停止的信息。
    templates GET /_cat/templates?v
    GET /_cat/templates/templateName1
    GET /_cat/templates/template*
    输出当前正在存在的模板信息
    输出指定模板的信息

    三、示例

    查询aurajike索引下的总文档数和有效文档数

    当从es删除文档时,是软删除的,es通过升级文档的版本号来插入新文档,旧版本的文档自然就失效了。旧版本的文档会异步的在未来的某个时间段被真正删除。
    所以对于某个索引在某个时刻的文档数,总存在两个数字,一个总文档数,一个是有效的:

    查询索引aurajike的总文档数
    总文档数:662133
    另已删除:126914

    GET _cat/indices/aurajike?v
    
    health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
    green open aurajike *** 2 2 662133 126914 156.6mb 59.8mb

    查询索引aurajike的真实文档数
    真实文档数:11169

    GET /_cat/count/aurajike?v
    
    epoch timestamp count
    1562902995 03:43:15 11169

    查询aurajike各分片的调度情况

    主分片0调度在node2,主分片1调度在node3,剩余4个副本分片均衡调度

    GET /_cat/shards/aurajike?v
    
    index shard prirep state docs store ip node
    aurajike 1 r STARTED 330684 23.7mb ip1 node1
    aurajike 1 r STARTED 330684 25.4mb ip2 node2
    aurajike 1 p STARTED 330684 24.1mb ip3 node3
    aurajike 0 r STARTED 331449 23.8mb ip1 node1
    aurajike 0 p STARTED 331449 35.7mb ip2 node2
    aurajike 0 r STARTED 331449 23.7mb ip3 node3
  • 相关阅读:
    java Activiti 工作流引擎 SSM 框架模块设计方案
    自定义表单 Flowable 工作流 Springboot vue.js 前后分离 跨域 有代码生成器
    数据库设计的十个最佳实践
    activiti 汉化 stencilset.json 文件内容
    JAVA oa 办公系统模块 设计方案
    java 考试系统 在线学习 视频直播 人脸识别 springboot框架 前后分离 PC和手机端
    集成 nacos注册中心配置使用
    “感恩节 ”怼记
    仓颉编程语言的一点期望
    关于System.out.println()与System.out.print("\n")的区别
  • 原文地址:https://www.cnblogs.com/JoZSM/p/11177758.html
Copyright © 2011-2022 走看看