Fluent Bit is a fast and lightweight log processor and forwarder or Linux, OSX and BSD family operating systems.
To add the fluent helm repo, run:
helm repo add fluent https://fluent.github.io/helm-chartsTo install a release named fluent-bit, run:
helm install fluent-bit fluent/fluent-bithelm show values fluent/fluent-bitFluent Bit allows us to build filter to modify the incoming records using custom Lua scripts.
First, you should add your Lua scripts to luaScripts in values.yaml, templating is supported.
luaScripts:
filter_example.lua: |
function filter_name(tag, timestamp, record)
-- put your lua code here.
endAfter that, the Lua scripts will be ready to be used as filters. So next step is to add your Fluent bit filter to config.filters in values.yaml, for example:
config:
filters: |
[FILTER]
Name lua
Match <your-tag>
script /fluent-bit/scripts/filter_example.lua
call filter_nameUnder the hood, the chart will:
- Create a configmap using
luaScripts. - Add a volumeMounts for each Lua scripts using the path
/fluent-bit/scripts/<script>. - Add the Lua script's configmap as volume to the pod.
Remember to set the script attribute in the filter using /fluent-bit/scripts/, otherwise the file will not be found by fluent bit.