1.0.6 • Published 6 years ago

escmd v1.0.6

Weekly downloads
1
License
ISC
Repository
github
Last release
6 years ago

escmd

ElasticSearch command line - create, delete, copy, manage indices and aliases

npm install -g escmd

$ esc

alias - Create an <alias> for an <index-pattern>
cp - copy <src> index to <dest> index. Use --nomappings to copy docs only
info - show basic info about the host (useful to check you're working on teh right cluster)
ls - list indices matching optional pattern. Use --verbose for more info on each index
mv - move <src> index to <dest> index. Use --nomappings to move docs only (not mappings)
rm - delete <index, alias or pattern...>. WARNING: cannot be reversed
Use . to separate commands

Options

--host=<url> Set the host name for all subsequent operations

--verbose Generate noisy output (depends on the command(s) suuplied, if any)

--settings.index=number_of_shards:X,number_of_replicas:Y Set the default values when an index is created

--trace Show detailed ES library logging

A single . can be used to separate commands. For example, copy, alias and list the indices:

$ esc cp twitter twatter . alias twotter twatter . ls

twatter
twitter
twotter -> twatter

Contributing

Add new commands in the tools/ dieectory, using the same name as the command you want to create. The module should export a single async function which receives four parameters:

It's nice to set module.exports.help to an informative string do esc by itself can describe your command.

Your function should run to completion (await is allowed) and return. The return value is not used. Exceptions are handled by esc and you don't need to handle everything - esc will try and print something useful in any case. Throwing a string (as opposed to an Error object) will terminate execution and print the string to stderr.

Here's tools/alias.js to show you how simple it is.

/* ES alias - create an alias from 1 or more indices */

module.exports = async function(es,args,config,flags) {
	if (args.length < 2) throw module.exports.help ;

	await es.indices.putAlias({
		name:args[0],
		index:args.slice(1)
	});
}

module.exports.help = "Create an <alias> for an <index-pattern>".magenta ;
1.0.6

6 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago