バグ #712

nginxログローテート

山本 義治ほぼ9年前に追加. ほぼ9年前に更新.

ステータス:新規開始日:2016/03/10
優先度:通常期日:
担当者:山本 義治進捗 %:

0%

カテゴリ:サーバ環境構築作業時間の記録:-
対象バージョン:-

説明

症状

ログが肥大化してディスク容量圧迫

2016/03/10 02:34:24 [alert] 7068#0: *14432002 write() to "/usr/local/openresty/nginx/logs/access.log" failed (28: No space left on device) while logging request, client: 10.0.1.123, server: , request: "GET / HTTP/1.1", host: "10.0.0.166" 

対処

・ログローテート
・ローテートデータを圧縮後、s3へ転送&削除

※ローテート前の容量がディスク容量を上回らないよう対策

参考サイト

http://toshihirock.blogspot.jp/2015/01/logrotatenginx.html

履歴

#1 山本 義治ほぼ9年前に更新

ログファイルデータ試算

1レコード0.5KB
1000req/s

1時間あたり
0.5 x 1000 x 3600 = 1.8GB

#2 山本 義治ほぼ9年前に更新

nginx→s3へログコピー

[ec2-user@ip-10-0-0-166 nginx]$ aws s3 cp logs s3://xg-bk/nginx --recursive
upload: logs/access.log to s3://xg-bk/nginx/access.log
upload: logs/nginx.pid to s3://xg-bk/nginx/nginx.pid   
upload: logs/error.log to s3://xg-bk/nginx/error.log   

ログ削除

[root@ip-10-0-0-166 logs]# cat /dev/null > access.log 
[root@ip-10-0-0-166 logs]# cat /dev/null > error.log 

他の形式にエクスポート: Atom PDF