mirror of
https://github.com/elastic/logstash.git
synced 2025-04-24 14:47:19 -04:00
122 lines
6.3 KiB
Text
122 lines
6.3 KiB
Text
[[command-line-flags]]
|
|
=== Command-Line Flags
|
|
|
|
Logstash has the following flags. You can use the `--help` flag to display this information.
|
|
|
|
Instead of specifying options at the command line, we recommend that you control Logstash execution
|
|
by specifying options in the Logstash <<logstash-settings-file,settings file>>. Using a settings file
|
|
makes it easier for you to specify mutliple options, and it provides you with a single, versionable
|
|
file that you can use to start up Logstash consistently for each run.
|
|
|
|
Any flags that you set at the command line override the corresponding settings in the Logstash
|
|
<<logstash-settings-file,settings file>>.
|
|
|
|
added[5.0.0-alpha3, Command-line flags have dots instead of dashes in their names]
|
|
|
|
*`--node.name NAME`*::
|
|
Specify the name of this Logstash instance. If no value is given it will default to the current
|
|
hostname.
|
|
|
|
*`-f, --path.config CONFIG_PATH`*::
|
|
Load the Logstash config from a specific file or directory. If a directory is given, all
|
|
files in that directory will be concatenated in lexicographical order and then parsed as a
|
|
single config file. You can also specify wildcards (globs) and any matched files will
|
|
be loaded in the order described above.
|
|
|
|
*`-e, --config.string CONFIG_STRING`*::
|
|
Use the given string as the configuration data. Same syntax as the config file. If no
|
|
input is specified, then the following is used as the default input:
|
|
`input { stdin { type => stdin } }` and if no output is specified, then the
|
|
following is used as the default output: `output { stdout { codec => rubydebug } }`.
|
|
If you wish to use both defaults, please use the empty string for the `-e` flag.
|
|
The default is nil.
|
|
|
|
*`-w, --pipeline.workers COUNT`*::
|
|
Sets the number of pipeline workers to run. This option sets the number of workers that will,
|
|
in parallel, execute the filter and output stages of the pipeline. If you find that events are
|
|
backing up, or that the CPU is not saturated, consider increasing this number to better utilize
|
|
machine processing power. The default is 8.
|
|
|
|
*`-b, --pipeline.batch.size SIZE`*::
|
|
Size of batches the pipeline is to work in. This option defines the maximum number of events an
|
|
individual worker thread will collect from inputs before attempting to execute its filters and outputs.
|
|
The default is 125 events. Larger batch sizes are generally more efficient, but come at the cost of
|
|
increased memory overhead. You may have to increase the JVM heap size by setting the `LS_HEAP_SIZE`
|
|
variable to effectively use the option.
|
|
|
|
*`-u, --pipeline.batch.delay DELAY_IN_MS`*::
|
|
When creating pipeline batches, how long to wait while polling for the next event. This option defines
|
|
how long in milliseconds to wait before dispatching an undersized batch to filters and workers.
|
|
The default is 5ms.
|
|
|
|
*`--pipeline.unsafe_shutdown`*::
|
|
Force Logstash to exit during shutdown even if there are still inflight events
|
|
in memory. By default, Logstash will refuse to quit until all received events
|
|
have been pushed to the outputs. Enabling this option can lead to data loss during shutdown.
|
|
|
|
*`--path.data PATH`*::
|
|
This should point to a writable directory. Logstash will use this directory whenever it needs to store
|
|
data. Plugins will also have access to this path. The default is the `data` directory under
|
|
Logstash home.
|
|
|
|
*`-p, --path.plugins PATH`*::
|
|
A path of where to find custom plugins. This flag can be given multiple times to include
|
|
multiple paths. Plugins are expected to be in a specific directory hierarchy:
|
|
`PATH/logstash/TYPE/NAME.rb` where `TYPE` is `inputs`, `filters`, `outputs`, or `codecs`,
|
|
and `NAME` is the name of the plugin.
|
|
|
|
*`-l, --path.log FILE`*::
|
|
Write Logstash internal logs to the given file. Without this flag, Logstash will emit logs to standard output.
|
|
|
|
*`--log.level LEVEL`*::
|
|
Set the log level for Logstash. Possible values are:
|
|
* `fatal`: log very severe error messages that will usually be followed by the application aborting
|
|
* `error`: log errors
|
|
* `warn`: log warnings (this is the default)
|
|
* `info`: log verbose info (for users)
|
|
* `debug`: log debugging info (for developers)
|
|
* `trace`: log finer-grained messages beyond debugging info
|
|
|
|
*`--config.debug`*::
|
|
Show the fully compiled configuration as a debug log message (you must also have `--log.level=debug` enabled).
|
|
WARNING: The log message will include any 'password' options passed to plugin configs as plaintext, and may result
|
|
in plaintext passwords appearing in your logs!
|
|
|
|
*`-i, --interactive SHELL`*::
|
|
Drop to shell instead of running as normal. Valid shells are "irb" and "pry".
|
|
|
|
*`-V, --version`*::
|
|
Emit the version of Logstash and its friends, then exit.
|
|
|
|
*`-t, --config.test_and_exit`*::
|
|
Check configuration for valid syntax and then exit. Note that grok patterns are not checked for
|
|
correctness with this flag. Logstash can read multiple config files from a directory. If you combine this
|
|
flag with `--log.level=debug`, Logstash will log the combined config file, annotating
|
|
each config block with the source file it came from.
|
|
|
|
*`-r, --config.reload.automatic`*::
|
|
Monitor configuration changes and reload whenever the configuration is changed.
|
|
NOTE: Use SIGHUP to manually reload the config. The default is false.
|
|
|
|
*`--config.reload.interval RELOAD_INTERVAL`*::
|
|
How frequently to poll the configuration location for changes, in seconds. The default is every 3 seconds.
|
|
|
|
*`--http.host HTTP_HOST`*::
|
|
Web API binding host. This option specifies the bind address for the metrics REST endpoint. The default is "127.0.0.1".
|
|
|
|
*`--http.port HTTP_PORT`*::
|
|
Web API http port. This option specifies the bind port for the metrics REST endpoint. The default is 9600-9700.
|
|
This setting accepts a range of the format 9600-9700. Logstash will pick up the first available port.
|
|
|
|
*`--log.format FORMAT`*::
|
|
Specify if Logstash should write its own logs in JSON form (one event per line) or in plain text
|
|
(using Ruby's Object#inspect). The default is "plain".
|
|
|
|
*`--path.settings SETTINGS_DIR`*::
|
|
Set the directory containing the `logstash.yml` <<logstash-settings-file,settings file>> as well
|
|
as the log4j logging configuration. This can also be set through the LS_SETTINGS_DIR environment variable.
|
|
The default is the `config` directory under Logstash home.
|
|
|
|
*`-h, --help`*::
|
|
Print help
|
|
|