App-ElasticSearch-Utilities
view release on metacpan or search on metacpan
lib/App/ElasticSearch/Utilities/Metrics.pm view on Meta::CPAN
my @stats = ();
if( my $res = $self->request('_cluster/health')->content ) {
push @stats,
{ key => "cluster.nodes.total", value => $res->{number_of_nodes}, },
{ key => "cluster.nodes.data", value => $res->{number_of_data_nodes}, },
{ key => "cluster.shards.primary", value => $res->{active_primary_shards}, },
{ key => "cluster.shards.active", value => $res->{active_shards}, },
{ key => "cluster.shards.initializing", value => $res->{initializing_shards}, },
{ key => "cluster.shards.relocating", value => $res->{relocating_shards}, },
{ key => "cluster.shards.unassigned", value => $res->{unassigned_shards}, },
;
}
push @stats, $self->_collect_index_blocks();
return @stats;
}
sub _collect_index_blocks {
my ($self) = @_;
scripts/es-status.pl view on Meta::CPAN
output({clear=>1,color=>"cyan"}, "Cluster Health Check", "-="x20);
if( defined $state && exists $state->{master_node} && exists $state->{nodes}{$state->{master_node}}) {
output({kv=>1,color=>'cyan'}, master => $state->{nodes}{$state->{master_node}}->{name});
}
output({kv=>1,color=>"cyan"}, "name", $stats->{cluster_name});
output({kv=>1,color=>$stats->{status}}, "health", $stats->{status});
output({kv=>1}, "nodes", $stats->{number_of_nodes});
if( $stats->{status} ne "green" ) {
output({kv=>1,color=>"red"}, "shards_unassigned", $stats->{unassigned_shards});
output({kv=>1,color=>"magenta"}, "shards_relocating", $stats->{relocating_shards});
output({kv=>1,color=>"yellow"}, "shards_initializing", $stats->{initializing_shards});
}
else {
verbose({kv=>1}, "shards_unassigned", $stats->{unassigned_shards});
verbose({kv=>1}, "shards_relocating", $stats->{relocating_shards});
verbose({kv=>1}, "shards_initializing", $stats->{initializing_shards});
}
}
sub handle_segments {
output({clear=>1,color=>"cyan"}, "Index Segmentation Check", "-="x20);
my @indexes = es_indices();
foreach my $index ( sort @indexes ) {
output({color=>"cyan"},"$index:");
my $stats = es_index_segments($index);
( run in 1.116 second using v1.01-cache-2.11-cpan-71847e10f99 )