gcpug / nouhau

Google Cloud Platformのノウハウを共有するRepository
https://gcpug.jp
MIT License
656 stars 23 forks source link

google.golang.org/appengine/aetest で `unable to find admin server URL` が出た時の対処 #96

Open sinmetal opened 5 years ago

sinmetal commented 5 years ago

App Engine standard for Goで google.golang.org/appengine/aetest を利用している時に panic: unable to find admin server URL と言われて、後ろのサーバが起動しない時がある

調査方法

起動してない原因を探るために、起動時のコマンドを実際に自分のターミナルでも実行してみると分かりやすい。 起動は https://github.com/golang/appengine/blob/de285f9b71d302e953472c27f2152dfe8fac5195/aetest/instance_vm.go#L207 で行われているので、BreakPointで止めて、 appserverArgs の中身を見て、自分のターミナルで実行してるとよい。

試した時は以下のような値が入っていた。 /var/folders/... は実行中しか存在しないので、BreakPointで止めたまま、ターミナルで実行してみるのがよい。

/usr/local/bin/python2.7 /Users/sinmetal/bin/google-cloud-sdk/bin/dev_appserver.py --port=0 --api_port=0 --admin_port=0 --automatic_restart=false --skip_sdk_update_check=true --clear_datastore=true --clear_search_indexes=true --datastore_path /var/folders/qr/v297p6m97k19_m0wf2pgpb0m0000gn/T/appengine-aetest111717990/datastore --datastore_consistency_policy=consistent --support_datastore_emulator=true /var/folders/qr/v297p6m97k19_m0wf2pgpb0m0000gn/T/appengine-aetest111717990/app

対抗策の1つ

Adin Serverが動いてない原因は色々あるので、とりあえず、以下を試すという方法がある

pip install grpcio

sixがどうのこうの言われたら、sixを外してinstallする

pip install grpcio --user --upgrade --ignore-installed six

soundTricker commented 5 years ago

108 も参照