对Google App Engine使用gcloud控制台会导致指标出现运行时错误

时间:2017-02-27 20:30:12

标签: google-app-engine gcloud

我正在尝试通过浏览器使用gcloud控制台。当我克隆我的存储库并启动开发服务器时,我从指标中得到运行时错误:

$ dev_appserver.py $PWD
Traceback (most recent call last):
  File "/google/google-cloud-sdk/platform/google_appengine/dev_appserver.py", line 101, in <module>
    _run_file(__file__, globals())
  File "/google/google-cloud-sdk/platform/google_appengine/dev_appserver.py", line 97, in _run_file
    execfile(_PATHS.script_file(script_name), globals_)
  File "/google/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 1041, in <module>
    main()
  File "/google/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 1037, in main
   dev_server.stop()
 File "/google/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 845, in stop
   metrics.GetMetricsLogger().Stop()
File "/google/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/metrics.py", line 117, in Stop
  total_run_time = int((Now() - self._start_time).total_seconds())
TypeError: unsupported operand type(s) for -: 'datetime.datetime' and 'NoneType'

我没有直接调用指标模块或以其他方式使用它。如何在控制台或代码中禁用它以便我可以启动我的应用程序?

它可以通过SDK在本地运行。

2 个答案:

答案 0 :(得分:9)

对于在SDK installation期间选择加入的用户,最近在Cloud SDK版本144.0.0中添加了

dev_appserver.py个指标。在https://console.cloud.google.com的云控制台中提供的Cloud SDK安装也选择使用这些指标。

在回复这篇文章时,我们添加了一些额外的逻辑来防止将来出现这种误导性的错误消息。此更新将显示在即将发布的版本之一中。

答案 1 :(得分:2)

我通过解决app.yaml文件中的问题来解决这个问题,我的其中一条路线没有正确指定。

使用前导斜杠修复该路由,并在路由正则表达式中转义点,似乎也解决了错误:

diff --git a/app.yaml b/app.yaml
index 8a165a0..39c68b3 100644
--- a/app.yaml
+++ b/app.yaml
@@ -13,7 +13,7 @@ handlers:
 - url: /ui
   static_dir: ui

-- url: robots.txt
+- url: /robots\.txt$
   static_files: robots.txt
   upload: robots.txt