description |
---|
Collects Kubernetes Events |
Kubernetes exports it events through the API server. This input plugin allows to retrieve those events as logs and get them processed through the pipeline.
Key | Description | Default |
---|---|---|
db | Set a database file to keep track of recorded Kubernetes events | |
db.sync | Set a database sync method. values: extra, full, normal and off | normal |
interval_sec | Set the reconnect interval (seconds)* | 0 |
interval_nsec | Set the reconnect interval (sub seconds: nanoseconds)* | 500000000 |
kube_url | API Server end-point | https://kubernetes.default.svc |
kube_ca_file | Kubernetes TLS CA file | /var/run/secrets/kubernetes.io/serviceaccount/ca.crt |
kube_ca_path | Kubernetes TLS ca path | |
kube_token_file | Kubernetes authorization token file. | /var/run/secrets/kubernetes.io/serviceaccount/token |
kube_token_ttl | kubernetes token ttl, until it is reread from the token file. | 10m |
kube_request_limit | kubernetes limit parameter for events query, no limit applied when set to 0. | 0 |
kube_retention_time | Kubernetes retention time for events. | 1h |
kube_namespace | Kubernetes namespace to query events from. Gets events from all namespaces by default | |
tls.debug | Debug level between 0 (nothing) and 4 (every detail). | 0 |
tls.verify | Enable or disable verification of TLS peer certificate. | On |
tls.vhost | Set optional TLS virtual host. |
- * As of Fluent-Bit 3.1, this plugin uses a Kubernetes watch stream instead of polling. In versions before 3.1, the interval parameters are used for reconnecting the Kubernetes watch stream.
This input always runs in its own thread.
The Kubernetes service account used by Fluent Bit must have get
, list
, and watch
permissions to namespaces
and pods
for the namespaces watched in the
kube_namespace
configuration parameter. If you're using the helm chart to configure
Fluent Bit, this role is included.
In the following configuration file, the input plugin kubernetes_events collects events every 5 seconds (default for interval_nsec) and exposes them through the standard output plugin on the console.
[SERVICE]
flush 1
log_level info
[INPUT]
name kubernetes_events
tag k8s_events
kube_url https://kubernetes.default.svc
[OUTPUT]
name stdout
match *
Event timestamps are created from the first existing field, based on the following order of precedence:
lastTimestamp
firstTimestamp
metadata.creationTimestamp