App-ElasticSearch-Utilities
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
scripts/es-aggregate.pl view on Meta::CPAN
push @by, pop @by_param;
}
}
output({color=>'yellow'}, YAML::XS::Dump($q->aggregations)) if $opt->show_aggs;
my $result = $q->execute();
my $aggs = $result->{aggregations};
output({color=>'cyan'}, YAML::XS::Dump($aggs)) if $opt->show_raw;
my $flat = es_flatten_aggs($aggs);
foreach my $row ( @{ $flat } ) {
if ( $opt->json ) {
output({data=>1}, $json->encode({ @{ $row } }));
}
else {
output({data=>1}, join("\t", grep { !/\.hits$/ } @{ $row }));
}
}
__END__
=pod
=head1 NAME
es-aggregate.pl - Multi-level aggregations in Elasticsearch
=head1 VERSION
version 8.8
=head1 SYNOPSIS
es-aggregate.pl [search string] --agg <aggregate>
Options:
--agg Aggregation string, can be specified multiple times
--by Perform an aggregation using the result of this, example: --by cardinality:src_ip
--asc Change default sort order to ascending
--show-agg Show the aggregate clause being sent to the backend
--show-raw Show the raw results from the backend
--json Output as newline delimited JSON
From App::ElasticSearch::Utilities:
--local Use localhost as the elasticsearch host
--host ElasticSearch host to connect to
--port HTTP port for your cluster
--proto Defaults to 'http', can also be 'https'
--http-username HTTP Basic Auth username
--password-exec Script to run to get the users password
--insecure Don't verify TLS certificates
--cacert Specify the TLS CA file
--capath Specify the directory with TLS CAs
--cert Specify the path to the client certificate
--key Specify the path to the client private key file
--noop Any operations other than GET are disabled, can be negated with --no-noop
--timeout Timeout to ElasticSearch, default 10
--keep-proxy Do not remove any proxy settings from %ENV
--index Index to run commands against
--base For daily indexes, reference only those starting with "logstash"
(same as --pattern logstash-* or logstash-DATE)
--pattern Use a pattern to operate on the indexes
--days If using a pattern or base, how many days back to go, default: 1
See also the "CONNECTION ARGUMENTS" and "INDEX SELECTION ARGUMENTS" sections from App::ElasticSearch::Utilities.
From CLI::Helpers:
--data-file Path to a file to write lines tagged with 'data => 1'
--tags A comma separated list of tags to display
--color Boolean, enable/disable color, default use git settings
--verbose Incremental, increase verbosity (Alias is -v)
--debug Show developer output
--debug-class Show debug messages originating from a specific package, default: main
--quiet Show no output (for cron)
--syslog Generate messages to syslog as well
--syslog-facility Default "local0"
--syslog-tag The program name, default is the script name
--syslog-debug Enable debug messages to syslog if in use, default false
--nopaste Use App::Nopaste to paste output to configured paste service
--nopaste-public Defaults to false, specify to use public paste services
--nopaste-service Comma-separated App::Nopaste service, defaults to Shadowcat
=head1 OPTIONS
=over 8
=item B<help>
Print this message and exit
=item B<manual>
Print detailed help with examples
=back
=head1 AUTHOR
Brad Lhotsky <brad@divisionbyzero.net>
=head1 COPYRIGHT AND LICENSE
This software is Copyright (c) 2024 by Brad Lhotsky.
This is free software, licensed under:
The (three-clause) BSD License
=cut
view all matches for this distributionview release on metacpan - search on metacpan
( run in 0.474 second using v1.00-cache-2.02-grep-82fe00e-cpan-2c419f77a38b )