Rewrite filters can be used to modify record contents. Logging operator currently supports the following rewrite functions:
Note: All rewrite functions support an optional
condition
which has the same syntax as the match filter.
Group unset 🔗︎
The group_unset
function removes from the record a group of fields matching a pattern.
filters:
- rewrite:
- group_unset:
pattern: "json.kubernetes.annotations.*"
Rename 🔗︎
The rename
function changes the name of an existing field name.
filters:
- rewrite:
- rename:
oldName: "json.kubernetes.labels.app"
newName: "json.kubernetes.labels.app.kubernetes.io/name"
Set 🔗︎
The set
function sets the value of a field.
filters:
- rewrite:
- set:
field: "json.kubernetes.cluster"
value: "prod-us"
Substitute (subst) 🔗︎
The subst
function replaces parts of a field with a replacement value based on a pattern.
filters:
- rewrite:
- subst:
pattern: "\d\d\d\d-\d\d\d\d-\d\d\d\d-\d\d\d\d"
replace: "[redacted bank card number]"
field: "MESSAGE"
The function also supports the type
and flags
fields for specifying pattern type and flags as described in the match expression regexp function.
Unset 🔗︎
You can unset macros or fields of the message.
Note: Unsetting a field completely deletes any previous value of the field.
filters:
- rewrite:
- unset:
field: "json.kubernetes.cluster"
Configuration 🔗︎
RewriteConfig 🔗︎
group_unset (*GroupUnsetConfig, optional) 🔗︎
Default: -
rename (*RenameConfig, optional) 🔗︎
Default: -
set (*SetConfig, optional) 🔗︎
Default: -
subst (*SubstituteConfig, optional) 🔗︎
Default: -
unset (*UnsetConfig, optional) 🔗︎
Default: -
RenameConfig 🔗︎
https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.37/administration-guide/78#TOPIC-1829213
oldName (string, required) 🔗︎
Default: -
newName (string, required) 🔗︎
Default: -
condition (*MatchExpr, optional) 🔗︎
Default: -
SetConfig 🔗︎
https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.37/administration-guide/77#TOPIC-1829207
field (string, required) 🔗︎
Default: -
value (string, required) 🔗︎
Default: -
condition (*MatchExpr, optional) 🔗︎
Default: -
SubstituteConfig 🔗︎
https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.37/administration-guide/77#TOPIC-1829206
pattern (string, required) 🔗︎
Default: -
replace (string, required) 🔗︎
Default: -
field (string, required) 🔗︎
Default: -
flags ([]string, optional) 🔗︎
Default: -
type (string, optional) 🔗︎
Default: -
condition (*MatchExpr, optional) 🔗︎
Default: -
UnsetConfig 🔗︎
https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.37/administration-guide/78#TOPIC-1829212
field (string, required) 🔗︎
Default: -
condition (*MatchExpr, optional) 🔗︎
Default: -
GroupUnsetConfig 🔗︎
https://www.syslog-ng.com/technical-documents/doc/syslog-ng-open-source-edition/3.37/administration-guide/78#TOPIC-1829212
pattern (string, required) 🔗︎
Default: -
condition (*MatchExpr, optional) 🔗︎
Default: -