GCPのVMインスタンス上のLaravelのログをモニタリングしたかったので、その設定メモ
今回は新しいVMを使っているので実施していませんが、古いVMを使っている場合、ログをロギングサービスに飛ばすのにサービスアカウントが必要なようです。
参考: https://cloud.google.com/logging/docs/agent/ops-agent
対象OS: Ubuntu 18.04 LTS
Ops Agentのインストール
VMインスタンスにSSHログインして下記を実行
curl -sSO https://dl.google.com/cloudagents/add-google-cloud-ops-agent-repo.sh
sudo bash add-google-cloud-ops-agent-repo.sh --also-install
設定ファイルを作成して反映
このファイルはユーザー定義ファイルとなっており、デフォルトの設定ファイルに追加設定したい場合に作成します
シンタックスエラーとかあると再起動時にエラーになります。
sudo vim /etc/google-cloud-ops-agent/config.yaml
------------------
logging:
receivers:
laravel_log:
type: files
include_paths:
- /var/www/html/laravel/storage/logs/*.log
service:
pipelines:
custom_pipeline:
receivers: [laravel_log]
-----------------
# 反映
sudo service google-cloud-ops-agent restart
この設定ファイルがちょっと難しくて、より複雑な設定をする場合、例えばtcpポートでログを受け取るなどは下記のドキュメントを読み込むと良いと思います。
https://cloud.google.com/logging/docs/agent/ops-agent/configuration