access_log
Nginx ではカスタム ログ形式を指定できますが、 error_log
.
これを達成する方法はありますか?
access_log
Nginx ではカスタム ログ形式を指定できますが、 error_log
.
これを達成する方法はありますか?
独自の形式を指定することはできませんが、nginx ビルドではいくつかのレベルの error_log-ing が組み込まれています。
構文:error_log file [ debug | info | notice | warn | error | crit ]
デフォルト:${prefix}/logs/error.log
サーバー (および fastcgi) のエラーが記録されるファイルを指定します。
エラー レベルのデフォルト値:
私のerror_logでは、ログ内の各エラー文字列のint beginが常に示されていました。
そのためのハックがあります。
アクセス ログの形式はカスタマイズできますが、エラー ログの形式はカスタマイズできません。そのハックは、カスタマイズされたエラー ログに対して、エラーが発生した場合にのみアクセス ログを生成することです。
これは、error_page ディレクティブを使用して実行できます。
http {
...
log_format custom_combined "...";
server {
...
error_page 50x @create_custom_error50x;
...
location @create_custom_error50x {
access_log path custom_combined;
return 50x;
}
}
}
nginx エラー ログの形式を変更したいときに使用した汚いトリック (この場合、Lua から openresty のメソッドを使用して自分のログを送信する場合) は、すべての情報を削除するのに十分な (バックスペース) 文字をngx.log
自分のログ メッセージの前に付けるというものでした。\b
実行中の表示には興味がありませんでしたtail -f error.log
。