仅查看GCE堆栈驱动程序日志记录中的VM stderr?



我将玩具程序部署到在Google Compute Engine(GCE(上运行的虚拟机实例。这个玩具程序碰巧将格式化的错误消息记录到标准错误流(stderr(。虚拟机实例启用了堆栈驱动程序日志记录,我能够看到我的程序的一些错误消息穿插着许多其他消息,这些消息可能是由GCE本身生成的。

是否可以过滤 Stackdriver 日志查看器以显示从我的虚拟机标准错误流发送的消息,以简化故障排除?

理想情况下,为了简单起见,我不希望依赖任何客户端库。我已经考虑创建一个过滤器来匹配一个特殊的唯一令牌,我可以从环境变量注入该令牌,但对于看似简单的任务(查看标准日志消息(来说,这似乎很复杂。

日志消息如下所示:

2018-10-20T16:03:31.262075836Z | listening for https at "localhost:443"
2018-10-20T16:03:31.257283434Z | foo
2018-10-20T16:03:32.012318385Z | bar
2018-10-20T16:03:38.119439321Z | ERROR: something bad happened
2018-10-20T16:03:38.127334354Z | FATAL: program terminated

我建议您编写一个高级日志过滤器。实际上,高级日志过滤器可以在日志查看器、堆栈驱动程序日志记录 API 或命令行界面中使用。您可以使用特殊语法来指定要查看的确切日志。

此外,您还可以观看由Google云平台团队提供的高级过滤器的视频。

最新更新