3

I installed fluent bit using YAML files on my K8s instance following the documentation. I just modified the Elasticsearch instance pointing to my own instance.

All fluent-bit daemonsets are running but it is not sending any logs to my ES.

I checked pods logs in every node and I don't see any errors, just "stream processor started" messages.

Is there any other way to check for errors on fluent bit beside "kubectl logs" on daemontsets?

Rico
  • 58,485
  • 12
  • 111
  • 141
gtama
  • 33
  • 1
  • 3

1 Answers1

4

You can try mofifying the fluent-bit.conf [SERVICE] section of the fluent-bit-config ConfigMap to something like this:

  fluent-bit.conf: |
    [SERVICE]
        Flush         1
        Log_Level     debug <--- Change this to debug
        Daemon        off
        Parsers_File  parsers.conf
        HTTP_Server   On
        HTTP_Listen   0.0.0.0
        HTTP_Port     2020

    @INCLUDE input-kubernetes.conf
    @INCLUDE filter-kubernetes.conf
    @INCLUDE output-elasticsearch.conf

Then restart the fluent-bit pod(s)

kubectl delete pod fluent-bit-xxxxx

You'll get a lot of logs so you may not want to keep that pod up for a long time. After you are done debugging you can follow the same procedure to change it back to info.

Rico
  • 58,485
  • 12
  • 111
  • 141
  • 1
    I'm running my k8s on CentOS and docker was using journal as logging driver. And I figured out this because a fluent bit warning showing up about /var/log/containers/ folder being empty. Thank you! – gtama Jul 07 '20 at 03:48