このページでは、Extensible Service Proxy(ESP)を Compute Engine 仮想マシン(VM)にデプロイした場合のトラブルシューティング方法を説明します。
VM インスタンスに関するログの表示
問題のトラブルシューティングを行うときは、VM インスタンスに関する Endpoints のランタイムログを調べると役に立ちます。
ログを表示するには:
ssh
を使用して仮想マシンに接続します。gcloud config set project YOUR_PROJECT_ID gcloud compute ssh INSTANCE_NAME
YOUR_PROJECT_ID
は実際の Google Cloud プロジェクトの ID に置き換え、INSTANCE_NAME
は仮想マシンのインスタンス名に置き換えます。nginx
エラーログを表示します。Endpoints ラインタイムを RAW VM で実行している場合:
tail -f /var/log/nginx/error.log
Docker 内で
endpoints-runtime
を実行している場合:docker ps docker logs CONTAINER_NAME
CONTAINER_NAME
はコンテナ名に置き換えます。
ESP のステータスの表示
ESP のステータスを表示するには:
ssh
を使用して仮想マシンに接続します。gcloud config set project YOUR_PROJECT_ID gcloud compute ssh INSTANCE_NAME
YOUR_PROJECT_ID
は実際の Google Cloud プロジェクトの ID に置き換え、INSTANCE_NAME
は仮想マシンのインスタンス名に置き換えます。ESP コンテナの名前を取得します(通常、コンテナ名は
esp
です)。docker ps
コンテナ内の bash シェルを取得します。
docker exec -it ESP_CONTAINER_NAME /bin/bash
ESP_CONTAINER_NAME
は、前の手順で取得した ESP コンテナ名で置き換えます。curl
をインストールします。次の情報を入力します。
curl http://localhost:8090/endpoints_status
サービス構成 ID の取得
ESP の起動時に rollout_strategy
を managed
に設定し、ESP のインスタンスが使用している構成 ID を確認する必要がある場合は、curl http://localhost:8090/endpoints_status
コマンドの出力の終わり近くで確認できます。出力は次のようになります。
"serviceConfigRollouts": {
"rolloutId": "2017-08-09r27",
"percentages": {
"2017-08-09r26": "100"
}
}
rolloutId
の値は、ESP が使用しているサービス構成 ID です。この構成 ID は、最後にデプロイした構成と一致しているはずです。Google Cloud Console で、[エンドポイント] の [サービス] ページを開くと、デプロイの履歴やサービス構成に対する変更を確認できます。構成ファイルの比較をご覧ください。