问题标签 [fluent-bit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
fluent-bit - 是否可以使用流利位记录的时间戳?
我正在尝试创建一个流利的位配置,它使用记录的时间戳到使用过滤器的自定义键。就像是:
我使用多个解析器的理由是,每个解析器都有自己的时间格式 ( Time_Format
,因为它在正则表达式解析器中使用。即使我使用Time_Keep
,它也无济于事,因为不同服务指定的时间不同,不同Time_Format
)。我希望到达的记录[OUTPUT}
具有相同的键来描述时间戳。在此示例中,该键将是fluenbit_orig_ts
这可能吗?
fluent-bit - 在输出中包含来自文件名(标签)的信息
使用“tail”输入插件,我想将文件名中的信息包含到消息中。我可以解析文件名(来自标签)并修改它,但无法在(stdout)输出中包含来自它的任何信息。
haproxy - 如何在fluentd中读取未转义的json?
我有一个 Fluent Bit 设置,将 Elasticsearch 格式的数据发送到 SSL 中的 Haproxy。Haproxy 终止 SSL 并将数据转发给 Fluentd。现在问题来了,Fluentd 接收到未转义的数据,因此无法将其转发给 ES。
Fluentd 接收此数据(我在 Stackoverflow 上添加了换行符以提高可读性):
要添加的多个注释:
- 我可以从 Fluentbit 发送 HTTP 中的所有内容,它会工作,但在这种情况下,我会丢失时间戳、索引和索引类型。
- 必须有一个解析器或过滤器,只需在 Fluentd 中获取当前未转义的 json 并对其进行转换,但我在实践中找不到 amy。我对任何堆栈上的任何解决方案都持开放态度。
流利位设置:
流畅的设置:
基本 HAProxy 后端设置:
fluent-bit - 如何在尾部插件中获取偏移字段或行号?
我部署了一个 fluent-bit 将 pod 的日志输出到 elasticsearch,然后用 kibana 显示。但是,我们同时有多个日志。 在此处输入图片描述 我们从 kibana 搜索的日志的顺序可能不正确。那么,我们可以得到偏移量或行号吗?
elasticsearch - 流利的位:Logstash_Prefix_Key 无法使用“es”输出插件按预期工作
我正在尝试从记录中查找密钥并将其用作流利位中的 logstash 前缀。但即使指定的键存在于过滤器的丰富日志中,这也不会发生并且Logstash_Prefix
不会被替换。Logstash_Prefix_Key
kubernetes
Kubernetes 过滤器的理想行为是input
使用 Kubernetes 数据(例如 pod 名称、pod id、命名空间名称等)丰富通过插件从输入路径读取的日志。当应用过滤器后的日志通过es
输出插件推送到输出源时。我曾经Logstash_Prefix_Key
拿到钥匙kubernetes.pod_name
并给了Logstash_Prefix
as pod_name
。即使我能够kubernetes.pod_name
在 Kibana 中看到密钥,日志也会存储在前缀中pod_name
(这意味着Logstash_Prefix_Key
找不到 tn 日志记录,因此它使用Logstash_Prefix
)。
代码示例
由于我是 EFK 堆栈的新手,有人可以帮我解决这个问题吗
elasticsearch - 使用 fluentd 不会将日志发送到 elasticsearch。日志写在一行中
Java 模块写入单行日志:
每个新事件都粘贴到行尾。在 fluentd 设置中,我使用标准解析器:
如果我将日志中的事件分成几行,代理会毫无问题地将所有内容发送到弹性。如果所有内容都在一行中,则它不会发送任何内容。它不会在日志中写入任何信息。
写了一个单独的解析器
在 regex101.com 网站上,我的字符串被解析,但代理仍然不发送任何内容,直到它被分成单独的行。
请帮忙理解!
fluentd - fluent-bit 可以从一个文件中解析多种类型的日志行吗?
我在 k8s 中有一个相当简单的 Apache 部署,使用 fluent-bit v1.5 作为日志转发器。我的设置几乎与下面 repo 中的设置相同。我正在运行 AWS EKS 并将日志输出到 AWS ElasticSearch Service。
https://github.com/fluent/fluent-bit-kubernetes-logging
ConfigMap 在这里:https ://github.com/fluent/fluent-bit-kubernetes-logging/blob/master/output/elasticsearch/fluent-bit-configmap.yaml
Apache 访问 (-> /dev/stdout) 和错误 (-> /dev/stderr) 日志行都在节点上的同一个容器日志文件中。我遇到的问题是 fluent-bit 似乎没有自动检测要使用哪个解析器,我不确定它是否应该,而且我们只能在部署的注释部分指定一个解析器,我已经指定了 apache . 所以最后,写入同一个文件但来自 stderr 的错误日志行不会被解析。我应该将日志从 fluent-bit 发送到 fluentd 以处理错误文件,假设 fluentd 可以处理这个问题,还是应该以某种方式仅将错误行泵回 fluent-bit 进行解析?
我错过了什么吗?
谢谢!
elasticsearch - Fluent-bit 没有将数据推送到亚马逊 es 服务
我使用 helm 安装了 fluentbit,Fluent-bit Verison 是 1.13.11,fluentbit pod 运行良好,但仍然无法向 Amazon ES 发送数据,以下是错误和 yamls 文件。
请提供任何可以帮助我轻松安装的 URL。
错误:- 出现两种错误:-
docker - 如何使用 docker 容器内的 fluent-bit 访问登录的日志
我正在使用 docker-compose.yml 来启动我的服务。所有服务看起来都像这样:
当我运行时,journalctl -e -f -u docker
我看到所有日志都被记录得很好。我遇到的问题是我的 fluent-bit 容器在从 systemd 收集时似乎无法获取任何数据:
我想这可能是因为它在容器中并且无法到达日志位置,但绑定目录/run/log:/run/log
没有效果。
所以我的问题是:当它在容器内时,流利的位可以到达 systemd 并阅读日志吗?如果是的话 - 我怎样才能做到这一点?