APMのRubyエージェントを使用すると、 Google App Engine (GAE) フレキシブル環境にあるアプリケーションを監視できます。 GAE flex アプリにNew Relicを追加すると、アプリの健全性とパフォーマンスをインサイトで確認できるようになり、 やなどのソリューションを使用して表示できるメトリックで GAE が拡張されます。
本ドキュメントでは、これらのいずれかの方法でGAE flexアプリにNew Relicを追加する方法を説明します。
- Google App Engineの " ネイティブモード" 標準的なGAEランタイムでのインストール
- カスタムランタイムを使用したDockerインストール
カスタムランタイムメソッドには、Sinatra アプリをデプロイする例が含まれています。特定のライブラリやヘッダーが必要な場合は、New Relic ではカスタムランタイムメソッドの使用を推奨しています。
GAEのネイティブサポートによるデプロイ
Google App Engine の「ネイティブモード」インストールを使用する場合は、アプリコードとapp.yaml
ファイルを提供します。次に、GoogleAppEngineは標準のビルド済みDockerイメージにデプロイされます。
SinatraやRailsをネイティブにサポートしてデプロイすること。
- New Relic の標準手順に従って、 を含むgem をインストールします。
- Rubyエージェントのインストール 設定ファイル.
gem と設定ファイルがインストールされると、Ruby エージェントは GAE フレックス環境に存在するアプリケーションを自動的に監視できるようになります。展開が完了するまで待ってから、 APM Summary ページ で GAE flex アプリのデータを表示します。
Dockerでカスタムランタイムを構築
ヒント
Rubyアプリが特定のライブラリやヘッダーを必要とする場合、New Relicではカスタムランタイム方式の使用を推奨します。また、New Relic では、Google App Engine によるヘルスチェックの処理を許可することを推奨しています。
カスタムランタイムの構築については、 Google のドキュメントを参照してください 。この例では、Docker のカスタムランタイムを構築して GAE flex アプリに New Relic を追加する方法を説明します。この例では、Ruby の Sinatra アプリを使用しています。
GAEフレキシブル環境でのRubyアプリの展開と設定については、以下をご覧ください。
- Google App Engineのドキュメント for Ruby
- Google App Engineのチュートリアル for Ruby
このドキュメントはインストールの役に立ちましたか?
おすすめです。健康診断の取り扱い
Google App Engineは定期的なヘルス チェック リクエストを送信して、インスタンスが正常にデプロイされたことを確認し、実行中のインスタンスが正常な状態を維持していることを確認します。ヘルスチェックは、URL /_ah/health
への HTTP リクエストです。
カスタムランタイムを作成する場合は、アプリが大量のヘルスチェックリクエストを処理できなければなりません。そうしないと、アプリのデータがAPMで正しく表示されない可能性があります。
GAEからNew Relicエージェントのトラブルシューティングログを取得する [#agent-logs]
GAE flex環境アプリのトラブルシューティングには、これらのリソースをご利用ください。
GAE インスタンスに接続して、コードを実行している Docker コンテナでシェルを起動するには、 Debugging an instance を参照してください。
Cloud Platform Consoleで New Relic Ruby エージェント ログをStackdriverにリダイレクトするには、
newrelic.js
構成ファイルを次のように変更します。log_file_name: STDOUTログを表示するには、 Cloud Platform ConsoleのLog Viewer を使用します。