ClusterInput
fluentbit.fluent.io / v1alpha2
apiVersion: fluentbit.fluent.io/v1alpha2
kind: ClusterInput
metadata:
name: example
apiVersion
string
APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
kind
string
Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadata
object
spec object
InputSpec defines the desired state of ClusterInput
alias
string
A user friendly alias name for this input plugin.
Used in metrics for distinction of each configured input.
collectd object
Collectd defines the Collectd input plugin configuration
listen
string
Set the address to listen to, default: 0.0.0.0
port
integer
Set the port to listen to, default: 25826
format:
int32minimum:
1maximum:
65535
typesDB
string
Set the data specification file,default: /usr/share/collectd/types.db
customPlugin object
CustomPlugin defines Custom Input configuration.
config
string
Config holds any unsupported plugins classic configurations,
if ConfigFileFormat is set to yaml, this filed will be ignored
yamlConfig
object
YamlConfig holds the unsupported plugins yaml configurations, it only works when the ConfigFileFormat is yaml
dummy object
Dummy defines Dummy Input configuration.
dummy
string
Dummy JSON record.
rate
integer
Events number generated per second.
format:
int32
samples
integer
Sample events to generate.
format:
int32
tag
string
Tag name associated to all records coming from this plugin.
execWasi object
ExecWasi defines the exec wasi input plugin configuration
accessiblePaths
[]string
Specify the whitelist of paths to be able to access paths from WASM programs.
bufSize
string
Size of the buffer (check unit sizes for allowed values)
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
intervalNSec
integer
Polling interval (nanoseconds).
format:
int64
intervalSec
integer
Polling interval (seconds).
format:
int32
parser
string
Specify the name of a parser to interpret the entry as a structured message.
threaded
boolean
Indicates whether to run this input in its own thread. Default: false.
wasiPath
string
The place of a WASM program file.
wasmHeapSize
string
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
wasmStackSize
string
Size of the stack size of Wasm execution. Review unit sizes for allowed values.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$fluentBitMetrics object
FluentBitMetrics defines Fluent Bit Metrics Input configuration.
scrapeInterval
string
The rate at which metrics are collected from the host operating system. default is 2 seconds.
scrapeOnStart
boolean
Scrape metrics upon start, useful to avoid waiting for 'scrape_interval' for the first round of metrics.
tag
string
forward object
Forward defines forward input plugin configuration
bufferMaxSize
string
Specify maximum buffer memory size used to receive a forward message.
The value must be according to the Unit Size specification.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
bufferchunkSize
string
Set the initial buffer size to store incoming data.
This value is used too to increase buffer size as required.
The value must be according to the Unit Size specification.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
listen
string
Listener network interface.
port
integer
Port for forward plugin instance.
format:
int32minimum:
1maximum:
65535
tag
string
in_forward uses the tag value for incoming logs. If not set it uses tag from incoming log.
tagPrefix
string
Adds the prefix to incoming event's tag
threaded
string
Threaded mechanism allows input plugin to run in a separate thread which helps to desaturate the main pipeline.
unixPath
string
Specify the path to unix socket to receive a forward message. If set, Listen and port are ignnored.
unixPerm
string
Set the permission of unix socket file.
http object
HTTP defines the HTTP input plugin configuration
bufferChunkSize
string
This sets the chunk size for incoming incoming JSON messages.
These chunks are then stored/managed in the space available by buffer_max_size,default 512K.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
bufferMaxSize
string
Specify the maximum buffer size in KB to receive a JSON message,default 4M.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
listen
string
The address to listen on,default 0.0.0.0
port
integer
The port for Fluent Bit to listen on,default 9880
format:
int32minimum:
1maximum:
65535
successfulHeader
string
Add an HTTP header key/value pair on success. Multiple headers can be set. Example: X-Custom custom-answer.
successfulResponseCode
integer
It allows to set successful response code. 200, 201 and 204 are supported,default 201.
format:
int32
tagKey
string
Specify the key name to overwrite a tag. If set, the tag will be overwritten by a value of the key.
tls object
Fluent Bit provides integrated support for Transport Layer Security (TLS) and it predecessor Secure Sockets Layer (SSL) respectively.
caFile
string
Absolute path to CA certificate file
caPath
string
Absolute path to scan for certificate files
crtFile
string
Absolute path to Certificate file
debug
integer
Set TLS debug verbosity level.
It accept the following values: 0 (No debug), 1 (Error), 2 (State change), 3 (Informational) and 4 Verbose
enum:
0, 1, 2, 3, 4format:
int32
keyFile
string
Absolute path to private Key file
keyPassword object
Optional password for tls.key_file file
valueFrom object
ValueSource defines how to find a value's key.
secretKeyRef object
Selects a key of a secret in the pod's namespace
key
string required
The key of the secret to select from. Must be a valid secret key.
name
string
Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
optional
boolean
Specify whether the Secret or its key must be defined
verify
boolean
Force certificate validation
vhost
string
Hostname to be used for TLS SNI extension
kubernetesEvents object
KubernetesEvents defines the KubernetesEvents input plugin configuration
db
string
Set a database file to keep track of recorded Kubernetes events
dbSync
string
Set a database sync method. values: extra, full, normal and off
intervalNsec
integer
Set the polling interval for each channel (sub seconds: nanoseconds).
format:
int64
intervalSec
integer
Set the polling interval for each channel.
format:
int32
kubeCAFile
string
CA certificate file
kubeCAPath
string
Absolute path to scan for certificate files
kubeNamespace
string
Kubernetes namespace to query events from. Gets events from all namespaces by default
kubeRequestLimit
integer
kubernetes limit parameter for events query, no limit applied when set to 0.
format:
int32
kubeRetentionTime
string
Kubernetes retention time for events.
kubeTokenFile
string
Token file
kubeTokenTTL
string
configurable 'time to live' for the K8s token. By default, it is set to 600 seconds.
After this time, the token is reloaded from Kube_Token_File or the Kube_Token_Command.
kubeURL
string
API Server end-point
pauseOnChunksOverlimit
string
Specifies if the input plugin should be paused (stop ingesting new data) when the storage.max_chunks_up value is reached.
enum:
on, off
storageType
string
Specifies the buffering mechanism for use with the input plugin, requires storage.path to be set in the service.
enum:
filesystem, memory
tag
string
Tag name associated to all records coming from this plugin.
tlsDebug
integer
Debug level between 0 (nothing) and 4 (every detail).
format:
int32
tlsVerify
boolean
When enabled, turns on certificate validation when connecting to the Kubernetes API server.
tlsVhost
string
Set optional TLS virtual host.
logLevel
string
enum:
off, error, warning, info, debug, tracemqtt object
MQTT defines the MQTT input plugin configuration
listen
string
Listener network interface, default: 0.0.0.0
port
integer
TCP port where listening for connections, default: 1883
format:
int32minimum:
1maximum:
65535nginx object
Nginx defines the Nginx input plugin configuration
host
string
Name of the target host or IP address to check, default: localhost
nginxPlus
boolean
Turn on NGINX plus mode,default: true
port
integer
Port of the target nginx service to connect to, default: 80
format:
int32minimum:
1maximum:
65535
statusURL
string
The URL of the Stub Status Handler,default: /status
nodeExporterMetrics object
NodeExporterMetrics defines Node Exporter Metrics Input configuration.
path object
procfs
string
The mount point used to collect process information and metrics.
sysfs
string
The path in the filesystem used to collect system metrics.
scrapeInterval
string
The rate at which metrics are collected from the host operating system, default is 5 seconds.
tag
string
Tag name associated to all records coming from this plugin.
openTelemetry object
OpenTelemetry defines the OpenTelemetry input plugin configuration
bufferChunkSize
string
This sets the chunk size for incoming incoming JSON messages. These chunks are then stored/managed in the space available by buffer_max_size(default 512K).
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
bufferMaxSize
string
Specify the maximum buffer size in KB to receive a JSON message(default 4M).
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
listen
string
The address to listen on,default 0.0.0.0
port
integer
The port for Fluent Bit to listen on.default 4318.
format:
int32minimum:
1maximum:
65535
rawTraces
boolean
Route trace data as a log message(default false).
successfulResponseCode
integer
It allows to set successful response code. 200, 201 and 204 are supported(default 201).
format:
int32
tag
string
opentelemetry uses the tag value for incoming metrics.
tagFromURI
boolean
If true, tag will be created from uri. e.g. v1_metrics from /v1/metrics
tagKey
string
Specify the key name to overwrite a tag. If set, the tag will be overwritten by a value of the key.
processors
object
Processors defines the processors configuration
prometheusScrapeMetrics object
PrometheusScrapeMetrics defines Prometheus Scrape Metrics Input configuration.
host
string
The host of the prometheus metric endpoint that you want to scrape
metricsPath
string
The metrics URI endpoint, that must start with a forward slash, deflaut: /metrics
port
integer
The port of the promethes metric endpoint that you want to scrape
format:
int32minimum:
1maximum:
65535
scrapeInterval
string
The interval to scrape metrics, default: 10s
tag
string
Tag name associated to all records coming from this plugin
statsd object
StatsD defines the StatsD input plugin configuration
listen
string
Listener network interface, default: 0.0.0.0
port
integer
UDP port where listening for connections, default: 8125
format:
int32minimum:
1maximum:
65535syslog object
Syslog defines the Syslog input plugin configuration
bufferChunkSize
string
By default the buffer to store the incoming Syslog messages, do not allocate the maximum memory allowed, instead it allocate memory when is required.
The rounds of allocations are set by Buffer_Chunk_Size. If not set, Buffer_Chunk_Size is equal to 32000 bytes (32KB).
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
bufferMaxSize
string
Specify the maximum buffer size to receive a Syslog message. If not set, the default size will be the value of Buffer_Chunk_Size.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
listen
string
If Mode is set to tcp or udp, specify the network interface to bind, default: 0.0.0.0
mode
string
Defines transport protocol mode: unix_udp (UDP over Unix socket), unix_tcp (TCP over Unix socket), tcp or udp
enum:
unix_udp, unix_tcp, tcp, udp
parser
string
Specify an alternative parser for the message. If Mode is set to tcp or udp then the default parser is syslog-rfc5424 otherwise syslog-rfc3164-local is used.
If your syslog messages have fractional seconds set this Parser value to syslog-rfc5424 instead.
path
string
If Mode is set to unix_tcp or unix_udp, set the absolute path to the Unix socket file.
port
integer
If Mode is set to tcp or udp, specify the TCP port to listen for incoming connections.
format:
int32minimum:
1maximum:
65535
receiveBufferSize
string
Specify the maximum socket receive buffer size. If not set, the default value is OS-dependant,
but generally too low to accept thousands of syslog messages per second without loss on udp or unix_udp sockets. Note that on Linux the value is capped by sysctl net.core.rmem_max.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
sourceAddressKey
string
Specify the key where the source address will be injected.
tag
string
Specify a tag to route incoming logs through different parsers to different outputs.
tls object
Specify TLS connector options.
caFile
string
Absolute path to CA certificate file
caPath
string
Absolute path to scan for certificate files
crtFile
string
Absolute path to Certificate file
debug
integer
Set TLS debug verbosity level.
It accept the following values: 0 (No debug), 1 (Error), 2 (State change), 3 (Informational) and 4 Verbose
enum:
0, 1, 2, 3, 4format:
int32
keyFile
string
Absolute path to private Key file
keyPassword object
Optional password for tls.key_file file
valueFrom object
ValueSource defines how to find a value's key.
secretKeyRef object
Selects a key of a secret in the pod's namespace
key
string required
The key of the secret to select from. Must be a valid secret key.
name
string
Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
optional
boolean
Specify whether the Secret or its key must be defined
verify
boolean
Force certificate validation
vhost
string
Hostname to be used for TLS SNI extension
unixPerm
integer
If Mode is set to unix_tcp or unix_udp, set the permission of the Unix socket file, default: 0644
format:
int32systemd object
Systemd defines Systemd Input configuration.
db
string
Specify the database file to keep track of monitored files and offsets.
dbSync
string
Set a default synchronization (I/O) method. values: Extra, Full, Normal, Off.
This flag affects how the internal SQLite engine do synchronization to disk,
for more details about each option please refer to this section.
note: this option was introduced on Fluent Bit v1.4.6.
enum:
Extra, Full, Normal, Off
maxEntries
integer
When Fluent Bit starts, the Journal might have a high number of logs in the queue.
In order to avoid delays and reduce memory usage, this option allows to specify the maximum number of log entries that can be processed per round.
Once the limit is reached, Fluent Bit will continue processing the remaining log entries once Journald performs the notification.
maxFields
integer
Set a maximum number of fields (keys) allowed per record.
path
string
Optional path to the Systemd journal directory,
if not set, the plugin will use default paths to read local-only logs.
pauseOnChunksOverlimit
string
Specifies if the input plugin should be paused (stop ingesting new data) when the storage.max_chunks_up value is reached.
enum:
on, off
readFromTail
string
Start reading new entries. Skip entries already stored in Journald.
enum:
on, off
storagePath
string
Set an optional location in the file system to store streams and chunks of data.
If this parameter is not set, Input plugins can only use in-memory buffering.
storageType
string
Specify the buffering mechanism to use. It can be memory or filesystem
enum:
filesystem, memory
stripUnderscores
string
Remove the leading underscore of the Journald field (key). For example the Journald field _PID becomes the key PID.
enum:
on, off
systemdFilter
[]string
Allows to perform a query over logs that contains a specific Journald key/value pairs, e.g: _SYSTEMD_UNIT=UNIT.
The Systemd_Filter option can be specified multiple times in the input section to apply multiple filters as required.
systemdFilterType
string
Define the filter type when Systemd_Filter is specified multiple times. Allowed values are And and Or.
With And a record is matched only when all of the Systemd_Filter have a match.
With Or a record is matched when any of the Systemd_Filter has a match.
enum:
And, Or
tag
string
The tag is used to route messages but on Systemd plugin there is an extra functionality:
if the tag includes a star/wildcard, it will be expanded with the Systemd Unit file (e.g: host.* => host.UNIT_NAME).
tail object
Tail defines Tail Input configuration.
bufferChunkSize
string
Set the initial buffer size to read files data.
This value is used too to increase buffer size.
The value must be according to the Unit Size specification.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
bufferMaxSize
string
Set the limit of the buffer size per monitored file.
When a buffer needs to be increased (e.g: very long lines),
this value is used to restrict how much the memory buffer can grow.
If reading a file exceed this limit, the file is removed from the monitored file list
The value must be according to the Unit Size specification.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
db
string
Specify the database file to keep track of monitored files and offsets.
dbLocking
boolean
Specify that the database will be accessed only by Fluent Bit.
dbSync
string
Set a default synchronization (I/O) method. Values: Extra, Full, Normal, Off.
enum:
Extra, Full, Normal, Off
disableInotifyWatcher
boolean
DisableInotifyWatcher will disable inotify and use the file stat watcher instead.
dockerMode
boolean
If enabled, the plugin will recombine split Docker log lines before passing them to any parser as configured above.
This mode cannot be used at the same time as Multiline.
dockerModeFlushSeconds
integer
Wait period time in seconds to flush queued unfinished split lines.
format:
int64
dockerModeParser
string
Specify an optional parser for the first line of the docker multiline mode. The parser name to be specified must be registered in the parsers.conf file.
excludePath
string
Set one or multiple shell patterns separated by commas to exclude files matching a certain criteria,
e.g: exclude_path=*.gz,*.zip
ignoredOlder
string
Ignores records which are older than this time in seconds.
Supports m,h,d (minutes, hours, days) syntax.
Default behavior is to read all records from specified files.
Only available when a Parser is specificied and it can parse the time of a record.
pattern:
^\d+(m|h|d)?$
key
string
When a message is unstructured (no parser applied), it's appended as a string under the key name log.
This option allows to define an alternative name for that key.
memBufLimit
string
Set a limit of memory that Tail plugin can use when appending data to the Engine.
If the limit is reach, it will be paused; when the data is flushed it resumes.
multiline
boolean
If enabled, the plugin will try to discover multiline messages
and use the proper parsers to compose the outgoing messages.
Note that when this option is enabled the Parser option is not used.
multilineFlushSeconds
integer
Wait period time in seconds to process queued multiline messages
format:
int64
multilineParser
string
This will help to reassembly multiline messages originally split by Docker or CRI
Specify one or Multiline Parser definition to apply to the content.
offsetKey
string
If enabled, Fluent Bit appends the offset of the current monitored file as part of the record.
The value assigned becomes the key in the map
parser
string
Specify the name of a parser to interpret the entry as a structured message.
parserFirstline
string
Name of the parser that matchs the beginning of a multiline message.
Note that the regular expression defined in the parser must include a group name (named capture)
parserN
[]string
Optional-extra parser to interpret and structure multiline entries.
This option can be used to define multiple parsers.
path
string
Pattern specifying a specific log files or multiple ones through the use of common wildcards.
pathKey
string
If enabled, it appends the name of the monitored file as part of the record.
The value assigned becomes the key in the map.
pauseOnChunksOverlimit
string
Specifies if the input plugin should be paused (stop ingesting new data) when the storage.max_chunks_up value is reached.
enum:
on, off
readFromHead
boolean
For new discovered files on start (without a database offset/position),
read the content from the head of the file, not tail.
refreshIntervalSeconds
integer
The interval of refreshing the list of watched files in seconds.
format:
int64
rotateWaitSeconds
integer
Specify the number of extra time in seconds to monitor a file once is rotated in case some pending data is flushed.
format:
int64
skipEmptyLines
boolean
Skips empty lines in the log file from any further processing or output.
skipLongLines
boolean
When a monitored file reach it buffer capacity due to a very long line (Buffer_Max_Size),
the default behavior is to stop monitoring that file.
Skip_Long_Lines alter that behavior and instruct Fluent Bit to skip long lines
and continue processing other lines that fits into the buffer size.
storagePath
string
Set an optional location in the file system to store streams and chunks of data.
If this parameter is not set, Input plugins can only use in-memory buffering.
storageType
string
Specify the buffering mechanism to use. It can be memory or filesystem
enum:
filesystem, memory
tag
string
Set a tag (with regex-extract fields) that will be placed on lines read.
E.g. kube.<namespace_name>.<pod_name>.<container_name>
tagRegex
string
Set a regex to exctract fields from the file
threaded
string
Threaded mechanism allows input plugin to run in a separate thread which helps to desaturate the main pipeline.
tcp object
TCP defines the TCP input plugin configuration
bufferSize
string
Specify the maximum buffer size in KB to receive a JSON message. If not set, the default size will be the value of Chunk_Size.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
chunkSize
string
By default the buffer to store the incoming JSON messages, do not allocate the maximum memory allowed, instead it allocate memory when is required.
The rounds of allocations are set by Chunk_Size in KB. If not set, Chunk_Size is equal to 32 (32KB).
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
format
string
Specify the expected payload format. It support the options json and none.
When using json, it expects JSON maps, when is set to none, it will split every record using the defined Separator (option below).
listen
string
Listener network interface,default 0.0.0.0
port
integer
TCP port where listening for connections,default 5170
format:
int32minimum:
1maximum:
65535
separator
string
When the expected Format is set to none, Fluent Bit needs a separator string to split the records. By default it uses the breakline character (LF or 0x10).
udp object
UDP defines the UDP input plugin configuration
bufferSize
string
BufferSize Specify the maximum buffer size in KB to receive a JSON message.
If not set, the default size will be the value of Chunk_Size.
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
chunkSize
string
By default the buffer to store the incoming JSON messages, do not allocate the maximum memory allowed,
instead it allocate memory when is required.
The rounds of allocations are set by Chunk_Size in KB. If not set, Chunk_Size is equal to 32 (32KB).
pattern:
^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
format
string
Format Specify the expected payload format. It support the options json and none.
When using json, it expects JSON maps, when is set to none,
it will split every record using the defined Separator (option below).
listen
string
Listen Listener network interface, default: 0.0.0.0
port
integer
Port Specify the UDP port where listening for connections, default: 5170
format:
int32minimum:
1maximum:
65535
separator
string
Separator When the expected Format is set to none, Fluent Bit needs a separator string to split the records. By default it uses the breakline character (LF or 0x10).
sourceAddressKey
string
SourceAddressKey Specify the key where the source address will be injected.
threaded
string
Threaded mechanism allows input plugin to run in a separate thread which helps to desaturate the main pipeline.
No matches. Try .spec.alias for an exact path