arrow_back

Monitoring and Logging for Cloud Functions

参加 ログイン

Monitoring and Logging for Cloud Functions

45分 クレジット: 1

GSP092

Google Cloud セルフペース ラボ

Cloud Monitoring を使用すると、Cloud Functions について確認する際にその実行時間、実行回数、Cloud Console でのメモリ使用量を確認でき、これらの指標に関するカスタム アラートも設定できます。

設定と要件

[ラボを開始] ボタンをクリックする前に

こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。

この Qwiklabs ハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

必要なもの

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
  • ラボを完了するために十分な時間

注: すでに個人の Google Cloud アカウントやプロジェクトをお持ちの場合でも、ラボでは使用しないでください。

注: Chrome OS デバイスを使用している場合は、シークレット ウィンドウを開いてこのラボを実行してください。

ラボを開始して Google Cloud コンソールにログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。

    • [Google コンソールを開く] ボタン
    • 残り時間
    • このラボで使用する必要がある一時的な認証情報
    • このラボを行うために必要なその他の情報(ある場合)
  2. [Google コンソールを開く] をクリックします。 ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、[ラボの詳細] パネルから [ユーザー名] をコピーして [ログイン] ダイアログに貼り付けます。[次へ] をクリックします。

  4. [ラボの詳細] パネルから [パスワード] をコピーして [ようこそ] ダイアログに貼り付けます。[次へ] をクリックします。

    重要: 認証情報は左側のパネルに表示されたものを使用してください。Google Cloud Skills Boost の認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  5. その後次のように進みます。

    • 利用規約に同意してください。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

その後このタブで Cloud Console が開きます。

注: 左上にある [ナビゲーション メニュー] をクリックすると、Google Cloud のプロダクトやサービスのリストが含まれるメニューが表示されます。 ナビゲーション メニュー アイコン

Google Cloud Shell の有効化

Google Cloud Shell は、デベロッパー ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Google Cloud Shell では、コマンドラインで GCP リソースにアクセスできます。

GCP Console の右上のツールバーにある [Cloud Shell をアクティブにする] ボタンをクリックします。

Cloud Shell アイコン

[続行] をクリックします。

cloudshell_continue

環境のプロビジョニングと接続には少し時間がかかります。接続すると、すでに認証されており、プロジェクトは PROJECT_ID に設定されています。例えば:

Cloud Shell 端末

gcloud は Google Cloud Platform のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。

次のコマンドを使用すると、有効なアカウント名を一覧表示できます。

gcloud auth list

出力:

ACTIVE: *
ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net
To set the active account, run:
    $ gcloud config set account `ACCOUNT`
	

次のコマンドを使用すると、プロジェクト ID を一覧表示できます。

gcloud config list project
	

出力:

[core]
project = <project_ID>
	

出力例:

[core]
project = qwiklabs-gcp-44776a13dea667a6
	

Cloud Monitoring での Cloud Functions のログと指標の表示

ログとアラートを収集するには、モニタリングの対象が必要です。このセクションでは、Hello World と表示する Cloud Functions の関数を作成します。

  1. Cloud Console でナビゲーション メニュー > [Cloud Functions] > [関数の作成] の順に選択します。

cloud_nav.png

  1. 以下のとおりに設定します。

  • 関数名: helloWorld
  • トリガーのタイプ: HTTP
  • 認証: [未承認の呼び出しを許可] の横にあるチェックボックスをオンにします

[保存]、[次へ] の順にクリックします。

  1. 次の内容が表示されます。

cloudfunction_ui.png

  1. [デプロイ] をクリックします。

関数が自動的にデプロイを実行し、Cloud Functions ページに記載されます。これには数分かかります。関数名の横に緑色のチェックマークが付いているのを確認できたら、関数の作成は完了です。

完了したタスクをテストする

[進行状況を確認] をクリックして、実行したタスクを確認します。タスクが正常に完了すると、評価スコアが提供されます。

Cloud Functions の関数を作成する
  1. Cloud Shell で次のコマンドを実行し、Cloud Functions の関数にテスト トラフィックを送信できる vegeta というツールを入手します。

wget 'https://github.com/tsenart/vegeta/releases/download/v6.3.0/vegeta-v6.3.0-linux-386.tar.gz'
  1. 次のコマンドを使用して、vegeta ツールを展開します。

tar xvzf vegeta-v6.3.0-linux-386.tar.gz
  1. 引き続き [Cloud Functions] ページで、関数の名前をクリックし、[トリガー] タブをクリックします。関数のトリガー URL をクリックします。

trigger_tab.png

新しく開いたブラウザのタブに Hello World! と表示されたら、関数は正常に動作しています。

output.png

  1. 次に、Cloud Functions の関数にトラフィックを送信します。Cloud Shell で次のコマンドを実行して、<YOUR_PROJECT_ID> 内をプロジェクト ID に、qwiklabsDemo を関数名に置き換えます。

echo "GET https://us-central1-<YOUR_PROJECT_ID>.cloudfunctions.net/qwiklabsDemo" | ./vegeta attack -duration=300s > results.bin

ログベースの指標を作成する

次に、正規表現を使用してログエントリの textPayload フィールドからレイテンシの値を抽出する、分布タイプのログベースの指標を作成します。

  1. Cloud Console でナビゲーション メニュー > [ロギング] > [ログ エクスプローラ] の順に選択すると、Cloud Logging が開きます。

  2. Cloud Functions からのログを確認するには、[リソース] プルダウンで [Cloud Functions 関数] > [helloWorld] の順に選択して [追加] をクリックします。[ログ名] プルダウンで [cloud-functions] チェックボックスを選択し、[追加] をクリックします。

  3. [クエリを実行] をクリックします。

cl-function_CF-Logs.png

  1. [操作] プルダウンで [指標を作成] をクリックします。

function-logs.png

  1. 指標エディタ:

  • 指標に CloudFunctionLatency-Logs という名前を付けます。

  • タイプを [Distribution] に変更します。

  • [フィールド名] に「textPayload」と入力します。

  • [抽出の正規表現] フィールドの横にある [作成] をクリックします。

  • [正規表現] フィールドに次のように入力して、[完了] をクリックします。

execution took (\d+)

指標エディタは次のようになります。

metric_editor.png

  1. [指標を作成] をクリックします。

これで、ユーザー定義の指標が [ログベースの指標] ページに追加され、表示されます。

user_defined_metric.png

完了したタスクをテストする

[進行状況を確認] をクリックして、実行したタスクを確認します。タスクが正常に完了すると、評価スコアが提供されます。

ログベースの指標を作成する

Metrics Explorer

次に、Metrics Explorer を使用して、Cloud Functions の関数のデータを確認します。

Monitoring ワークスペースを作成する

Google Cloud プロジェクトに関連付けられた Monitoring ワークスペースを設定します。次の手順に沿って、Monitoring を無料でお試しいただける新しいアカウントを作成します。

  1. Cloud Console で、ナビゲーション メニュー > [Monitoring] をクリックします。

  2. Monitoring Overview ページが開いたら、メトリック スコープ プロジェクトの準備は完了です。

Overview.pngMonitoringWindow.png

  1. 左側のメニューで [Metrics Explorer] をクリックします。

  2. [Find resource type and metric] に「executions」と入力し、 提案された指標から [Executions] を選択します。

metric_detail.png

  1. グラフの上部にあるプルダウン メニューを使用して、グラフのタイプを [Stacked Bar] に変更します。

  2. 他の指標とグラフ オプションも試してみましょう。たとえば、指標の横にある [X] をクリックし、[Execution times] を選択して、グラフのタイプを [Heatmap] に変更します。

diff_metric.png

  1. 他にもいろいろと試してみましょう。たとえば、指標を [Executions] に戻して、アグリゲータを [95 Percentile] に変更します。グラフのタイプ [Line] を選択します。

dash.png

Monitoring の [概要] ウィンドウでグラフを作成する

Monitoring の [概要] ウィンドウでグラフを作成すると、自分にとって重要な指標を簡単に追跡できます。このセクションでは、前のセクションで作成したのと同じグラフを設定します。ただし、ここでは作成したグラフが Monitoring の [概要] ウィンドウに保存されます。

  1. 左側のメニューで [概要] をクリックします。

  2. [Charts] セクションで [Add Chart] をクリックします。

注: [Add Chart] オプションがグレー表示されている場合は、概要ページから既存のグラフを削除してください。
  1. [Find resource type and metric] フィールドをクリックし、前のセクションで最初のグラフに使用したリソースの種類と指標を選択してから、[Save] をクリックします。

  2. 最初のグラフを作成した後、[Add Chart] をクリックしてグラフをもう 1 つ作成します。このグラフには、前のセクションで 2 番目のグラフに使用した指標を使います。[Save] をクリックします。

デフォルトでは使用している指標の名前がグラフ名になりますが、変更することもできます。

作成した 2 つのグラフは、Monitoring の [概要] ウィンドウの [Charts] セクションに表示されるので、すばやく確認することができます。

charts_section.png

理解度を確認する

以下の問題に取り組み、今回のラボで学習した内容の理解を深めましょう。正解を目指して頑張ってください。

お疲れさまでした

クエストを完了する

stackdriver_quest_icon.png stackdriver-logging-badge.png

このセルフペース ラボは、Qwiklabs の「Google Cloud's Operations Suite」および「Cloud Logging」クエストの一部です。クエストとは学習パスを構成する一連のラボのことで、完了すると成果が認められて上のようなバッジが贈られます。バッジは公開して、オンライン レジュメやソーシャル メディア アカウントにリンクできます。このラボの修了後、次のクエストに登録すれば、すぐにクレジットを受け取ることができます。受講可能なその他の Qwiklabs のクエストもご確認ください

次のラボを受講する

Autoscaling an Instance Group with Custom Cloud Monitoring Metrics」に進んでクエストを続けるか、以下のおすすめのラボをご確認ください。

Google Cloud Training & Certification

Google Cloud 技術を最大限に活用できるようになります。このクラスでは、必要な技術力とベスト プラクティスを習得し、継続的に学習することができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、仮想環境など、多忙なスケジュールに対応できるオプションが用意されています。認定資格を取得することで、Google Cloud の技術のスキルと知識を証明できます。

マニュアルの最終更新日: 2021 年 3 月 2 6日
ラボの最終テスト日: 2021 年 3 月 26 日

Copyright 2020 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。