2

我从 cloudfoundry 文档Service-Specific Instructions for Streaming Application Logs 中看到以下文档:

不支持日志记录

Cloud Foundry 在多个服务器上分发日志消息以处理负载。目前,我们不建议使用 Logentries,因为它不支持多个 syslog 源。

我猜它指向 Logentries 的纯文本 TCP/UDP 输入类型。

那么基于 Logentries令牌的 TCP 输入呢?STDOUT例如,为发送到应用程序或STDERRcloudfoundry的每个日志消息配置提供的令牌。如果这有效,如何制作?

4

3 回答 3

2

您几乎可以将任何端点用于 loggregator 消耗。它只需要是 HTTPS(POST 请求)、syslog 或 syslog-tls。Cloud Foundry 目前不支持任何其他端点

Cloud Foundry loggregator drain 的工作方式是它需要一个特定的端点来指向转储日志。它不适用于多个排水端点。

我会向cf-dev 发行版发送一封电子邮件,看看为此提交 PR 需要什么......

于 2015-09-12T02:23:07.553 回答
1

我已经通过以下方式从在 bluemix 中运行的 node.js 应用程序实现了基于应用程序的日志记录。

  1. 首先集成Winson日志库,以便我们能够使用为各种日志和监控服务开发的“传输”;除了基本文件和控制台目标。
  2. 使用来自 LogEntries 的le_node库作为 Winston 传输。作为传输配置的一部分,您指定一个 LogEntries 令牌。

winston.add(winston.transports.Logentries, { token: myToken });

由于令牌可以特定于您的应用程序,因此 LogEntries 可以聚合来自不同实例的日志。

于 2015-09-15T18:59:04.020 回答
0

听起来您正在尝试使用基于端口的系统日志转发,它锁定一个 IP 地址。相反,您可以结合使用 syslog 转发器和令牌转发来将您的日志发送给我们,您收到一个令牌对应一个日志,如果您想将日志路由到不同的日志/日志集,则必须管理多个配置文件中的令牌。

以下是一些对您有帮助的文档: https ://logentries.com/doc/input-token/3 https://blog.logentries.com/2014/01/how-to-send-log-data-via-使用 rsyslog/2 的代理服务器

于 2015-10-08T19:17:43.247 回答