LNMP是指Linux、Nginx、MySQL和PHP的組合,常用于搭建網站和Web應用。分析LNMP日志可以幫助我們了解系統的運行狀態、性能瓶頸、錯誤信息等。以下是LNMP日志分析的基本方法和常用命令:
/var/log/nginx/access.log
/var/log/nginx/error.log
/var/log/php-fpm/error.log
或 /var/log/php7.0-fpm.log
(取決于PHP版本)/var/log/syslog
或 /var/log/messages
grep 'error' /var/log/nginx/error.log
會查找包含“error”的所有行。awk '{print $1}' /var/log/nginx/access.log
會打印每行的第一個字段(通常是客戶端IP地址)。sed 's/old/new/g' /var/log/nginx/error.log
會將所有的“old”替換為“new”。grep '/api/payments' access.log | cut -d ' ' -f 1 | sort | uniq -c | sort -rn
會找出訪問路徑 /api/payments
的前10個IP地址。head -n 20 /var/log/dmesg
查看前20行,tail -f /var/log/nginx/error.log
實時追蹤日志更新。查找訪問路徑 /api/payments
的前10個IP地址
grep '/api/payments' access.log | cut -d ' ' -f 1 | sort | uniq -c | sort -rn | head -10
各部分的作用解釋:
grep '/api/payments' access.log
:過濾出包含 /api/payments
的行。cut -d ' ' -f 1
:提取每行的第一個字段(即IP地址)。sort
:對IP地址進行排序。uniq -c
:統計每個IP地址的出現次數。sort -rn
:按出現次數進行降序排序。head -10
:顯示前10行。查看Nginx錯誤日志中的500錯誤
tail -f /var/log/nginx/error.log
這條命令會實時輸出新的錯誤日志條目,方便即時監控。
分析PHP錯誤日志
tail -f /var/log/php-fpm/error.log
同樣,這條命令會實時輸出新的錯誤日志條目,幫助及時發現和解決PHP相關問題。
通過上述方法和工具,可以有效地分析Linux系統中LNMP的日志,幫助快速定位和解決問題。對于更復雜的日志分析任務,還可以考慮使用專門的日志分析工具,如ELK堆棧,進行更高級的日志收集、分析和可視化。