2

バックグラウンド

アプリのバージョンが Google App Engine の管理コンソールでデフォルト バージョンになるたびに、チーム メンバーに通知するシステムをセットアップしたいと考えています。その理由は、バージョンがデフォルトに変更されたときにすべての開発者を最新の状態に保つためです。また、通知を見逃さないようにするために、開発者はこの通知を抑制できないようにする必要があります。

そのような通知について Google サポートに問い合わせたところ、何も存在しないとのことで、監視 API を提供するよう機能リクエスト #4260111 に提案が追加されました。

特定のアプリケーションの Google App Engine の管理コンソールには、管理ログと呼ばれるセクションがあります。管理者ログは、イベント「Verson Made Default」でフィルタリングして、アプリケーション バージョンが本番環境でデフォルト バージョンにされるたびにログ行を取得できます。これらのログは抑制できません。これは私の目的に適しています。

ログ行は次のようになります。

日付 管理者 イベント 結果
2012-06-14 12:30:51 a@example.com デフォルトのバージョンを設定 version=123.timestamp

これらのログ行が利用できる URL の形式は次のとおりです。

http://appengine.google.com/adminlogs?app_id=s%7Esome_app_id&type=version_made_default&limit=20

SO に関する同様の質問への回答によると、現時点で唯一の解決策は、上記の URL でページをスクレイピングすることです。参考:https ://stackoverflow.com/a/8084798/888759

質問:

上記の URL で管理者ログを表示するには、管理者がログインする必要があります。Google App Engine 管理コンソールのログイン ウォールの背後にあるこのページをスクレイピングするにはどうすればよいですか?

スクレイピング スクリプトは、Google App Engine の管理コンソールに対してどのように認証しますか?

どうもありがとう!

4

1 に答える 1

0

解決策の 1 つは、HTTP の「ホスト」ヘッダーを検査することです。最終的には、カスタム DNS ホスト名からまたはカスタム DNS ホスト名になる可能性があります。<appversion>.<appid>.appspot.com<appid>.appspot.com

とにかく、私は API レベルで何かを好むでしょう。

于 2012-06-15T15:01:13.303 に答える