4. Dịch vụ Web
4.3.6. Khảo sát logfile trên apache
Apache có nhiều tập tin log khác nhau nhằm ghi lại những hoạt động của Web Server. Sau đây mô tả tính năng của từng tập tin.
File error_log: Là một tập tin log quan trọng nhất. Tên và vị trí của nó được xét trong ErrorLog directive. ErrorLog là nơi mà httpd sẽ gửi những thông tin nhận dạng và bất kỳ những lỗi nào gặp phải trong quá trình xử lý những yêu
`106
cầu. Tập tin này chính là nơi mà ta cần xem xét đầu tiên khi gặp phải những lỗi khởi động httpd hay những thao tác của server, vì nó lưu những thông tin chi tiết về những lỗi và cách sửa lỗi. Định dạng của tập tin error_log không bị bó buộc. Nội dung của file error_log như sau:
[Wed Oct 11 14:32:52 2000] [error] [client 127.0.0.1] client denied by server configuration:
/export/home/live/ap/htdocs/test
Cột đầu tiên chỉ ra ngày giờ entry này được tạo ra. Cột thứ 2 chỉ ra đây là entry lỗi. Cột thứ 3 cho biết địa chỉ IP của client tạo ra lỗi. Tiếp theo là message có nội dung chỉ ra rằng server được cấu hình để từ chối việc truy cập của client. Tiếp theo là đường dẫn của document mà client cần truy cập. Trong quá trình kiểm tra, có thể theo dõi error_log một cách liên tục bằng dòng lệnh sau:
#tail –f /var/log/httpd/error_log
File access_log: Access_log là nơi ghi lại tất cả những yêu cầu được xử lý bởi server. Vị trí và nội dung của access log được điều khiển bởi CustomLog directive. Có thể dùng LogFormat directive trong việc định dạng nội dung của tập tin access_log. LogFormat chỉ ra những thông tin mà server cần theo dõi để ghi lại trong access log. Để theo dõi yêu cầu xử lý trên Web Server ta dùng lệnh:
#tail –f /var/log/httpd/access_log
Luân chuyển log file:
Theo thời gian, thông tin lưu trong các tập tin log lớn làm cho kích thước của các tập tin này có thể vượt quá 1MB. Do đó, cần phải xóa, di chuyển hay sao lưu những tập tin log này một cách luân phiên và có chu kỳ. Cách thực hiện như sau:
mv access_log access_log.old mv error_log error_log.old apachectl graceful
sleep 600
gzip access_log.old error_log.old