lib/Search/Elasticsearch/Client/8_0/Direct/Cat.pm (24 lines of code) (raw):

# Licensed to Elasticsearch B.V under one or more agreements. # Elasticsearch B.V licenses this file to you under the Apache 2.0 License. # See the LICENSE file in the project root for more information package Search::Elasticsearch::Client::8_0::Direct::Cat; use Moo; with 'Search::Elasticsearch::Client::8_0::Role::API'; with 'Search::Elasticsearch::Role::Client::Direct'; use Search::Elasticsearch::Util qw(parse_params); use namespace::clean; __PACKAGE__->_install_api('cat'); #=================================== sub help { #=================================== my ( $self, $params ) = parse_params(@_); $params->{help} = 1; my $defn = $self->api->{'cat.help'}; $self->perform_request( $defn, $params ); } #=================================== around 'perform_request' => sub { #=================================== my $orig = shift; my $self = shift; my ( $defn, $params ) = parse_params(@_); if ( $params->{help} && $params->{help} ne 'false' ) { $defn = { %$defn, parts => {} }; } return $orig->( $self, $defn, $params ); }; 1; __END__ # ABSTRACT: A client for running cat debugging requests =head1 DESCRIPTION The C<cat> API in Elasticsearch provides information about your cluster and indices in a simple, easy to read text format, intended for human consumption. These APIs have a number of parameters in common: =over =item * C<help> Returns help about the API, eg: say $e->cat->allocation(help => 1); =item * C<v> Includes the column headers in the output: say $e->cat->allocation(v => 1); =item * C<h> Accepts a list of column names to be output, eg: say $e->cat->indices(h => ['health','index']); =item * C<bytes> Formats byte-based values as bytes (C<b>), kilobytes (C<k>), megabytes (C<m>) or gigabytes (C<g>) =back It does L<Search::Elasticsearch::Role::Client::Direct>. =head1 METHODS =head2 C<help()> say $e->cat->help; Returns the list of supported C<cat> APIs =head2 C<aliases()> say $e->cat->aliases( name => 'name' | \@names # optional ); Returns information about index aliases, optionally limited to the specified index/alias names. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat aliases docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-aliases.html> for more information. =head2 C<allocation()> say $e->cat->allocation( node_id => 'node' | \@nodes # optional ); Provides a snapshot of how shards have located around the cluster and the state of disk usage. Query string parameters: C<bytes>, C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat allocation docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-allocation.html> for more information. =head2 C<count()> say $e->cat->count( index => 'index' | \@indices # optional ); Provides quick access to the document count of the entire cluster, or individual indices. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat count docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-count.html> for more information. =head2 C<fielddata()> say $e->cat->fielddata( fields => 'field' | \@fields # optional ); Shows the amount of memory used by each of the specified `fields` (or all fields) loaded into fielddata. Query string parameters: C<bytes>, C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat fielddata docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-fielddata.html> for more information. =head2 C<health()> say $e->cat->health(); Provides a snapshot of how shards have located around the cluster and the state of disk usage. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<ts>, C<s>, C<v> See the L<cat health docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-health.html> for more information. =head2 C<indices()> say $e->cat->indices( index => 'index' | \@indices # optional ); Provides a summary of index size and health for the whole cluster or individual indices Query string parameters: C<bytes>, C<error_trace>, C<format>, C<h>, C<health>, C<help>, C<human>, C<local>, C<master_timeout>, C<pri>, C<s>, C<v> See the L<cat indices docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-indices.html> for more information. =head2 C<master()> say $e->cat->master(); Displays the master’s node ID, bound IP address, and node name. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat master docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-master.html> for more information. =head2 C<nodeattrs()> say $e->cat->nodeattrs(); Returns the node attributes set per node. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat nodeattrs docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-nodeattrs.html> for more information. =head2 C<nodes()> say $e->cat->nodes(); Provides a snapshot of all of the nodes in your cluster. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat nodes docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-nodes.html> for more information. =head2 C<pending_tasks()> say $e->cat->pending_tasks(); Returns any cluster-level tasks which are queued on the master. Query string parameters: C<error_trace>, C<format>, C<human>, C<local>, C<master_timeout>, C<h>, C<help>, C<s>, C<v> See the L<cat pending-tasks docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-pending-tasks.html> for more information. =head2 C<plugins()> say $e->cat->plugins(); Returns information about plugins installed on each node. Query string parameters: C<error_trace>, C<format>, C<human>, C<local>, C<master_timeout>, C<h>, C<help>, C<s>, C<v> See the L<cat plugins docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-plugins.html> for more information. =head2 C<recovery()> say $e->cat->recovery( index => 'index' | \@indices # optional ); Provides a view of shard replication. It will show information anytime data from at least one shard is copying to a different node. It can also show up on cluster restarts. If your recovery process seems stuck, try it to see if there’s any movement using C<recovery()>. Query string parameters: C<bytes>, C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<master_timeout>, C<s>, C<v> See the L<cat recovery docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-recovery.html> for more information. =head2 C<repositories()> say $e->cat->repositories() Provides a list of registered snapshot repositories. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat repositories docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-repositories.html> for more information. =head2 C<segments()> say $e->cat->segments( index => 'index' | \@indices # optional ); Provides low level information about the segments in the shards of an index. Query string parameters: C<bytes>, C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<s>, C<v> See the L<cat shards docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-segments.html> for more information. =head2 C<shards()> say $e->cat->shards( index => 'index' | \@indices # optional ); Provides a detailed view of what nodes contain which shards, the state and size of each shard. Query string parameters: C<bytes>, C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat shards docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-shards.html> for more information. =head2 C<snapshots()> say $e->cat->snapshots( repository => 'repository' | \@repositories # optional ) Provides a list of all snapshots that belong to the specified repositories. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<ignore_unavailable>, C<master_timeout>, C<s>, C<v> See the L<cat snapshots docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-snapshots.html> for more information. =head2 C<tasks()> say $e->cat->tasks() Provides a list of node-level tasks. Query string parameters: C<actions>, C<detailed>, C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<node_id>, C<parent_node>, C<parent_task>, C<s>, C<v> See the L<cat tasks docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/tasks.html> for more information. =head2 C<templates()> say $e->cat->templates( name => $name # optional ) Provides a list of index templates. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<s>, C<v> See the L<cat templates docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/templates.html> for more information. =head2 C<thread_pool()> say $e->cat->thread_pool( index => 'index' | \@indices # optional ); Shows cluster wide thread pool statistics per node. By default the C<active>, C<queue> and C<rejected> statistics are returned for the C<bulk>, C<index> and C<search> thread pools. Query string parameters: C<error_trace>, C<format>, C<h>, C<help>, C<human>, C<local>, C<master_timeout>, C<size>, C<s>, C<v> See the L<cat thread_pool docs|http://www.elastic.co/guide/en/elasticsearch/reference/current/cat-thread-pool.html> for more information.