esctl is a command line client built on go-elasticsearch for interacting with elasticsearch clusters.
Run one of
./build/make-build.sh
to build only core features./build/make-buildext.sh
to build core features and extensions./build/make-build-opt.sh
to build core features and all optional features (including extensions) You will end up with a binaryesctl
that can then be put into your $PATH
Run esctl config generate
to generate a config file at ~/.elastic/config
with a similar structure to
kubeconfig
Every command has a list of its subcommands and usually correspond to an elastic
endpoint. For example, the cat
command corresponds to /_cat/
and cat pending-tasks
corresponds to /_cat/pending_tasks
cat Endpoints under /_cat
config Interact with a config file
get Get a resource
help Help about any command
version Print the version number of esctl client/server
kibana (planned) Kibana endpoints
admin (planned) Useful commands for elasticsearch administrators
In the case of contributing to the core tool or existing extensions, you should raise an issue, fork the repo, and submit a PR referencing the issue
In the case of extending the tool, you should
create an extension by doing the following:
Run ./build/gen-extension.sh \<your-extension/package name\>
Build!
See this
This link may be a valuable resource in seeing which api endpoints are avaiable.