configmap.yaml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. apiVersion: v1
  2. kind: ConfigMap
  3. metadata:
  4. name: {{ template "fluent-bit-loki.fullname" . }}
  5. namespace: {{ .Release.Namespace }}
  6. labels:
  7. app: {{ template "fluent-bit-loki.name" . }}
  8. chart: {{ template "fluent-bit-loki.chart" . }}
  9. release: {{ .Release.Name }}
  10. heritage: {{ .Release.Service }}
  11. data:
  12. fluent-bit.conf: |-
  13. [SERVICE]
  14. HTTP_Server On
  15. HTTP_Listen 0.0.0.0
  16. HTTP_PORT {{ .Values.config.port }}
  17. Flush 1
  18. Daemon Off
  19. Log_Level {{ .Values.config.loglevel }}
  20. Parsers_File parsers.conf
  21. [INPUT]
  22. Name tail
  23. Tag kube.*
  24. Path /var/log/containers/*.log
  25. Parser docker
  26. DB /run/fluent-bit/flb_kube.db
  27. Mem_Buf_Limit {{ .Values.config.memBufLimit }}
  28. Buffer_Chunk_size {{ .Values.config.bufChunkSize }}
  29. Buffer_Max_size {{ .Values.config.bufMaxSize }}
  30. [FILTER]
  31. Name kubernetes
  32. Match kube.*
  33. Kube_URL https://kubernetes.default.svc:443
  34. Merge_Log On
  35. K8S-Logging.Exclude {{ .Values.config.k8sLoggingExclude }}
  36. K8S-Logging.Parser {{ .Values.config.k8sLoggingParser }}
  37. [Output]
  38. Name grafana-loki
  39. Match *
  40. {{- if and .Values.loki.user .Values.loki.password }}
  41. Url {{ .Values.loki.serviceScheme }}://{{ .Values.loki.user }}:{{ .Values.loki.password }}@{{ include "loki.serviceName" . }}:{{ .Values.loki.servicePort }}{{ .Values.loki.servicePath }}
  42. {{- else }}
  43. Url {{ .Values.loki.serviceScheme }}://{{ include "loki.serviceName" . }}:{{ .Values.loki.servicePort }}{{ .Values.loki.servicePath }}
  44. {{- end }}
  45. TenantID {{ .Values.config.tenantID }}
  46. BatchWait {{ .Values.config.batchWait }}
  47. BatchSize {{ int .Values.config.batchSize }}
  48. Labels {{ .Values.config.labels }}
  49. RemoveKeys {{ include "helm-toolkit.utils.joinListWithComma" .Values.config.removeKeys }}
  50. AutoKubernetesLabels {{ .Values.config.autoKubernetesLabels }}
  51. LabelMapPath /fluent-bit/etc/labelmap.json
  52. LineFormat {{ .Values.config.lineFormat }}
  53. LogLevel {{ .Values.config.loglevel }}
  54. {{- range $extraOutput := .Values.config.extraOutputs }}
  55. [OUTPUT]
  56. {{- range $key,$value := $extraOutput }}
  57. {{ $key }} {{ $value }}
  58. {{- end }}
  59. {{- end }}
  60. parsers.conf: |-
  61. [PARSER]
  62. Name docker
  63. Format json
  64. Time_Key time
  65. Time_Format %Y-%m-%dT%H:%M:%S.%L
  66. {{- range $parser:= .Values.config.parsers }}
  67. [PARSER]
  68. {{- range $key,$value := $parser }}
  69. {{ $key }} {{ $value }}
  70. {{- end }}
  71. {{- end }}
  72. labelmap.json: |-
  73. {{- .Values.config.labelMap | toPrettyJson | nindent 4}}