TL; DR;
有谁知道是否可以在Firebase / Google Cloud功能中使用 console.log
使用 jsonPayload
属性将条目记录到堆栈驱动程序,以便我的日志可搜索(目前我传递给console.log的任何内容都会被字符串化为 textPayload
) .
我有一个多模块项目,其中一些代码在Firebase Cloud 功能上运行,还有一些在其他环境中运行,如Google Compute Engine . 稍微简化一下,我基本上有一个“核心”模块,然后我将“ Cloud 功能”模块部署到 Cloud 功能,“后端服务”部署到GCE,这些都依赖于“核心”等 .
我在整个“核心”模块中使用bunyan进行日志记录,当部署到GCE时,使用“@ google-cloud / logging-bunyan”配置 Logger ,以便我的日志转到堆栈驱动程序 .
除此之外:在Google Cloud Functions中使用此配置会导致 Error: Endpoint read failed
出现问题,我认为这是由于功能不会冷却并尝试重用死连接,但我不能100%确定真正的原因是什么 .
所以现在我正在尝试使用 console.log(arg)
进行日志,其中 arg
是一个对象,而不是一个字符串 . 我希望这个对象出现在 jsonPayload
下的堆栈驱动程序中,但它被字符串化并放入 textPayload
字段 .
1 回答
我花了一段时间,但我终于在firebase functions samples repository遇到了this example . 最后我决定采取类似这样的事情:
您可以将字符串
severity
属性值添加到logMetaData
(例如"INFO"或"ERROR") . Here is the list可能的值 .