ドキュメント アプリケーション

このページでは、Cloud Shell を使用して GitHub golang-samples/profiler リポジトリからサンプルをダウンロードして実行する方法について説明します。これらのサンプルを Google Cloud の外部で実行することもできます。この場合に必要な追加の構成手順については、Google Cloud の外部で実行されているアプリケーションのプロファイリングをご覧ください。

これらのプログラムを実行する場合、Cloud Profiler インターフェースの機能を試すことができるプロファイリング データを簡単に作成できます。これらのサンプルのコピーを変更してから、Cloud Profiler インターフェースを使用して変更の影響を再デプロイして分析することもできます。

始める前に

  1. Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Cloud Profiler API を有効にします。

    API を有効にする

  4. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  5. Cloud Profiler API を有効にします。

    API を有効にする

Cloud Shell の起動

プロジェクトの Google Cloud コンソール ページの上部にある「Cloud Shell をアクティブにする」をクリックします。

Cloud Shell をアクティブにします。

Cloud Shell セッションがコンソールの下部にある新しいフレーム内に開き、2 つのメッセージとコマンドライン プロンプトが表示されます。最初のメッセージには、Cloud Shell セッションの Google Cloud プロジェクトが表示されます。2 番目のメッセージは、セッションのプロジェクトを変更する方法を示しています。シェル セッションが初期化されるまで、数秒かかる場合があります。

Cloud Shell セッション。

プロファイリングするプログラムを取得する

Cloud Shell から Go サンプルのパッケージを取得します。

git clone https://github.com/GoogleCloudPlatform/golang-samples.git

パッケージの取得が完了するまでに少し時間がかかります。

profiler_quickstart

サンプル profiler_quickstarthello-profiler サービスを実行するように構成されています。Profiler クイックスタートでは、このサンプルを使用します。

hello-profiler を起動するには、次の操作を行います。

  1. profiler_quickstart ディレクトリに移動します。

    cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/profiler_quickstart
    
  2. 次のコマンドを実行してサービスを開始します。

    go run main.go
    

メッセージ profiler has started は、サービスを開始してから数秒後に Cloud Shell セッションに表示されます。新しいメッセージは、プロファイルが Google Cloud プロジェクトにアップロードされるたびに表示されます。

サービスを停止するには、Ctrl+C キーを押します。

hotapp

サンプル hotapp では、2 つの関数を呼び出してから Go スケジューラを呼び出す、無限ループを使用しています。このサンプルでは、フラグ -local_work を設定できます。このフラグが true の場合、for ループの形式の処理が個々の関数に追加されます。デフォルトでは、このフラグは false に設定されています。

hotapp サンプルを実行するには、次の手順を行います。

  1. hotapp ディレクトリに移動します。

    cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/hotapp
    
  2. 次のコマンドを実行してサービスを開始します。

    go run main.go
    

    Cloud Profiler のドキュメントに示されているデータと一致するプロファイル データを生成する場合は、次の呼び出しを使用します。

    go run main.go -service=docdemo-service -local_work -skew=75 -version=1.75.0
    

メッセージ profiler has started は、サービスを開始してから数秒後に Cloud Shell セッションに表示されます。新しいメッセージは、プロファイルが Google Cloud プロジェクトにアップロードされるたびに表示されます。

サービスを停止するには、Ctrl+C キーを押します。

プロファイルの比較のセクションでは、docdemo-service の 2 つの異なるデプロイメントを使用しました。1 つ目のデプロイメントでは、skewversion は前述のように設定されています。2 つ目のデプロイメントでは、skew25 に設定され、version1.25.0 に設定されています。

トラブルシューティング

サービスの開始後にアクセス拒否エラー メッセージが表示された場合は、Google Cloud プロジェクト構成のエラーをご覧ください。