2

開発中 (デプロイ前) に Google クラウド プラットフォームでマネージド VM モジュールの 1 つのログを表示したいのですが、次のコマンドで許可されていることに気付きました。

gcloud preview app run --enable-mvm-logs <module name>

ただし、そのスイッチを通常の run コマンドに追加すると、ロード中にモジュールがクラッシュします。

INFO: Go VM Deployment process failed: [Errno 104] Connection reset by peer
ERROR: Internal error while starting instance.
Traceback (most recent call last):
  File "/home/bakeonandham/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/module.py", line 1823, in _start_instance
    if not inst.start():
  File "/home/bakeonandham/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/instance.py", line 274, in start
    self._runtime_proxy.start()
  File "/home/bakeonandham/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/vm_runtime_proxy_go.py", line 130, in start
    self._vm_runtime_proxy.start(dockerfile_dir=dst_deployment_dir)
  File "/home/bakeonandham/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/vm_runtime_proxy.py", line 196, in start
    self._module_configuration.major_version, runtime_config.instance_id)
  File "/home/bakeonandham/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/log_manager.py", line 172, in add
    _create_table(l)
  File "/home/bakeonandham/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/log_manager.py", line 138, in _create_table
    response = conn.getresponse()
  File "/usr/lib/python2.7/httplib.py", line 1073, in getresponse
    response.begin()
  File "/usr/lib/python2.7/httplib.py", line 415, in begin
    version, status, reason = self._read_status()
  File "/usr/lib/python2.7/httplib.py", line 371, in _read_status
    line = self.fp.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
error: [Errno 104] Connection reset by peer

スイッチがなければ、アプリは正常に実行および展開され、展開されると、ログに記録しているデータが Dev コンソールで利用できるようになります。

理想的ではありませんが、開発サーバーを起動したターミナルで開発中にログを表示する方法を見つけました。

--verbosity デバッグ フラグを使用すると、出力が表示されますが、ログに記録された内容がエラーとしてログに記録されているにもかかわらず、loglevel debug でのみ表示されます。他の詳細レベルでは、出力はまったく表示されません。

ところで、私は Go ランタイムを使用しています。

要約すると、マネージド VM のローカル開発サーバー環境を使用してログを表示できるように見える唯一の方法は、次のコマンドを使用して起動することです。

gcloud --verbosity debug preview app run <module name>

loglevel Error でログに記録しても、 --verbosity error を設定すると、出力は端末やその他の場所に表示されません。

--enable-mvm-logs スイッチを機能させることができた人はいますか、それとも壊れていますか? マネージド VM のログ出力を表示するためのより良い方法に関するアイデアはありますか?

4

0 に答える 0