esctl is a command line client built on go-elasticsearch for interacting with elasticsearch clusters.
Run one of
./build/make-build.shto build only core features./build/make-buildext.shto build core features and extensions./build/make-build-opt.shto build core features and all optional features (including extensions) You will end up with a binaryesctlthat 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.