Cấu hình xoay vòng log file
Phần lớn các bản phân phối sẽ cài đặt một cấu hình syslog mặc định cho hệ thống, bao gồm logging to messages và các log file khác trong thư mục /var/log. Để ngăn cản nhưng file này ngày càng lớn trở nên cồng kềnh và có thể làm đầy ổ cứng gây ảnh hưởng đến các dịch vụ khác đang chạy. một hệ thống xoay vòng log (log rotation) nên được cài đặt. Hệ thống cron đưa ra các lệnh để thiết lập những log files mới, những log file cũ được đổi tên bằng cách thay một con số ở hậu tố. ví dụ khi có sự xoay vòng log xảy ra file /var/log/messages sẽ được chuyển thành /var/log/messages.1 và hệ thống sẽ tạo mới một file /var/log/mesages. Sự xoay vòng này có thể được cấu hình cho một số lượng lớn các file. Tùy theo cấu hình mà các file này sẽ được lưu lại bao nhiêu bản cũ nhất trên server trước khi bị xóa đi.
Tiện ích thi hành rotation là logrotate. Lệnh này được cấu hình sử dụng cho một hoặc nhiều files - được xác định bởi các tham số đi cùng. File cấu hình mặc định là /etc/logrotate.conf
File cấu hình logrotate sẽ tương tự như bên dưới
Code:
[root@log ~]# cat /etc/logrotate.conf # see "man logrotate" for details # rotate log files weekly weekly # keep 4 weeks worth of backlogs rotate 4 # create new (empty) log files after rotating old ones create # use date as a suffix of the rotated file dateext # uncomment this if you want your log files compressed #compress # RPM packages drop log rotation information into this directory include /etc/logrotate.d # no packages own wtmp and btmp -- we'll rotate them here /var/log/wtmp { monthly create 0664 root utmp minsize 1M rotate 1 } /var/log/btmp { missingok monthly create 0600 root utmp rotate 1 } # system-specific logs may be also be configured here.
- Xoay vòng log theo dung lượng file
- Xoay vòng log theo thời gian
Mỗi kiểu đều có ưu nhược điểm riêng. Tùy thuộc vào đặc điểm của từng hệ thống mà ta chọn kiểu xoay vòng log thích hợp
Để cấu hình xoay vòng log cho các dịch vụ ta sẽ đặt các file cấu hình xoay vòng log trong thư mục /etc/logrotate.d
Ví dụ: Cấu hình xoay vòng log cho log của web server apache ta làm như sau.
Tạo file cấu hình cấu hình xoay vòng log
Vim /etc/logrotate.d/httpd
Thêm phần cấu hình bên dưới vào file cấu hình.
Code:
/var/log/httpd/*log { size 70M compress dateext notifempty rotate 7 missingok sharedscripts postrotate /etc/init.d/httpd restart endscript }
Compress: nén các file log cũ theo chuẩn gzip. Mục đích giảm không gian đĩa cứng
Dateext: ngày sẽ được thêm vào trong tên file mới.
Rotate 7: hệ thống chỉ lưu giữ 7 file log trên server. Các file cũ hơn sẽ được xóa bỏ khỏi hệ thống
Misingok: hệ thống sẽ không tạo ra lỗi. Nếu tập tin không được tìm thấy.
Sharedscripts: chạy các script bất kỳ trước (prerotate) hoặc sau khi (postrotate) xoay vòng cho mỗi file log.
Tham khảo thêm tại: http://linuxcommand.org/man_pages/logrotate8.html
0 comments:
Post a Comment