Logging エージェントは、VM インスタンスや選択したサードパーティ ソフトウェア パッケージから Cloud Logging にログをストリーミングします。すべての VM インスタンスで Logging エージェントを実行することをおすすめします。
Compute Engine と Amazon Elastic Compute Cloud(EC2)の VM イメージには Logging エージェントが含まれていないため、これらのインスタンスにインストールするには以下の手順を実施する必要があります。エージェントは Linux と Windows の両方で稼働します。
VM が Google Kubernetes Engine または App Engine で実行されている場合、エージェントはすでに VM イメージに含まれているため、このページをスキップできます。
始める前に
エージェントをインストールするには、次のものが必要です。
Google Cloud プロジェクト、またはアマゾン ウェブ サービス(AWS)アカウントでサポートされている VM インスタンス。
- Logging エージェントをインストールする場合は、最低 250 MiB のメモリが必要ですが、1 GiB をおすすめします。
VM がサポートされているオペレーティング システムを実行していることも確認します。
Cloud Logging または Cloud Monitoring との通信を承認する VM インスタンス上の認証情報。通常、Compute Engine VM インスタンスにはデフォルトで適切な認証情報があります。次のいずれかのシナリオが該当する場合は、適切な認証情報がない可能性があるため、Logging エージェントの認可手順を完了する必要があります。
AWS EC2 VM インスタンスを実行している場合は、エージェントをインストールする前に VM に認証情報をインストールする必要があります。
非常に古い、またはデフォルトの認証情報なしで作成された Compute Engine インスタンスを実行している場合。
適切な認証情報があるかどうかを確認するには、Compute Engine の認証情報を確認するの手順を実施します。
AWS ユーザーの場合は、次の手順を行います。
AWS アカウントを Google Cloud に接続します。このプロセスについては、AWS アカウントから指標を収集するをご覧ください。
詳細については、AWS EC2 VM インスタンスの Google Cloud プロジェクト セクションをご覧ください。
料金情報については、Google Cloud Observability の料金をご覧ください。
リモート パッケージ リポジトリにアクセスできない VM を使用している場合は、リモート パッケージ アクセスを使用しない VM で詳細をご確認ください。
コマンドラインからエージェントをインストールする
コマンドラインを使用してエージェントをインストールする手順は次のとおりです。
最新バージョンのエージェントをインストールする
エージェントの最新バージョンをインストールする手順は次のとおりです。
Linux
SSH または同様のツールを使用して、VM インスタンスへのターミナル接続を開き、
sudo
アクセス権があることを確認します。たとえば、ホーム ディレクトリなど、書き込みアクセス権があるディレクトリに移動します。
次のコマンドを使用して、エージェントのインストール スクリプトをダウンロードして実行します。
curl -sSO https://dl.google.com/cloudagents/add-logging-agent-repo.sh sudo bash add-logging-agent-repo.sh --also-install
インストール後、エージェントは自動的に起動します。
Windows
RDP または同様のツールを使用してインスタンスに接続し、Windows にログインします。
PowerShell アイコンを右クリックし、[管理者として実行] を選択して、管理者権限で PowerShell ターミナルを開きます。
次の PowerShell コマンドを実行します。
(New-Object Net.WebClient).DownloadFile("https://dl.google.com/cloudagents/windows/StackdriverLogging-v1-21.exe", "${env:UserProfile}\StackdriverLogging-v1-21.exe") & "${env:UserProfile}\StackdriverLogging-v1-21.exe"
特定のバージョンのエージェントをインストールする
特定のバージョンのエージェントをインストールするには、次の手順を行います。
Linux
SSH または同様のツールを使用して、VM インスタンスへのターミナル接続を開き、
sudo
アクセス権があることを確認します。たとえば、ホーム ディレクトリなど、書き込みアクセス権があるディレクトリに移動します。
エージェントのインストール スクリプトをダウンロードします。
curl -sSO https://dl.google.com/cloudagents/add-logging-agent-repo.sh
add-logging-agent-repo.sh
スクリプトを実行するときに、次のフラグを設定することもできます。--verbose
: スクリプトの実行中に詳細ログを有効にします。--also-install
: エージェント パッケージ リポジトリを追加した後にエージェントをインストールします。--version
: スクリプトをインストールするエージェントのバージョンを設定します。 バージョン情報については、すべてのエージェント バージョンを一覧表示するをご覧ください。--uninstall
: エージェントをアンインストールします。--remove-repo
: エージェントをインストールまたはアンインストールした後に、対応するエージェント パッケージ リポジトリを削除します。--dry-run
: スクリプト実行のドライランのみがトリガーされ、実行するはずのコマンドを出力します。
詳細と使用例については、スクリプトのコメントをご覧ください。
エージェントのパッケージ リポジトリを追加して、エージェントをインストールします。
使用可能なエージェント バージョンを一覧表示するには、すべてのエージェント バージョンを一覧表示するをご覧ください。
本番環境では、下位互換性のない変更を含む可能性のあるメジャー バージョンをインストールしないように、メジャー バージョンに固定することをおすすめします。メジャー バージョンに固定するには、次のコマンドを実行します。
sudo bash add-logging-agent-repo.sh --also-install \ --version=MAJOR_VERSION.*.*
たとえば、エージェントの 1.x.x に固定するには、次のコマンドを実行します。
sudo bash add-logging-agent-repo.sh --also-install \ --version=1.*.*
特定のバージョンのエージェントをインストールするには、次のコマンドを実行します。
sudo bash add-logging-agent-repo.sh --also-install \ --version=MAJOR_VERSION.MINOR_VERSION.PATCH_VERSION
エージェント サービスを再起動します。
上記のキャッチオール パッケージによってインストールされた構成を有効にするために、再起動が必要です。
sudo service google-fluentd restart
正常に実行されたら、インストール スクリプトを削除します。
エージェントが期待どおりに動作していることを確認するには、次のコマンドを実行します。
sudo service google-fluentd status
エージェントのステータスは OK である必要があります。
ログを調べて、エラーがないことを確認することもできます。
tail /var/log/google-fluentd/google-fluentd.log
インストールに問題がある場合は、トラブルシューティング ページをご覧ください。
Windows
RDP または同様のツールを使用してインスタンスに接続し、Windows にログインします。
PowerShell アイコンを右クリックし、[管理者として実行] を選択して、管理者権限で PowerShell ターミナルを開きます。
次の PowerShell コマンドを実行します。
(New-Object Net.WebClient).DownloadFile("https://dl.google.com/cloudagents/windows/StackdriverLogging-v1-21.exe", "${env:UserProfile}\StackdriverLogging-v1-21.exe") & "${env:UserProfile}\StackdriverLogging-v1-21.exe"
また、次の URL にアクセスして、エージェントのインストーラをダウンロードして実行することもできます。
https://dl.google.com/cloudagents/windows/StackdriverLogging-v1-21.exe
エージェントをサイレント モードでインストールするには、次のようにインストーラの起動時に
/S
オプションを追加します。& "${env:UserProfile}\StackdriverLogging-v1-21.exe" /S
「サイレント」モードでは、
/D
オプションを使用してインストール ディレクトリを指定します。次に例を示します。& "${env:UserProfile}\StackdriverLogging-v1-21.exe" /S /D="C:\Stackdriver\Logging\"
正常に完了したら、インストーラを削除できます。
インストールに問題がある場合は、トラブルシューティング ページをご覧ください。
Google Cloud コンソールでのエージェント情報の表示
エージェントのステータス情報は、事前構成された Monitoring の [VM インスタンス] ダッシュボードで確認できます。このダッシュボードにアクセスする方法は次のとおりです。
Google Cloud コンソールで、[VM インスタンス ダッシュボード] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
次のスクリーンショットのように、ダッシュボードの [INVENTORY] タブのリストビューには、すべての VM が一覧表示され、[エージェント] 列にステータスが表示されています。
[エージェント] 列には、次の値が報告されます。
未検出: エージェントがインストールされていないか、実行されていません。エージェントがインストールされているかどうかわからない場合は、インストールされているバージョンをクエリできます。エージェントがすでにインストールされている場合は、エージェントを再起動できます。
Ops エージェント: Ops エージェントを実行しています。エントリの横に緑色のチェックマークが表示されない場合は、VM の検出されたオペレーティング システムに基づいて、エージェントのアップグレードが可能です。
テーブルの Ops エージェント インジケーターにカーソルを合わせると、Ops エージェントのバージョンに関する情報が表示されます。古いバージョンを実行している場合は、エージェントをアップグレードするための推奨事項も表示されます。
保留中: Ops エージェントがインストールまたはアップグレードされています。
以前のエージェント: 以前の Monitoring または Logging エージェントを実行しています。Ops エージェントへの移行については、以前のエージェントから Ops エージェントへの移行をご覧ください。
該当なし: この VM は、エージェントの実行に対応していないプラットフォームです。
不明: VM は実行されていないため、エージェントのステータスは不明です。
Ops エージェントは、次の手順でインストールできます。
- エージェントをインストールする VM インスタンスを選択します。
- [インスタンス] テーブルで [Ops エージェントのインストール / 更新] オプションをクリックします。
特定の VM の [VM の詳細] ページから、Ops エージェントをインストールまたは更新することもできます。
可能な場合、エージェントは Ops エージェントの OS ポリシーを使用してインストールされます。詳細については、Ops エージェントの OS ポリシーの対象となる VM を管理するをご覧ください。Ops エージェントの OS ポリシーは、すべてのオペレーティング システムのすべてのバージョンでサポートされているわけではありません。この場合、[Ops エージェントのインストール / 更新] をクリックすると、Cloud Shell で実行する一連のコマンドが提供されます。
Ops エージェントはデフォルトで指標とログの両方を収集します。このデフォルト動作は、Ops エージェントを構成することで変更できます。
オプションのタスク
このセクションでは、一般的なメンテナンス タスクを行う方法について説明します。
構造化ロギングを有効にする
Linux VM でインストール スクリプトを実行するときに、--also-install
フラグがあると、デフォルトで google-fluentd-catch-all
パッケージがインストールされます。構造化ロギングに切り替えるには、次の手順を行います。
ローカルでの変更を
/etc/google-fluentd/config.d/
にバックアップします。Linux ディストリビューションに応じて、次のいずれかのコマンドを実行します。
YUM:
sudo yum remove -y google-fluentd-catch-all-config sudo yum install -y google-fluentd-catch-all-config-structured sudo service google-fluentd restart
APT:
sudo apt-get remove -y google-fluentd-catch-all-config sudo apt-get install -y google-fluentd-catch-all-config-structured sudo service google-fluentd restart
構造化ロギングの詳細については、構造化ロギングのガイドをご覧ください。
Logging エージェントの構成
エージェントは、特定の既知のログの場所をモニタリングするように事前構成されています。Linux では、これらの場所はパッケージ google-fluentd-catch-all-config
で記述され、このパッケージはインストール スクリプトによって自動的に取得されます。Windows では、エージェントはデフォルトで Windows イベントログをモニタリングします。
エージェント構成を調整するには、Logging エージェントの構成をご覧ください。
HTTP プロキシを構成する
HTTP プロキシを使用して Logging API と Monitoring API にリクエストをプロキシする場合は、次の操作を行います。
Linux
次の構成ファイルを編集します(まだファイルが存在しない場合は作成します)。
/etc/default/google-fluentd
ファイルに以下を追加します。
export http_proxy="http://proxy-ip:proxy-port" export https_proxy="http://proxy-ip:proxy-port" export no_proxy=169.254.169.254 # Skip proxy for the local Metadata Server.
VM インスタンスで次のコマンドを実行して、エージェントを再起動します。
sudo service google-fluentd restart
Windows
HTTP プロキシを使用する場合は、管理者コマンド プロンプトから次のコマンドを実行します。これにより、環境変数の
http_proxy
とhttps_proxy
が設定され、エージェントがアウトバウンド HTTPS を使用してデータを送信できるようにします。setx http_proxy http://proxy-ip:proxy-port /m setx https_proxy http://proxy-ip:proxy-port /m setx no_proxy 169.254.169.254 /m
エージェント バージョンを確認する
システムで Logging エージェントのバージョンを確認するには、VM インスタンスで次のコマンドを実行します。
Amazon Linux AMI / CentOS / RHEL
Amazon Linux、Red Hat、または CentOS Linux で次のコマンドを実行します。
rpm --query --queryformat '%{NAME} %{VERSION} %{RELEASE} %{ARCH}\n' google-fluentd google-fluentd-catch-all-config google-fluentd-catch-all-config-structured
Debian / Ubuntu
Debian または Ubuntu で次のコマンドを実行します。
dpkg-query --show --showformat '${Package} ${Version} ${Architecture} ${Status}\n' google-fluentd google-fluentd-catch-all-config google-fluentd-catch-all-config-structured
SLES / SUSE
SUSE で次のコマンドを実行します。
rpm --query --queryformat '%{NAME} %{VERSION} %{RELEASE} %{ARCH}\n' google-fluentd google-fluentd-catch-all-config google-fluentd-catch-all-config-structured
WINDOWS
RDP または同様のツールを使用してインスタンスに接続し、Windows にログインします。
PowerShell アイコンを右クリックし、[管理者として実行] を選択して、管理者権限で PowerShell ターミナルを開きます。
次の PowerShell コマンドを実行します。
reg query HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\GoogleStackdriverLoggingAgent\ /v Version
エージェントを再起動する
構成ファイルの変更を取得するには、Logging エージェントを再起動する必要があります。エージェントを再起動するには、次の手順を使用します。
LINUX
インスタンスで次のコマンドを実行します。
sudo service google-fluentd restart
Logging エージェントを再起動した後で、テスト メッセージを送信することをおすすめします。
Windows
RDP または同様のツールを使用してインスタンスに接続し、Windows にログインします。
PowerShell アイコンを右クリックし、[管理者として実行] を選択して、管理者権限で PowerShell ターミナルを開きます。
次の PowerShell コマンドを実行します。
Restart-Service -Name StackdriverLogging
エージェントをアップグレードする
Logging エージェントを最新リリースにアップグレードするには、次の手順を使用します。
Linux
エージェントを最新バージョンにアップグレードするには、次のコマンドを実行します。
sudo bash add-logging-agent-repo.sh --also-install
エージェントを特定のメジャー バージョンの最新のポイント リリースにアップグレードするには、次のコマンドを実行します。
sudo bash add-logging-agent-repo.sh --also-install \
--version=MAJOR_VERSION.*.*
Windows
最新のエージェント リリースにアップグレードするには、このページの Windows へのインストールの説明に従い、最新のエージェントをインストールします。インストーラで、以前のバージョンのエージェントをアンインストールするように求められます。
すべてのエージェント バージョンを一覧表示する
利用可能なエージェントのバージョンを一覧表示するには、次のコマンドを実行します。
Amazon Linux AMI / CentOS / RHEL
利用可能なエージェントのバージョンを一覧表示します。
sudo yum list --showduplicates google-fluentd
Debian / Ubuntu
利用可能なエージェントのバージョンを一覧表示します。
sudo apt-cache madison google-fluentd
SLES / SUSE
利用可能なエージェントのバージョンを一覧表示します。
sudo zypper search -s google-fluentd
WINDOWS
以前のバージョンのエージェントの Windows へのインストールはサポートされていません。
エージェントをアンインストールします。
Logging エージェントとその構成ファイルを削除するには、次の手順を使用します。
エージェントをアンインストールした後、この変更が Google Cloud コンソールに反映されるまでに 1 時間ほどかかることがあります。
Linux
次のコマンドを実行します。
sudo bash add-logging-agent-repo.sh --uninstall
必要に応じて、エージェントのアンインストールに加えてリポジトリも削除する場合は、上述のコマンドに --remove-repo
を追加します。
Windows
Windows コントロール パネルで、[プログラムのアンインストール] を選択します。アンインストールできるプログラムのリストに Logging エージェントが表示されます。Logging エージェントをインストールしたディレクトリから uninstall.exe
を実行することもできます。
AWS EC2 VM インスタンスの Google Cloud プロジェクトに関する情報
ドキュメントが VM インスタンスに関連付けられた Google Cloud プロジェクトを参照している際には、EC2 VM インスタンスの場合、これは AWS アカウントにリンクされている AWS コネクタ プロジェクトを意味します。
AWS アカウントを Google Cloud に接続する場合は、AWS コネクタ プロジェクトを作成します。このプロセスについては、AWS アカウントから指標を収集するをご覧ください。
AWS アカウントの AWS コネクタ プロジェクトにアクセスするには、次のいずれかを行います。
Google Cloud コンソールのプロジェクト セレクタを使用して、AWS コネクタ プロジェクトの命名規則と一致するプロジェクトを特定し、AWS アカウントに特定のプロジェクトを選択します。
指標スコープが AWS アカウント指標が含む Google Cloud プロジェクトを特定し、Google Cloud コンソールのプロジェクト セレクタでそのプロジェクトを選択します。この Google Cloud プロジェクトで、[Monitoring] ページに移動し、[設定] ページを選択します。[設定] ページに、AWS コネクタ プロジェクトが一覧表示されます。Google Cloud コンソールのプロジェクト セレクタを使用すると、AWS コネクタ プロジェクトにアクセスできます。
リモート パッケージ アクセスを使用しない VM
Logging エージェントのインストールには、エージェント パッケージと(Linux では)その依存関係の両方用に、リモートのパッケージ リポジトリへのアクセスが必要です。
VPC-SC またはプライベート ネットワークを使用している場合は、ネットワーク構成により上流リポジトリからエージェントの依存関係をインストールする機能に影響することがあります。エージェント パッケージ自体には、限定公開の Google アクセスを使用してアクセスできます。これは、限定公開の Google アクセスを有効にするに従って構成できます。
VM ホストのセキュリティ ポリシーでリモートのパッケージ リポジトリへのアクセスが拒否される場合は、事前にエージェントがインストールされたカスタム VM イメージを作成し、そのイメージ内でパッケージ管理を無効にすることをおすすめします。
次のステップ
ログの表示については、ログ エクスプローラの使用をご覧ください。