通常,来自各种Elasticsearch API的结果以JSON格式显示。但是,JSON并非总是易于阅读。因此,Elasticsearch中提供了cat APIs功能,有助于使结果的打印格式更易于阅读和理解。cat API中使用了各种参数,这些参数具有不同的用途,例如-术语V使输出变得冗长。
让我们在本章中更详细地了解cat API。
详细的输出可以很好地显示cat命令的结果。在下面给出的示例中,我们获得了集群中存在的各种索引的详细信息。
GET /_cat/indices?v
运行上面的代码后,我们得到如下所示的响应:
health status index uuid pri repdocs.countdocs.deletedstore.sizepri.store.size yellow open schools RkMyEn2SQ4yUgzT6EQYuAA 1 1 2 1 21.6kb 21.6kb yellow open index_4_analysis zVmZdM1sTV61YJYrNXf1gg 1 1 0 0 283b 283b yellow open sensor-2018-01-01 KIrrHwABRB-ilGqTu3OaVQ 1 1 1 0 4.2kb 4.2kb yellow open colleges 3ExJbdl2R1qDLssIkwDAug 1 1 0 0 283b 283b
h参数(也称为标头)仅用于显示命令中提到的那些列。
GET /_cat/nodes?h=ip,port
运行上面的代码后,我们得到如下所示的响应:
127.0.0.1 9300
sort命令接受查询字符串,该字符串可以按查询中的指定列对表进行排序。默认排序是升序的,但是可以通过在列中添加:desc来更改。
下面的示例给出了按字段索引模式的降序排列的模板的结果。
GET _cat/templates?v&s=order:desc,index_patterns
运行上面的代码后,我们得到如下所示的响应:
name index_patterns order version .triggered_watches [.triggered_watches*] 2147483647 .watch-history-9 [.watcher-history-9*] 2147483647 .watches [.watches*] 2147483647 .kibana_task_manager [.kibana_task_manager] 0 7000099
count参数提供整个集群中文档总数的计数。
GET /_cat/count?v
运行上面的代码后,我们得到如下所示的响应:
epoch timestamp count 1557633536 03:58:56 17809