【问题标题】:Default GAE service missing from Stackdriver Error ReportingStackdriver 错误报告中缺少默认 GAE 服务
【发布时间】:2019-09-06 09:20:07
【问题描述】:

我在一个项目中有两个 Google App Engine 标准环境服务。第二个服务(PHP 5.5)很好,但在将运行时切换到 PHP 7.2 后,“默认”实例已从 Stackdriver 错误报告中消失(我认为......我不确定它消失的点)。

“默认”在 Stackdriver > 日志查看器中仍然可用,但是虽然这会显示 500 个错误,但它不提供异常的详细信息。

Stackdriver > Error Reporting > “All services”选择输入中缺少“默认”服务,即使我在它消失之前设置了时间范围,就像它已从 Stackdriver 中删除一样。

我已经完成了 https://cloud.google.com/error-reporting/docs/setup/php 的工作,并添加了所有相关的内容,除了 ...

auto_prepend_file='/project-dir/vendor/google/cloud-error-reporting/src/prepend.php'

...因为文档中没有任何内容表明 /project-dir/ 是什么。我尝试将其设置为 ...

/VENDOR-PARENT-DIR/vendor/google/cloud-error-reporting/src/prepend.php

和

/PROJECT-NAME/VENDOR-PARENT-DIR/vendor/google/cloud-error-reporting/src/prepend.php

...其中任何一个在部署后都会在浏览器中显示错误,我认为这与 php.ini 中的错误有关。从 php.ini 中取出这一行并重新部署即可恢复正常服务。

请问有大神指点一下吗?我在 QA 中获得了 500 分,无法在本地复制,而且我在黑暗中摸索,GAE 实例上没有错误报告。

谢谢

【问题讨论】:

  • 根据我对 George 的回答的评论,通过从报告类型过滤器中选择 /var/log/nginx/error.log,在“日志查看器”中也可以看到 500 个错误(默认情况下未启用并删除在页面刷新时)。它没有换行符,因此读取堆栈跟踪很尴尬,但至少我现在可以看到 500 错误的原因。
  • 您好,Andy,您需要打开技术支持案例,以便通过 Google Cloud Platform 技术支持进一步调查此问题。单击此link 以获取有关技术支持的更多信息。

标签: php google-app-engine


【解决方案1】:

请记住,只有包含堆栈跟踪的错误才会被处理到 Stackdriver 错误报告。如果没有生成包含堆栈跟踪的日志,服务名称将不会出现在下拉列表中。 不过,您可以在 Stackdriver Logging 页面上查看所有日志。

查看以下documentation 了解更多详情。 另请查看以下documentation,了解有关 Stackdriver Trace 的更多详细信息。

【讨论】:

  • 有一个堆栈跟踪。我在这项服务上有几个不同的 500,但 Stackdriver 错误报告中仍然缺少它。自从发布这个问题以来,我发现 /var/log/nginx/error.log 可以包含在“日志查看器”的过滤器中,其中包含 500,尽管没有格式化。鉴于堆栈跟踪中没有换行符,它显然很有用,但使用起来很尴尬。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-27
  • 2018-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多