Could not load sniffer class Fluent::Plugin::ElasticsearchSimpleSniffer #1305
-
Describe the bug:
Expected behaviour: Steps to reproduce the bug: Additional context: The root cause for that is, that the fluentd-elasticsearch-plugin uses the "default sniffer class" to refresh the elasticsearch node config after After configuring this sniffer class we see this error in the config-checker: (partial) solution: I could not find a way to add this command line parameter to fluentd when using the logging-operator helm chart. Environment details:
/kind bug |
Beta Was this translation helpful? Give feedback.
Replies: 5 comments 2 replies
-
If you could have access to your ingress-controller, you could enable routing by SNI by enable-ssl-passthrough, helm values are: controller:
extraArgs:
enable-ssl-passthrough: "true" |
Beta Was this translation helpful? Give feedback.
-
@PScharrenberg you can add extra arguments to fluentd with the |
Beta Was this translation helpful? Give feedback.
-
Documentation: This example should work: apiVersion: logging.banzaicloud.io/v1beta1
kind: Logging
metadata:
name: "logging-operator-logging"
spec:
fluentd:
extraArgs:
- "-r"
- "/usr/lib/ruby/gems/2.7.0/gems/fluent-plugin-elasticsearch-5.2.5/lib/fluent/plugin/elasticsearch_simple_sniffer.rb" PS: Path could change on newer fluentd images. |
Beta Was this translation helpful? Give feedback.
-
Thank you @genofire. That was the missing piece in the puzzle and I got it working by specifying the right versioned path to the sniffer class file. The remaining question is: I tried:
but it seem that the extraArgs strings get passed as shell escaped strings. In the best case I would expect that this parameter would be added as soon as |
Beta Was this translation helpful? Give feedback.
-
What I don't understand is: why does the plugin has to load that class runtime, when the class is part of the same plugin? I understand that it would need to load a custom class, but it is not the case here. Sorry but I'm totally against adding this kind of complexity to the operator until I understand why this mechanism is necessary. |
Beta Was this translation helpful? Give feedback.
What I don't understand is: why does the plugin has to load that class runtime, when the class is part of the same plugin? I understand that it would need to load a custom class, but it is not the case here.
Sorry but I'm totally against adding this kind of complexity to the operator until I understand why this mechanism is necessary.