问题标签 [gelf]
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.
kubernetes - Fluentbit 在 Kubernetes 中获取 Docker Logs(Systemd) 无法正常工作
我正在尝试在 Kubernetes 中配置 Fluentbit 以从应用程序 POD/Docker 容器中获取日志,并使用 GELF 格式将此日志消息发送到 Graylog,但这不起作用。
请参阅下面的堆栈:
输入
- Docker 版本 1.13.1
- Docker 日志格式 => JSON
- Docker 日志驱动程序 => Journald => systemd
- Fluent-bit 1.3 在 Kubernetes 中作为 Daemonset 运行
- Kubernetes 1.17
- 操作系统主机:CentOS 7
输出
- 消息输出格式:GELF 1.1
- 集中式日志 => Graylog 3
问题是fluentbit没有从systemd读取日志我在两个输出(Systemd,Stdout)中都没有得到任何日志,STDOUT只是为了帮助进行故障排除。
我不知道为什么我无法从 systemd 读取。我完全按照文档 https://docs.fluentbit.io/manual/input/systemd
我的 K8S 配置:
流利的位configmap.yaml
流利的位ds.yaml
流利的位角色绑定.yaml
流利的位角色.yaml
fluent-bit-service-account.yaml
我的 Fluentbit OUTPUT(STDOUT) 仅用于调试:
问题是我没有从 systemd 使用此配置获取任何日志
kubernetes - 将 Fluentbit Docker Logs(Systemd) 解析为 Kubernetes 中的 GELF 消息输出时出现问题
我正在获取 Docker(Systemd) 日志并尝试以 GELF 格式将其发送到 Graylog 3 输出,但日志格式不正确,并且 Graylog 将其丢弃。
我关注这个参考:
- https://docs.fluentbit.io/manual/output/gelf
- https://docs.fluentbit.io/manual/input/systemd
- https://fluentbit.io/kubernetes/
请参阅下面的堆栈:
输入
- Docker 版本 1.13.1
- Docker 日志格式 => JSON
- Docker 日志驱动程序 => Journald => systemd
- Fluent-bit 1.3 在 Kubernetes 中作为 Daemonset 运行
- Kubernetes 1.17
- 操作系统主机:CentOS 7
输出
- 消息输出格式:GELF 1.1
- 集中式日志 => Graylog 3
我的 Kubernetes 配置:
流利的位configmap.yaml
流利的位ds.yaml
流利的位角色绑定.yaml
流利的位角色.yaml
fluent-bit-service-account.yaml
我的 Fluentbit OUTPUT(STDOUT) 仅用于调试:
问题是如何将日志正确格式化为 GELF 格式以发送到 Graylog 3
java - 如何扩展 log4j2 gelf appender (biz.paluch.logging) 以添加自定义 GelfSender
我在 log4j2-spring.xml 中配置的 Spring Boot 项目中有一个 log4j2 gelf appender:
使用 maven 导入 gelf appender 库:
该库提供了许多 GelfSender (biz.paluch.logging.gelf.intern.GelfSender),例如 GelfHTTPSender、GelfREDISSender 等。如何扩展 log4j2-spring.xml 中配置的 gelf appender 以使用自定义 GelfSender。
java - 使用 GELF 格式的 RELP 发送日志
我的任务是使用 RELP 协议和 GELF 格式将日志从 Java 应用程序发送到远程服务器。您能否建议我可以在 Java 应用程序中使用的库?
kubernetes-helm - fluentd gelf插件参数设置
有人可以解释一下这每一个是什么意思吗?我在谷歌上尝试了很多搜索,但无法找到它。这些值填充在我的 helmfile 中,在 configmap 中进行了空运行,但我需要知道它们是什么。
我有兴趣了解这些中的每一个,它们意味着什么?
c# - 无法将 Gelf 配置文件添加到 Azure 函数应用
我正在尝试在 azure 函数中设置 Gelf 记录器。我目前正在使用这个记录器并尝试添加一个 nlog.config 文件。我设法创建了文件但无法编辑它,有人知道为什么吗?
java - Logback 和 Graylog 无法在 Mac 上使用 syslog 进行通信
我想将日志消息从 Java 应用程序发送到 Graylog,在 logback 之上使用 slf4j,一侧是 logback GELF-appender,另一侧是 Graylog GELF-input。为了测试它,我在 Docker 容器中运行 Graylog(使用 Docker for Mac)并在本地运行我的 Java 应用程序。我的故事的要点是 Graylog GELF 输入没有从 Java 应用程序接收任何内容。不知何故,Java 应用程序和 Graylog 似乎无法通信。当我切换到不同的附加程序/输入组合(基于系统日志记录的组合)时,这同样适用。但是,当将消息从命令行回显到不同的Graylog输入(即侦听端口 5555 的 RAW 输入)时,该消息可以正常接收。
知道问题是什么吗?这是我使用 GELF 的设置:
Java 应用程序:
pom.xml
logback.xml
Graylog docker启动:
Graylog GELF tcp 输入(运行中):
如前所述,当我运行 java 应用程序并且 Graylog 在后台作为 Docker 容器运行时,Graylog 没有收到我发送的日志消息。但是,当我在命令行上键入以下内容(在 Mac 上使用终端)时,Graylog RAW 输入会收到消息:
有人知道我做错了什么吗?
python - uvicorn 抑制了 gelf 驱动程序的 python 系统日志
我有一个docker 容器,通过 udp 使用gelf运行日志记录到日志记录实例——一切都很好!
该容器基于Ubuntu 18,其中rsyslog作为服务运行,运行良好。
容器内部是一个使用 uvicorn 网络服务器运行的FastAPI应用程序。它也可以完美运行,并且 uvicorn 可以完美地记录到日志实例。
这里有什么不起作用,但通常适用于非 FastAPI python 项目。我使用 python 的系统日志来记录更多的东西。
带有 syslog 的应用程序看起来像这样(我为自己创建了一个简单的示例来调试):
日志实例的日志不显示系统日志消息。只有 uvicorn 的消息:
为了进一步调试,我检查了 rsyslog 的日志文件,它包含 syslog 消息:
这是 /etc/rsyslog.d 中的 rsyslog 配置
我在这里想念什么?为什么gelf忽略rsyslog?我需要了解有关 syslog 的 uvicorn 什么?或者我能做什么?
谢谢
linux - 使用 Seq 和 seqcli 实时记录 Java Springboot
我正在尝试使用 Seq,它是一种日志管理工具,主要受 .NET 支持。还有像 seqcli 这样的工具用于将日志发送到 seq 服务器,如下所示:
https://docs.datalust.co/docs/
问题是,我使用的是 springboot 应用程序,根据文档,我使用 GELF 和 Seq 作为远程服务器中的 docker 容器部署。一切都在 Linux 上。
我设法使用此命令从文件中发送一些日志:
我可以在远程服务器上看到它们,但我无法实时发送日志。文档说我可以从 STDIN 实时发送日志,但没有更多详细信息,我不知道如何实现这一点。
https://docs.datalust.co/docs/command-line-client#extraction-patterns
有什么建议吗?
elasticsearch - 使用 Grafana 可视化 GELF 日志消息
设置:
我有一个将 GELF 格式的消息记录到 logstash 的数据源。Logstash 然后为 ElasticSearch 提供日志。此外,我想可视化 Grafana 实例中的日志。
logstash.conf 如下所示:
情况:
我看到 Grafana 中列出的日志消息,但似乎整个 HTTP 消息(也包含 GELF 字符串)存储在“消息”字段中。
问题:
据我所知,我无法使用 Grafana 解析存储在消息字符串中的属性(例如“国际”属性)。我是否必须使用 Logstash 的 Gelf 插件从消息字符串中解析 GELF 消息?如何才能做到这一点?目标是可视化 GELF 消息中的属性。