App Engine Logpoints出错了什么?

时间:2017-04-17 15:51:27

标签: python google-app-engine

我非常喜欢使用App Engine时获得的调试和日志记录功能。能够在实时代码中设置断点并在出现问题时检查事物是非常有用的。但如果我还可以进入实时代码并添加日志记录语句,那将会很棒。

这是Logpoints应该做的,但我不能让它们工作。我正在使用"传统" App Engine项目,使用webapp2以Python编写。我尝试使用gcloud设置我的日志点,如下所示:gcloud debug logpoints create handlers/main.py:108 --target=my-service "I made this!"。它给了我一个成功的消息和一个我可以看到日志的URL。

然后我进入我的源代码并在实时代码上设置一个断点,与我上面的代码段指示的行相同。断点在那里停止,但没有发生日志记录。我确认logpoint是使用gcloud debug logpoints list设置的,并且它在那里。只是没有日志。我错过了什么?还有其他人使用这个吗?

1 个答案:

答案 0 :(得分:1)

我刚测试过它(部署了一个webapp GAE应用程序,gcloud调试日志创建,Stackdriver调试>创建快照...),对我来说,logpoint消息显示在:

  • 云记录:使用适当服务/版本的选择器
  • 单击“加载更多”后,
  • StackDriver Debug UI底部的小Logs选项卡。

我注意到了,我相信它是导致你的问题的原因,当我使用在执行gcloud debug logpoints create...后打印的建议的logViewUrl时,高级日志过滤器有一个不正确的module_id:

resource.labels.module_id="None"

根据您部署应用的位置,正确的module_id可能不同,但在我的情况下,将“None”更改为“default”可修复此logViewUrl问题。

注意:模块和服务在此上下文中是相同的