Can you imagine any case when filtrationMode = null will be a desired behaviour? I doubt it and right now this is a default value. Because filtration implies some performance impact I would make this entire feature to be optional. Would be great to say "I do not need automatic labeling at all."
Labels behavior is unchanged: global label always translated as label (cause it is defined explicitly)
Now user defines the list of prop's names which will be translated to labels. The would not appear in message body to avoid duplication (the same as now)
Global label has more priority that mapped from property:
I.E. global label: Some: 42Log.Information("{Some}", "word")
Now concept of filters is unusable in 3/4 cases
And as it is told in https://github.com/serilog-contrib/serilog-sinks-grafana-loki/issues/81#issuecomment-1026919565: