- Logstash Reference: other versions:
- Logstash Introduction
- Getting Started with Logstash
- How Logstash Works
- Setting Up and Running Logstash
- Breaking changes
- Upgrading Logstash
- Configuring Logstash
- Performance Troubleshooting Guide
- Monitoring APIs
- Working with plugins
- Input plugins
- beats
- cloudwatch
- couchdb_changes
- drupal_dblog
- elasticsearch
- eventlog
- exec
- file
- ganglia
- gelf
- gemfire
- generator
- github
- graphite
- heartbeat
- heroku
- http
- http_poller
- imap
- irc
- jdbc
- jmx
- kafka
- kinesis
- log4j
- lumberjack
- meetup
- pipe
- puppet_facter
- rabbitmq
- rackspace
- redis
- relp
- rss
- s3
- salesforce
- snmptrap
- sqlite
- sqs
- stdin
- stomp
- syslog
- tcp
- udp
- unix
- varnishlog
- websocket
- wmi
- xmpp
- zenoss
- zeromq
- Output plugins
- boundary
- circonus
- cloudwatch
- csv
- datadog
- datadog_metrics
- elasticsearch
- exec
- file
- ganglia
- gelf
- google_bigquery
- google_cloud_storage
- graphite
- graphtastic
- hipchat
- http
- influxdb
- irc
- jira
- juggernaut
- kafka
- librato
- loggly
- lumberjack
- metriccatcher
- mongodb
- nagios
- nagios_nsca
- newrelic
- opentsdb
- pagerduty
- pipe
- rabbitmq
- rackspace
- redis
- redmine
- riak
- riemann
- s3
- sns
- solr_http
- sqs
- statsd
- stdout
- stomp
- syslog
- tcp
- udp
- webhdfs
- websocket
- xmpp
- zabbix
- zeromq
- Filter plugins
- aggregate
- alter
- anonymize
- cidr
- cipher
- clone
- collate
- csv
- date
- de_dot
- dissect
- dns
- drop
- elapsed
- elasticsearch
- environment
- extractnumbers
- fingerprint
- geoip
- grok
- i18n
- json
- json_encode
- kv
- metaevent
- metricize
- metrics
- mutate
- oui
- prune
- punct
- range
- ruby
- sleep
- split
- syslog_pri
- throttle
- tld
- translate
- urldecode
- useragent
- uuid
- xml
- yaml
- zeromq
- Codec plugins
- Contributing to Logstash
- How to write a Logstash input plugin
- How to write a Logstash input plugin
- How to write a Logstash codec plugin
- How to write a Logstash filter plugin
- Contributing a Patch to a Logstash Plugin
- Logstash Plugins Community Maintainer Guide
- Submitting your plugin to RubyGems.org and the logstash-plugins repository
- Glossary of Terms
- Release Notes
file
editfile
editThis output writes events to files on disk. You can use fields from the event as parts of the filename and/or path.
By default, this output writes one event per line in json format.
You can customise the line format using the line
codec like
output { file { path => ... codec => line { format => "custom format: %{message}"} } }
Synopsis
editThis plugin supports the following configuration options:
Required configuration options:
file { path => ... }
Available configuration options:
Details
edit
codec
edit- Value type is codec
-
Default value is
"json_lines"
The codec used for output data. Output codecs are a convenient method for encoding your data before it leaves the output, without needing a separate filter in your Logstash pipeline.
create_if_deleted
edit- Value type is boolean
-
Default value is
true
If the a file is deleted, but an event is comming with the need to be stored in such a file, the plugin will created a gain this file. Default ⇒ true
dir_mode
edit- Value type is number
-
Default value is
-1
Dir access mode to use. Note that due to the bug in jruby system umask
is ignored on linux: https://github.com/jruby/jruby/issues/3426
Setting it to -1 uses default OS value.
Example: "dir_mode" => 0750
file_mode
edit- Value type is number
-
Default value is
-1
File access mode to use. Note that due to the bug in jruby system umask
is ignored on linux: https://github.com/jruby/jruby/issues/3426
Setting it to -1 uses default OS value.
Example: "file_mode" => 0640
filename_failure
edit- Value type is string
-
Default value is
"_filepath_failures"
If the generated path is invalid, the events will be saved into this file and inside the defined path.
flush_interval
edit- Value type is number
-
Default value is
2
Flush interval (in seconds) for flushing writes to log files. 0 will flush on every message.
gzip
edit- Value type is boolean
-
Default value is
false
Gzip the output stream before writing to disk.
message_format
(DEPRECATED)
edit- DEPRECATED WARNING: This configuration item is deprecated and may not be available in future versions.
- Value type is string
- There is no default value for this setting.
The format to use when writing events to the file. This value
supports any string and can include %{name}
and other dynamic
strings.
If this setting is omitted, the full json representation of the event will be written as a single line.
path
edit- This is a required setting.
- Value type is string
- There is no default value for this setting.
The path to the file to write. Event fields can be used here,
like /var/log/logstash/%{host}/%{application}
One may also utilize the path option for date-based log
rotation via the joda time format. This will use the event
timestamp.
E.g.: path => "./test-%{+YYYY-MM-dd}.txt"
to create
./test-2013-05-29.txt
If you use an absolute path you cannot start with a dynamic string.
E.g: /%{myfield}/
, /test-%{myfield}/
are not valid paths
On this page