CRIランタイムインターフェイスを持つローカルクラスタに対してFluent-bitをテストしており、空きチャネルにログを送信しています。しかし、問題は、Fluent-Bitがログに「タイムスタンプ」を割り当てるために削除できないことです。たぶん誰かが解決策を知っていますか?
これは私のFluent-Bit ConfigMapです。
apiVersion: v1
kind: ConfigMap
metadata:
name: fluent-bit-config
namespace: logging1
labels:
k8s-app: fluent-bit
data:
# Configuration files: server, input, filters and output
# ======================================================
fluent-bit.conf: |
[SERVICE]
Flush 2
Log_Level info
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-syslog.conf
input-kubernetes.conf: |
[INPUT]
Name tail
Tag kube.*
Path /var/log/containers/*
Parser cri
DB /var/log/flb_kube.db
Mem_Buf_Limit 5MB
Skip_Long_Lines On
filter-kubernetes.conf: |
output-syslog.conf: |
[OUTPUT]
Name slack
Match *
webhook [LINK]
parsers.conf: |
[PARSER]
Name cc
Format regex
Format cri
Regex ^(?<time>[^ ]+) (?<stream>stdout|stderr) (?<logtag>[^ ]*) (?<message>.*)$
Time_Key time
Time_Format %Y-%m-%dT%H:%M:%S.%L%z
これは私のアプリケーションの元のログでもあります。
2023-04-12T16:09:02.016483996Z stderr F 10.244.0.1 - - [12/4/2023 16:09:02] "GET/HTTP/1.1" 200 -
Slackに送信されたログは次のとおりです。
["タイムスタンプ": 1681315742.016981904, {"ログ" => "2023-04-12T16:09:02.016483996Z stderr F 10.244.0.1 - - [12/4/2023 "200-"}]
ベストアンサー1
あなたは使用することができますRecord_transformerフィルタはRemove_keysを使用してタイムスタンプキーを削除します。
<filter foo.bar>
@type record_transformer
remove_keys timestamp
</filter>