s3
Milestone: 1
Stream events from files from a S3 bucket.
Each line from each file generates an event.
Files ending in ‘.gz’ are handled as gzip’ed files.
Synopsis
This is what it might look like in your config file:
input {
s3 {
add_field => ... # hash (optional), default: {}
backup_to_bucket => ... # string (optional), default: nil
backup_to_dir => ... # string (optional), default: nil
bucket => ... # string (required)
codec => ... # codec (optional), default: "plain"
credentials => ... # array (optional), default: nil
delete => ... # boolean (optional), default: false
interval => ... # number (optional), default: 60
prefix => ... # string (optional), default: nil
region_endpoint => ... # string, one of ["us-east-1", "us-west-1", "us-west-2", "eu-west-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "sa-east-1", "us-gov-west-1"] (optional), default: "us-east-1"
sincedb_path => ... # string (optional), default: nil
tags => ... # array (optional)
type => ... # string (optional)
}
}
Details
- Value type is hash
- Default value is {}
Add a field to an event
- Value type is string
- Default value is nil
Name of a S3 bucket to backup processed files to.
- Value type is string
- Default value is nil
Path of a local directory to backup processed files to.
- Value type is string
- There is no default value for this setting.
The name of the S3 bucket.
- DEPRECATED WARNING: This config item is deprecated. It may be removed in a further version.
- Value can be any of: "ASCII-8BIT", "Big5", "Big5-HKSCS", "Big5-UAO", "CP949", "Emacs-Mule", "EUC-JP", "EUC-KR", "EUC-TW", "GB18030", "GBK", "ISO-8859-1", "ISO-8859-2", "ISO-8859-3", "ISO-8859-4", "ISO-8859-5", "ISO-8859-6", "ISO-8859-7", "ISO-8859-8", "ISO-8859-9", "ISO-8859-10", "ISO-8859-11", "ISO-8859-13", "ISO-8859-14", "ISO-8859-15", "ISO-8859-16", "KOI8-R", "KOI8-U", "Shift_JIS", "US-ASCII", "UTF-8", "UTF-16BE", "UTF-16LE", "UTF-32BE", "UTF-32LE", "Windows-1251", "GB2312", "IBM437", "IBM737", "IBM775", "CP850", "IBM852", "CP852", "IBM855", "CP855", "IBM857", "IBM860", "IBM861", "IBM862", "IBM863", "IBM864", "IBM865", "IBM866", "IBM869", "Windows-1258", "GB1988", "macCentEuro", "macCroatian", "macCyrillic", "macGreek", "macIceland", "macRoman", "macRomania", "macThai", "macTurkish", "macUkraine", "CP950", "CP951", "stateless-ISO-2022-JP", "eucJP-ms", "CP51932", "GB12345", "ISO-2022-JP", "ISO-2022-JP-2", "CP50220", "CP50221", "Windows-1252", "Windows-1250", "Windows-1256", "Windows-1253", "Windows-1255", "Windows-1254", "TIS-620", "Windows-874", "Windows-1257", "Windows-31J", "MacJapanese", "UTF-7", "UTF8-MAC", "UTF-16", "UTF-32", "UTF8-DoCoMo", "SJIS-DoCoMo", "UTF8-KDDI", "SJIS-KDDI", "ISO-2022-JP-KDDI", "stateless-ISO-2022-JP-KDDI", "UTF8-SoftBank", "SJIS-SoftBank", "BINARY", "CP437", "CP737", "CP775", "IBM850", "CP857", "CP860", "CP861", "CP862", "CP863", "CP864", "CP865", "CP866", "CP869", "CP1258", "Big5-HKSCS:2008", "eucJP", "euc-jp-ms", "eucKR", "eucTW", "EUC-CN", "eucCN", "CP936", "ISO2022-JP", "ISO2022-JP2", "ISO8859-1", "CP1252", "ISO8859-2", "CP1250", "ISO8859-3", "ISO8859-4", "ISO8859-5", "ISO8859-6", "CP1256", "ISO8859-7", "CP1253", "ISO8859-8", "CP1255", "ISO8859-9", "CP1254", "ISO8859-10", "ISO8859-11", "CP874", "ISO8859-13", "CP1257", "ISO8859-14", "ISO8859-15", "ISO8859-16", "CP878", "CP932", "csWindows31J", "SJIS", "PCK", "MacJapan", "ASCII", "ANSI_X3.4-1968", "646", "CP65000", "CP65001", "UTF-8-MAC", "UTF-8-HFS", "UCS-2BE", "UCS-4BE", "UCS-4LE", "CP1251", "external", "locale"
- There is no default value for this setting.
The character encoding used in this input. Examples include “UTF-8”
and “cp1252”
This setting is useful if your log files are in Latin-1 (aka cp1252)
or in another character set other than UTF-8.
This only affects “plain” format logs since json is UTF-8 already.
- Value type is codec
- Default value is "plain"
The codec used for input data. Input codecs are a convenient method for decoding your data before it enters the input, without needing a separate filter in your Logstash pipeline.
- Value type is array
- Default value is nil
TODO(sissel): refactor to use ‘line’ codec (requires removing both gzip
support and readline usage). Support gzip through a gzip codec! ;)
The credentials of the AWS account used to access the bucket.
Credentials can be specified:
- As an [“id”,”secret”] array
- As a path to a file containing AWS_ACCESS_KEY_ID=… and AWS_SECRET_ACCESS_KEY=…
- In the environment (variables AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY)
- DEPRECATED WARNING: This config item is deprecated. It may be removed in a further version.
- Value type is boolean
- Default value is false
- Value type is boolean
- Default value is false
Whether to delete processed files from the original bucket.
- DEPRECATED WARNING: This config item is deprecated. It may be removed in a further version.
- Value can be any of: "plain", "json", "json_event", "msgpack_event"
- There is no default value for this setting.
The format of input data (plain, json, json_event)
- Value type is number
- Default value is 60
Interval to wait between to check the file list again after a run is finished.
Value is in seconds.
- DEPRECATED WARNING: This config item is deprecated. It may be removed in a further version.
- Value type is string
- There is no default value for this setting.
If format is “json”, an event sprintf string to build what
the display @message should be given (defaults to the raw JSON).
sprintf format strings look like %{fieldname}
If format is “json_event”, ALL fields except for @type
are expected to be present. Not receiving all fields
will cause unexpected results.
- Value type is string
- Default value is nil
If specified, the prefix the filenames in the bucket must match (not a regexp)
- DEPRECATED WARNING: This config item is deprecated. It may be removed in a further version.
- Value can be any of: "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "sa-east-1", "us-gov-west-1"
- There is no default value for this setting.
The AWS region for your bucket.
- Value can be any of: "us-east-1", "us-west-1", "us-west-2", "eu-west-1", "ap-southeast-1", "ap-southeast-2", "ap-northeast-1", "sa-east-1", "us-gov-west-1"
- Default value is "us-east-1"
The AWS region for your bucket.
- Value type is string
- Default value is nil
Where to write the since database (keeps track of the date
the last handled file was added to S3). The default will write
sincedb files to some path matching “$HOME/.sincedb*”
- Value type is array
- There is no default value for this setting.
Add any number of arbitrary tags to your event.
This can help with processing later.
- Value type is string
- There is no default value for this setting.
Add a ‘type’ field to all events handled by this input.
Types are used mainly for filter activation.
The type is stored as part of the event itself, so you can
also use the type to search for it in the web interface.
If you try to set a type on an event that already has one (for
example when you send an event from a shipper to an indexer) then
a new input will not override the existing type. A type set at
the shipper stays with that event for its life even
when sent to another Logstash server.
This is documentation from
lib/logstash/inputs/s3.rb