⚒️

さくらのクラウドのモニタリングスイートに nginx のアクセスログを送信するときの Tips

に公開1

さくらのクラウドでサービス開発を行う場合、モニタリングスイートにログを送ると便利です。

nginx 等の HTTP サーバーのログを送信する場合、さくらのクラウド側で設定されているフィールド名に合わせて送信すると検索しやすくなってさらに便利に使えます。

このあたりの説明はマニュアルの 手順2-2 ログの送信設定 にあります。

これにそってフィールドを定義すると、以下のようになります。

ログ表示例

こうしておくと、ステータスコードなどでログを絞り込めるようになって便利です。

選択フォームの表示例

nginx でログを送信する場合、以下のように json log を設定すると良いでしょう。

log_format json_logs escape=json '{'
    '"time":"$time_iso8601",'
    '"http_protocol":"$server_protocol",'
    '"http_schema":"$scheme",'
    '"http_remote_addr":"$remote_addr",'
    '"http_remote_port":$remote_port,'
    '"host":"$host",'
    '"http_request_method":"$request_method",'
    '"http_request_uri":"$request_uri",'
    '"http_status":$status,'
    '"http_request_size":$request_length,'
    '"http_response_size":$bytes_sent,'
    '"http_latency_ms":$request_time,'
    '"http_user":"$remote_user",'
    '"http_referer":"$http_referer",'
    '"http_user_agent":"$http_user_agent",'
    '"http_x_forwarded_for":"$http_x_forwarded_for"'
'}';

まとめ

本稿では、モニタリングスイートの UI で特別扱いされているフィールド名を紹介しました。
また、nginx での設定方法を紹介しました。

ご活用ください~

さくらインターネット株式会社

Discussion