将 gcloud 控制台用于 Google App Engine 会导致指标出现运行时错误
Using gcloud console for Google App Engine causes a Runtime error from metrics
我正在尝试通过浏览器使用 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本地运行正常
我通过解决我的 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
dev_appserver.py
最近在 Cloud SDK 版本 144.0.0 中添加了指标,供在 SDK installation. The Cloud SDK installation provided in the Cloud console at https://console.cloud.google.com 期间选择加入的用户也选择使用这些指标。
为了响应这个 post,我们添加了一些额外的逻辑来防止将来出现这种误导性的错误消息。此更新将出现在即将发布的版本之一中。
我正在尝试通过浏览器使用 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本地运行正常
我通过解决我的 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
dev_appserver.py
最近在 Cloud SDK 版本 144.0.0 中添加了指标,供在 SDK installation. The Cloud SDK installation provided in the Cloud console at https://console.cloud.google.com 期间选择加入的用户也选择使用这些指标。
为了响应这个 post,我们添加了一些额外的逻辑来防止将来出现这种误导性的错误消息。此更新将出现在即将发布的版本之一中。