⚒️
さくらのクラウドのモニタリングスイートに nginx のアクセスログを送信するときの Tips
さくらのクラウドでサービス開発を行う場合、モニタリングスイートにログを送ると便利です。
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
としていたが間違ってる感じがしてきた。