
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Set up resources in the first project
/ 20
Configure the export to BigQuery
/ 40
Create a logging metric
/ 40
このラボでは、Cloud Logging と Cloud Monitoring の一般的な構成と使用方法について学習します。
フィルタを使ってログを表示する方法や、BigQuery シンクにログをエクスポートする方法、ロギング指標を作成する方法を学びます。また、Cloud Monitoring を使って使用状況の指標を表示する方法やダッシュボードを作成する方法も学びます。
このラボでは、次のタスクの実行方法について学びます。
各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。
Qwiklabs にシークレット ウィンドウでログインします。
ラボのアクセス時間(例: 1:15:00
)に注意し、時間内に完了できるようにしてください。
一時停止機能はありません。必要な場合はやり直せますが、最初からになります。
準備ができたら、[ラボを開始] をクリックします。
ラボの認証情報(ユーザー名とパスワード)をメモしておきます。この情報は、Google Cloud Console にログインする際に使用します。
[Google Console を開く] をクリックします。
[別のアカウントを使用] をクリックし、このラボの認証情報をコピーしてプロンプトに貼り付けます。
他の認証情報を使用すると、エラーが発生したり、料金の請求が発生したりします。
利用規約に同意し、再設定用のリソースページをスキップします。
Google Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。
Google Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。
Google Cloud コンソールで、右上のツールバーにある [Cloud Shell をアクティブにする] ボタンをクリックします。
[続行] をクリックします。
環境がプロビジョニングされ、接続されるまでしばらく待ちます。接続した時点で認証が完了しており、プロジェクトに各自のプロジェクト ID が設定されます。次に例を示します。
gcloud は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。
出力:
出力例:
出力:
出力例:
このタスクでは、1 つ目のプロジェクトの Google Cloud リソースを作成します。
Qwiklabs の [接続の詳細] セクションに 2 つのプロジェクトが表示されています。1 つ目のプロジェクトに、ログとモニタリング用指標データを生成する有効な Google Cloud リソースを設定します。
2 つ目のプロジェクトには、Monitoring アカウントの構成データが保存されます。
Cloud Shell をアクティブにしていない場合は、[Cloud Shell をアクティブにする] をクリックしてアクティブにしてください。プロンプトが表示されたら、[続行] をクリックします。
Cloud Shell で、設定コードを含むアーカイブをダウンロードして展開します。
Cloud Shell セッションの右上にある [エディタを開く] アイコンをクリックします。
プロンプトが表示されたら、[新しいウィンドウで開く] をクリックします。
stackdriver-lab フォルダを開き、linux_startup.sh ファイルを選択します。
# install Ops Agent
セクションを、次のコードに置き換えます。
コードを貼り付けたら、コード行が適切にインデントされていることを確認します。
ファイルを保存します。
setup.sh
ファイルを開きます。
# create vms
セクションの --image
の後に続いている windows-server のイメージ バージョン(17 行目)を次のように更新します。
コードを貼り付けたら、コード行が適切にインデントされていることを確認します。
ファイルを保存します。
Cloud コンソールの右上で、[ターミナルを開く] をクリックします。
作成されるリソースには次のものが含まれます。
サービス アカウントとファイアウォールがすでに存在しているというエラーは無視してかまいません。
Linux と Windows 両方の VM が作成されたことを示す、次のような出力が返されることを確認します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
このタスクでは、シンプルなフィルタで VM インスタンスのログを表示します。
Google Cloud コンソールのホームページを開いていることを確認します。
プロジェクト 1 で作業していることを確認します。コンソールの情報パネルのプロジェクト ID が、ラボの接続の詳細パネルの GCP プロジェクト ID 1 と一致している必要があります。
ナビゲーション メニュー > [ロギング] > [ログ エクスプローラ] を選択して、Cloud Logging を表示します。プロンプトが表示されたら、通知を閉じます。
左側のパネルに [ログのフィールド] が表示されます。[リソースの種類] に、ログを作成している Google Cloud サービスがいくつか表示されます。
ここに表示されているサービスはすべてログエントリの書き込みを行っています。これらのログエントリがすべて右側の [クエリ結果] ペインに表示されます。クエリを使って、特定のログや、特定の基準を満たすログの結果を取得することもできます。
クリックすると、次のようになります。
インスタンス ID
] という名前の新しいフィールドが表示されます。このフィールドには、ログエントリを書きこんでいる VM インスタンスの ID がすべて表示されます。resource.type="gce_instance"
が入力されています。これは、VM インスタンスのエントリだけがログに記録されて表示されるという意味です。[インスタンス ID] フィールドでインスタンス ID の 1 つを選択します。関連付けられた VM インスタンスのログが [クエリ結果] ペインに表示されます。
[クエリ] ボックスの内部をクリックします。これで編集できるようになります。
[クエリ] ボックスで、1 行目以外をすべて削除します。これで、resource.type="gce_instance"
を含む 1 行目だけが表示された状態になります。
右上にある [クエリを実行] をクリックします。[クエリ結果] にすべての VM インスタンスのログエントリが表示されます。
ログパネルが以前の状態に戻ります。
[ログをストリーム](右上の [クエリを実行] ボタンの横)をクリックして、ログのストリーミングを有効にします。
バックグラウンド アクティビティでウェブサーバーに対して不正なリクエストが生成されるのに応じて、1~2 秒ごとに新しいログエントリが表示されます。
これで、Linux Apache サーバー上の全体的なウェブ アクティビティを表示できるようになります。
右上にある [ストリームを停止] をクリックして、ログのストリーミングを停止します。
次に、[すべてのログ名] プルダウンをクリックし、[syslog] を選択してから、[適用] をクリックします。
[クエリ結果] ペインに syslog のエントリが表示されます。
このタスクでは、BigQuery へのログのエクスポートを構成し、テストします。
Cloud Logging では、ログエントリが 30 日間保持されます。多くの場合、一部のログエントリの保持期間を延長する必要が生じます(さらにアーカイブされたログから高度なレポートを作成する必要が生じる場合もあります)。
Google Cloud が提供するメカニズムによって、Cloud Monitoring に取り込まれたすべてのログエントリを、複数のアーカイブ用シンク
にも書き込むことができます。
Cloud Logging のエクスポート用ページに移動します(ナビゲーション メニュー > [ロギング] > [ログルーター])。
[シンクを作成] をクリックします。
[シンク名] に「vm_logs
」と入力し、[次へ] をクリックします。
[シンクサービスの選択] で [BigQuery データセット] を選択します。
[BigQuery データセットを選択] で [新しい BigQuery データセットを作成する] を選択します。
[データセット ID] に「project_logs
」と入力し、[データセットを作成] をクリックします。
[次へ] をクリックします。
resource.type="gce_instance"
をコピーして、[包含フィルタの作成] リストボックスに貼り付けます。
[シンクを作成] をクリックします。ログルーターの [ログシンクの次のステップを作成] ページが再び表示されます(上部に「ログシンクを作成しました。データはすぐに利用可能になります。」というメッセージが表示される場合があります)。
Monitoring > Pub/Sub > Dataflow > BigQuery/Bigtable
の順に処理)。
Cloud Storage にエクスポートする場合は、約 1 時間ごとにエントリがまとめて Cloud Storage オブジェクト内に書き込まれます。次に、BigQuery への HTTP ロード バランシングのログのエクスポートを作成します。
左側のナビゲーション メニューで [ログルーター] を選択してサービスのホームページに戻ります。
[シンクを作成] をクリックします。
[シンク名] に「load_bal_logs
」と入力し、[次へ] をクリックします。
[シンクサービスの選択] で [BigQuery データセット] を選択します。
[BigQuery データセットを選択] で [project_logs] を選択します(これは先ほど実施したステップで作成した BigQuery データセットです)。
[次へ] をクリックします。
resource.type="http_load_balancer"
をコピーして、[包含フィルタの作成] リストボックスに貼り付けます。
[シンクを作成] をクリックします。
ログシンクの [ログシンクの次のステップを作成] ページが表示されます。
左側のナビゲーション メニューで [ログルーター] を選択してサービスのホームページに戻ります。
[ログルーター] ページが表示され、先ほど作成したシンク(load_bal_logs
)を含む、シンクのリストが表示されます。
BigQuery を開きます(ナビゲーション メニュー > [BigQuery])。
[Cloud コンソールの BigQuery へようこそ] メッセージ ボックスが開きます。このメッセージ ボックスにはクイックスタート ガイドへのリンクと、UI の更新情報が表示されます。
[完了] をクリックします。
[エクスプローラ] セクションの左側のペインで、プロジェクト(qwiklabs-gcp-xxx
で始まるもの)の横にある矢印をクリックします。これにより、プロジェクトの下に project_logs
データセットが表示されます。
次に、エクスポート時の書き込みでログエントリを保存できるように、BigQuery データセットに適切な権限が付与されていることを確認します。
project_logs
データセットの横のその他メニュー(「アクションを表示」)をクリックし、[開く] をクリックします。
コンソールの右上にある [共有] プルダウンをクリックし、[権限] を選択します。
データセットの権限のページで、サービス アカウントに BigQuery データ編集者のロールが付与されていることを確認します。
データセットの権限のパネルを閉じます。
project_logs
データセットを開き、エクスポートされたログのテーブルを確認します。テーブルは複数(エントリを受け取っているログの種類ごとに 1 つずつ)あります。
syslog_(1) テーブルをクリックし、[詳細] をクリックして行数とその他のメタデータを確認します。syslog_(1) テーブルが表示されていない場合は、ブラウザを更新してみてください。
[詳細] タブの [テーブル情報] にある [テーブル ID] に、完全なテーブル名が表示されます。このテーブル名をコピーします。
qwiklabs-gcp-xx.project_logs.syslog_xxxxx
を、前のステップでコピーしたテーブル名に置き換えます)。任意のクエリを実行して、さまざまな分析情報を取得してみてください。
注: Cloud Logging では、ロギング ストレージへのエントリの取り込みに関する決定が行われる前に、受け取ったログエントリがエクスポートされます。そのため、シンクには新しいログエントリのみがエクスポートされます。その結果、エクスポート前に syslog エントリがすべて生成され、syslog_(1)
テーブルが表示されない可能性があります。
gcloud logging read "resource.type=gce_instance AND logName=projects/[PROJECT_ID]/logs/syslog AND textPayload:SyncAddress" --limit 10 --format json
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
このタスクでは、「アクセス拒否」のログエントリが生成されるウェブ リクエストが過剰に発生した場合のアラート生成に使用できる指標を作成します。
Cloud Monitoring では、特定のログエントリを受け取った場合にカスタム指標を作成できます。
(コンソールの右側にある)[アクション] プルダウンから [指標を作成] を選択し、このフィルタに基づくロギング指標を作成します。
ログベースの指標エディタで、[指標タイプ] を [カウンタ] に設定します。
[詳細] セクションで、[ログベースの指標の名前] に「403s」と入力します。
[フィルタの選択] の [フィルタの作成] に、次のコマンドを入力します。PROJECT_ID
は [GCP プロジェクト ID 1] のプロジェクト ID に置き換えます。
その他の項目はすべてデフォルトのままにします。
[指標を作成] をクリックします。
この指標は、このラボでダッシュボード作成の際に使用します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
このタスクでは、Qwiklabs で作成した 2 つ目のプロジェクトに切り替え、Monitoring ワークスペースをセットアップします。
切り替え先となる 2 つ目のプロジェクトをクリックします。Qwiklabs の [接続の詳細] にある [GCP プロジェクト ID 2] のプロジェクトであることを確認します。
[開く] をクリックします。
Google Cloud プロジェクトに関連付けられた Monitoring ワークスペースを設定します。次の手順に沿って、Monitoring を無料でお試しいただける新しいアカウントを作成します。
Cloud コンソールで、ナビゲーション メニュー > [Monitoring] をクリックします。
ワークスペースがプロビジョニングされるまで待ちます。
Monitoring ダッシュボードが開いたら、ワークスペースの準備は完了です。
Cloud Monitoring ワークスペースに 1 つ目のプロジェクトを追加します。
左側のメニューで [Monitoring の設定] をクリックし、[+ GCP プロジェクトを追加] をクリックします。
[プロジェクトを選択] をクリックします。
1 つ目のプロジェクト ID の横にあるチェックマークをオンにしてから、[選択] をクリックします。
[プロジェクトを追加] をクリックします。
左側のペインで [ダッシュボード] をクリックします。
[+ ダッシュボードを作成] をクリックします。
上部の一般的なダッシュボード名を「Example Dashboard
」に置き換えます。
[ウィジェットを追加] をクリックし、[折れ線] グラフをクリックします。
[ウィジェットのタイトル] として「CPU Usage」と入力します。
[指標] プルダウンをクリックします。
[有効] をクリックして選択を解除します。ティックが表示されなくなったことを確認します。
[指標] として、[VM インスタンス] > [インスタンス] > [CPU 使用率] の順に選択します。compute.googleapis.com/instance/cpu/usage_time
の形式であることを確認します。
[適用] をクリックします。
次に、右上にある [適用] をクリックします。
[ウィジェットを追加] をクリックし、[折れ線] グラフをクリックします。
[ウィジェットのタイトル] として「Memory Utilization」と入力します。
[指標] プルダウンをクリックします。
[有効] をクリックして選択を解除します。ティックが表示されなくなったことを確認します。
[指標] として、[VM インスタンス] > [メモリ] > [メモリ使用率] を選択します。agent.googleapis.com/memory/percent_used
の形式であることを確認します。
[適用] をクリックします。
次に、右上にある [適用] をクリックします。
これで、2 つのグラフが表示されるようになりました。一つは CPU 使用率のグラフで、もう一つはメモリ使用率のグラフです。
これで、グラフでフィルタ、グループ化、集計などのオプションを編集できるようになりました。
このラボでは、次の方法について学びました。
さまざまなメカニズムのフィルタを使用してログを表示する。
ログエントリを除外し、ログ取り込みを無効にする。
ログをエクスポートし、エクスポートしたログでレポートを生成する。
ロギング指標を作成し、レポートを生成する。
Cloud Monitoring を使用してさまざまな Google Cloud プロジェクトをモニタリングする。
指標のダッシュボードを作成する。
ラボが完了したら、[ラボを終了] をクリックします。ラボで使用したリソースが Google Cloud Skills Boost から削除され、アカウントの情報も消去されます。
ラボの評価を求めるダイアログが表示されたら、星の数を選択してコメントを入力し、[送信] をクリックします。
星の数は、それぞれ次の評価を表します。
フィードバックを送信しない場合は、ダイアログ ボックスを閉じてください。
フィードバックやご提案の送信、修正が必要な箇所をご報告いただく際は、[サポート] タブをご利用ください。
Copyright 2020 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。
このコンテンツは現在ご利用いただけません
利用可能になりましたら、メールでお知らせいたします
ありがとうございます。
利用可能になりましたら、メールでご連絡いたします
One lab at a time
Confirm to end all existing labs and start this one