Metricbeat command reference

edit

Metricbeat provides a command-line interface for starting Metricbeat and performing common tasks, like testing configuration files and loading dashboards.

The command-line also supports global flags for controlling global behaviors.

Use sudo to run the following commands if:

  • the config file is owned by root, or
  • Metricbeat is configured to capture data that requires root access
Commands

export

Exports the configuration, index template or a dashboard to stdout.

help

Shows help for any command.

keystore

Manages the secrets keystore.

modules

Manages configured modules.

run

Runs Metricbeat. This command is used by default if you start Metricbeat without specifying a command.

setup

Sets up the initial environment, including the index template, Kibana dashboards (when available), and machine learning jobs (when available).

test

Tests the configuration.

version

Shows information about the current version.

Also see Global flags.

export command

edit

Exports the configuration, index template or a dashboard to stdout. You can use this command to quickly view your configuration, see the contents of the index template or export a dashboard from Kibana.

SYNOPSIS

metricbeat export SUBCOMMAND [FLAGS]

SUBCOMMANDS

config
Exports the current configuration to stdout. If you use the -c flag, this command exports the configuration that’s defined in the specified file.
dashboard

Exporting a dashboard allows to store a dashboard on disk in a module and load it automatically. The following command can be used:

metricbeat export dashboard --id="dashboard-id" > dashboard.json

The dashboard-id can be found in the Kibana URL. By default export dashboard will write the dashboard to stdout. Above it’s written into dashboard.json so it can later imported again. The file contains the dashboard with all visualizations and searches. The index pattern is removed as it is expected to be loaded separately for Metricbeat.

The generated dashboard.json file can be copied into the kibana/6/dashboard directory of metricbeat and next time metricbeat setup dashboards is run the dashboard will be imported.

In case Kibana is not running on localhost:5061 the Metricbeat configuration under setup.kibana must be adjusted.

template
Exports the index template to stdout. You can specify the --es.version and --index flags to further define what gets exported.

FLAGS

--es.version VERSION
When specified along with template, exports an index template that is compatible with the specified version.
-h, --help
Shows help for the export command.
--index BASE_NAME
When specified along with template, sets the base name to use for the index template. If this flag is not specified, the default base name is metricbeat.

Also see Global flags.

EXAMPLES

metricbeat export config
metricbeat export template --es.version 6.4.3 --index myindexname

help command

edit

Shows help for any command. If no command is specified, shows help for the run command.

SYNOPSIS

metricbeat help COMMAND_NAME [FLAGS]
COMMAND_NAME
Specifies the name of the command to show help for.

FLAGS

-h, --help
Shows help for the help command.

Also see Global flags.

EXAMPLE

metricbeat help export

keystore command

edit

Manages the secrets keystore.

SYNOPSIS

metricbeat keystore SUBCOMMAND [FLAGS]

SUBCOMMANDS

add KEY
Adds the specified key to the keystore. Use the --force flag to overwrite an existing key. Use the --stdin flag to pass the value through stdin.
create
Creates a keystore to hold secrets. Use the --force flag to overwrite the existing keystore.
list
Lists the keys in the keystore.
remove KEY
Removes the specified key from the keystore.

FLAGS

--force
Valid with the add and create subcommands. When used with add, overwrites the specified key. When used with create, overwrites the keystore.
--stdin
When used with add, uses the stdin as the source of the key’s value.
-h, --help
Shows help for the keystore command.

Also see Global flags.

EXAMPLES

metricbeat keystore create
metricbeat keystore add ES_PWD
metricbeat keystore remove ES_PWD
metricbeat keystore list

see Secrets keystore for more examples.

modules command

edit

Manages configured modules. You can use this command to enable and disable specific module configurations defined in the modules.d directory. The changes you make with this command are persisted and used for subsequent runs of Metricbeat.

To see which modules are enabled and disabled, run the list subcommand.

SYNOPSIS

metricbeat modules SUBCOMMAND [FLAGS]

SUBCOMMANDS

disable MODULE_LIST
Disables the modules specified in the space-separated list.
enable MODULE_LIST
Enables the modules specified in the space-separated list.
list
Lists the modules that are currently enabled and disabled.

FLAGS

-h, --help
Shows help for the export command.

Also see Global flags.

EXAMPLES

metricbeat modules list
metricbeat modules enable apache nginx system

run command

edit

Runs Metricbeat. This command is used by default if you start Metricbeat without specifying a command.

SYNOPSIS

metricbeat run [FLAGS]

Or:

metricbeat [FLAGS]

FLAGS

-N, --N
Disables the publishing of events to the defined output. This option is useful only for testing Metricbeat.
--cpuprofile FILE
Writes CPU profile data to the specified file. This option is useful for troubleshooting Metricbeat.
-h, --help
Shows help for the run command.
--httpprof [HOST]:PORT
Starts an http server for profiling. This option is useful for troubleshooting and profiling Metricbeat.
--memprofile FILE
Writes memory profile data to the specified output file. This option is useful for troubleshooting Metricbeat.
--setup

Loads the initial setup, including Elasticsearch template, Kibana index pattern, Kibana dashboards and Machine learning jobs. If you want to use the command without running Metricbeat, use the setup command instead.

--system.hostfs MOUNT_POINT
Specifies the mount point of the host’s filesystem for use in monitoring a host from within a container.

Also see Global flags.

EXAMPLE

metricbeat run -e --setup

Or:

metricbeat -e --setup

setup command

edit

Sets up the initial environment, including the index template, Kibana dashboards (when available), and machine learning jobs (when available)

  • The index template ensures that fields are mapped correctly in Elasticsearch.
  • The Kibana dashboards make it easier for you to visualize Metricbeat data in Kibana.
  • The machine learning jobs contain the configuration information and metadata necessary to analyze data for anomalies.

Use this command instead of run --setup when you want to set up the environment without actually running Metricbeat and ingesting data.

SYNOPSIS

metricbeat setup [FLAGS]

FLAGS

--dashboards
Sets up the Kibana dashboards only. This option loads the dashboards from the Metricbeat package. For more options, such as loading customized dashboards, see Importing Existing Beat Dashboards in the Beats Developer Guide.
-h, --help
Shows help for the setup command.
--machine-learning
Sets up machine learning job configurations only.
--template
Sets up the index template only.

Also see Global flags.

EXAMPLE

metricbeat setup --dashboards

test command

edit

Tests the configuration.

SYNOPSIS

metricbeat test SUBCOMMAND [FLAGS]

SUBCOMMANDS

config
Tests the configuration settings.
modules [MODULE_NAME] [METRICSET_NAME]
Tests module settings for all configured modules. When you run this command, Metricbeat does a test run that applies the current settings, retrieves the metrics, and shows them as output. To test the settings for a specific module, specify MODULE_NAME. To test the settings for a specific metricset in the module, also specify METRICSET_NAME.
output
Tests that Metricbeat can connect to the output by using the current settings.

FLAGS

-h, --help
Shows help for the test command.

Also see Global flags.

EXAMPLES

metricbeat test config
metricbeat test modules system cpu

version command

edit

Shows information about the current version.

SYNOPSIS

metricbeat version [FLAGS]

FLAGS

-h, --help
Shows help for the version command.

Also see Global flags.

EXAMPLE

metricbeat version

Global flags

edit

These global flags are available whenever you run Metricbeat.

-E, --E "SETTING_NAME=VALUE"

Overrides a specific configuration setting. You can specify multiple overrides. For example:

metricbeat -E "name=mybeat" -E "output.elasticsearch.hosts=['http://myhost:9200']"

This setting is applied to the currently running Metricbeat process. The Metricbeat configuration file is not changed.

-c, --c FILE
Specifies the configuration file to use for Metricbeat. The file you specify here is relative to path.config. If the -c flag is not specified, the default config file, metricbeat.yml, is used.
-d, --d SELECTORS
Enables debugging for the specified selectors. For the selectors, you can specify a comma-separated list of components, or you can use -d "*" to enable debugging for all components. For example, -d "publish" displays all the "publish" related messages.
-e, --e
Logs to stderr and disables syslog/file output.
--path.config
Sets the path for configuration files. See the Directory layout section for details.
--path.data
Sets the path for data files. See the Directory layout section for details.
--path.home
Sets the path for miscellaneous files. See the Directory layout section for details.
--path.logs
Sets the path for log files. See the Directory layout section for details.
--strict.perms
Sets strict permission checking on configuration files. The default is -strict.perms=true. See Config file ownership and permissions in the Beats Platform Reference for more information.
-v, --v
Logs INFO-level messages.