7

有人对更好地登录 Google App Engine 有什么建议吗?我目前正在尝试使用 Splunk Storm,但他们对输入很挑剔并且经常失败。有没有其他人遇到过这个问题并以某种身份解决了这个问题?

目前,我有一个在后端运行的进程,该进程从 LogService 读取并通过 REST api 将日志传输到 Splunk Storm。这通常会失败,或者风暴停止,或者后端 IP 更改。

我的问题是 App Engine 中提供的日志记录,因为在推送新版本时日志会消失,并且使用提供的仪表板查询日志几乎无法使用。Splunk 是一个潜在的解决方案,但云解决方案还有很多不足之处。

任何可以为我的日志提供更好接口的东西都将不胜感激。

4

2 回答 2

5

您可以将 GAE 中的日志导出到具有强大查询语言的BiqQuery。您可以使用Mache,这是一个已经这样做的开源项目。您应该编写自己的 exporter,以公开(并使查询)您感兴趣的字段(列)。

于 2012-09-11T06:44:15.533 回答
1

由于您决定使用 Splunk(或其他外部服务)作为永久存储,听起来您需要一个位置来在日志写入 App Engine 的日志服务和 Splunk 可以接受日志之间缓冲日志. 为避免在版本流失导致日志从 App Engine 中退出之前丢失日志,此缓冲区需要快速且高度可用。

一种合理的选择是 AE 数据存储。第 3 方没有不可靠的跃点,它具有可用性 SLA,并且可以通过分片写入任意扩展。不利的一面是 R/W 操作的成本和运行中日志的存储空间,但您将承担另一个后备存储的可比成本。

无论选择何种服务,让一个批处理(例如后端或 cronjob)从日志阅读器 API 写入缓冲区。只要它比应用程序更新更频繁地运行,日志将始终存在于持久存储中。然后让另一个批处理等待 Splunk 可用,然后从缓冲区上传到它,并在您从 Splunk 收到收据确认时删除。

于 2012-09-10T23:27:10.107 回答