![Khắc phục lỗi Nginx: [warn] protocol options redefined Khắc phục lỗi Nginx: [warn] protocol options redefined](https://vutruso.com/wp-content/uploads/2023/08/nginx-error-log-480x300.png)
Script tự động xoá log khi sử dụng CyberPanel
Sơ đồ trang
CyberPanel là Panel yêu thích của tôi trước đây, dù hiện tại tôi không thích chung so với trước kia nhưng vẫn có rất nhiều dự án tôi chạy với Panel này và có 1 vấn đề không kém quan trọng đó là log không được dọn dẹp định kỳ thì chúng phình to và chiếm đáng kể ổ cứng, nhiều VPS đầy cả ổ cứng vì log nên bài viết này tôi sẽ hướng dẫn bạn cách để lên lịch cron để xoá chúng định kỳ.
Trên CyberPanel sử dụng OpenLiteSpeed, log là các tệp ghi lại hoạt động của server, bao gồm thông tin về truy cập của người dùng, lỗi phát sinh, và các sự kiện khác. Các loại log chính mà OpenLiteSpeed sử dụng thường bao gồm:
- Access Log: Ghi lại tất cả các yêu cầu HTTP mà server nhận được.
- Error Log: Ghi lại các lỗi và cảnh báo mà server gặp phải trong quá trình hoạt động.
Vị trí của các log file
Các log file thường nằm ở các vị trí sau trên server của bạn:
1. Log của LiteSpeed Server Error
Access Log: /usr/local/lsws/logs/access.log
Error Log: /usr/local/lsws/logs/error.log
2. CyberPanel Main Log
/home/cyberpanel/error-logs.txt
3. Email Logs
/var/log/maillog
4. FTP Logs
/var/log/messages
5. ModSecurity Audit Logs
/usr/local/lsws/logs/auditmodsec.log
Bài viết liên quan
Ngoài ra, mỗi website (virtual host) cũng có thể có log riêng của nó. Những log này thường được lưu trữ trong thư mục của từng virtual host.
Xóa Log Trên CyberPanel
Để xóa các file log, bạn có thể tạo ra 1 script như sau và đặt lịch cho chúng chạy định kỳ mỗi tuần.
Tạo 1 file clearlog.sh ở thư mục /home
cd /home/ nano clearlog.sh
Sau đó dán vào file clearlog.sh ở trình soạn thảo nano.
#!/bin/bash # This script clears logs and cache for OpenLiteSpeed and CyberPanel. # It is designed to run weekly using cron. LOGFILE="/var/log/cyberpanel_log_cleaner.log" # Function to log activity log_activity() { echo "$(date +"%Y-%m-%d %H:%M:%S") - $1" >> "$LOGFILE" } # Clear all logs of OpenLiteSpeed if [ -d "/usr/local/lsws/logs" ]; then rm -rf /usr/local/lsws/logs/* log_activity "Cleared OpenLiteSpeed logs." else log_activity "Directory /usr/local/lsws/logs not found." fi # Clear OpenLiteSpeed cache folder if [ -d "/usr/local/lsws/cachedata" ]; then rm -rf /usr/local/lsws/cachedata log_activity "Cleared OpenLiteSpeed cache." else log_activity "Directory /usr/local/lsws/cachedata not found." fi # Remove old CyberPanel versions rm -rf /usr/local/*.tar.gz log_activity "Removed old CyberPanel versions." # Clear other logs rm -f /home/cyberpanel/switchLSWSStatus rm -f /home/cyberpanel/stderr.log rm -f /home/cyberpanel/error-logs.txt log_activity "Cleared miscellaneous CyberPanel logs." log_activity "Log cleanup completed."
Tiếp theo bạn cho phép script này có thể khởi chạy với lệnh: chmod +x /home/clearlog.sh
Bây giờ bạn có thể chạy lệnh sau để xoá log ngay tức thì
sh /home/logscleaner.sh
Lênh lịch để chúng chạy định kỳ, tuỳ theo yêu cầu mỗi người mà set định kỳ cho phù hợp nhé.
crontab -e
Sau đó bạn nhập 1 trong các tuỳ chọn chạy hàng ngày, hàng tuần hoặc hàng tháng vào là được.
Chạy hàng ngày
0 0 * * * /home/clearlog.sh > /dev/null 2>&1
Chạy hàng tuần
0 0 * * 0 /home/clearlog.sh > /dev/null 2>&1
Chạy hàng tháng
0 0 1 * * /home/clearlog.sh > /dev/null 2>&1
Kết luận
Ở trên là 1 số kiến thức về log trên CyberPanel và script giúp bạn xoá log khi sử dụng bảng điều khiển CyberPanel 1 cách nhanh chóng, bạn có thể set để chúng chạy định kỳ để đảm bảo log không chiếm quá nhiều không gian.
Xin cảm ơn.