linux查看一小时之内的日志,linux – 在[timespan]内(例如最后一小时)查找日志文件中的条目...
我的服務器CPU使用率不高,我可以看到Apache正在使用太多的內存。
我有一種感覺,我正在用一個IP進行DOS.-也許你可以幫我找到他?
我已經使用以下行找到10個最“活躍”的IP:
cat access.log | awk '{print $1}' |sort |uniq -c |sort -n |tail
前5名IPs對服務器的請求大約是“平均”用戶的200倍。但是,我不知道這5個訪問者是否經常訪問,或者他們正在攻擊服務器。
有沒有辦法,指定上述搜索到一個時間間隔,例如。最后兩個小時或是在10-12之間嗎?
干杯!
更新2011年10月23日 – 我需要的命令:
在最近十小時內獲取條目[這里兩個小時]
awk -vDate=`date -d'now-2 hours' +[%d/%b/%Y:%H:%M:%S` ' { if ($4 > Date) print Date FS $4}' access.log
在最近的X小時內獲得最活躍的IP [這里兩個小時]
awk -vDate=`date -d'now-2 hours' +[%d/%b/%Y:%H:%M:%S` ' { if ($4 > Date) print $1}' access.log | sort |uniq -c |sort -n | tail
獲取相對時間范圍內的條目
awk -vDate=`date -d'now-4 hours' +[%d/%b/%Y:%H:%M:%S` -vDate2=`date -d'now-2 hours' +[%d/%b/%Y:%H:%M:%S` ' { if ($4 > Date && $4 < Date2) print Date FS Date2 FS $4}' access.log
在絕對時間段內獲取條目
awk -vDate=`date -d '13:20' +[%d/%b/%Y:%H:%M:%S` -vDate2=`date -d'13:30' +[%d/%b/%Y:%H:%M:%S` ' { if ($4 > Date && $4 < Date2) print $0}' access.log
在絕對時間段內獲取最活躍的IP
awk -vDate=`date -d '13:20' +[%d/%b/%Y:%H:%M:%S` -vDate2=`date -d'13:30' +[%d/%b/%Y:%H:%M:%S` ' { if ($4 > Date && $4 < Date2) print $1}' access.log | sort |uniq -c |sort -n | tail
總結
以上是生活随笔為你收集整理的linux查看一小时之内的日志,linux – 在[timespan]内(例如最后一小时)查找日志文件中的条目...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html 标签 r语言,从R中的字符串
- 下一篇: Java包装类与基本数据类型的自动 手动