一、不多的主機和不多的應用部署場景
用linux下的命令:tail,grep,cat,watch,awk,sed,less,sort,more,last,uniqu等
linux日誌文件說明
/var/log/message 系統啓動後的信息和錯誤日誌,是Red Hat Linux中最常用的日誌之一
/var/log/secure 與安全相關的日誌信息
/var/log/maillog 與郵件相關的日誌信息
/var/log/cron 與定時任務相關的日誌信息
/var/log/spooler 與UUCP和news設備相關的日誌信息
/var/log/boot.log 守護進程啓動和停止相關的日誌消息
/var/log/wtmp 該日誌文件永久記錄每個用戶登錄、註銷及系統的啓動、停機的事件
(一)如果日誌在更新,如何實時查看
1、tail命令。-f 指定文件 -n 輸出行數
tail -f /var/log/*.log -n 10
2、watch 命令。-d表示高亮不同的地方,-n表示多少秒刷新一次。
watch -d -n 1 cat /var/log/messages
該指令,不會直接返回命令行,而是實時打印日誌文件中新增加的內容,
這一特性,對於查看日誌是非常有效的。如果想終止輸出,按 Ctrl+C 即可。
3、看所有的重啓、關機記錄
last | grep reboot
last | grep shutdown
4、less命令。對文件或其它輸出進行分頁顯示的工具,比more更強大。
b 向後翻一頁
d 向後翻半頁
h 顯示幫助界面
Q 退出less 命令
u 向前滾動半頁
y 向前滾動一行
空格鍵 滾動一行
回車鍵 滾動一頁
[pagedown]: 向下翻動一頁
[pageup]: 向上翻動一頁
二、多服務器、多應用部署場景的分佈式系統日誌監控
ELKstack 中文指南
ELK Stack 是 Elasticsearch、Logstash、Kibana 三個開源軟件的組合。在實時數據檢索和分析場合,三者通常是配合共用,而且又都先後歸於 Elastic.co 公司名下,故有此簡稱。
ELK Stack 在最近兩年迅速崛起,成爲機器數據分析,或者說實時日誌處理領域,開源界的第一選擇。和傳統的日誌處理方案相比,ELK Stack 具有如下幾個優點:
處理方式靈活。Elasticsearch 是實時全文索引,不需要像 storm 那樣預先編程才能使用;
配置簡易上手。Elasticsearch 全部採用 JSON 接口,Logstash 是 Ruby DSL 設計,都是目前業界最通用的配置語法設計;
檢索性能高效。雖然每次查詢都是實時計算,但是優秀的設計和實現基本可以達到全天數據查詢的秒級響應;
集羣線性擴展。不管是 Elasticsearch 集羣還是 Logstash 集羣都是可以線性擴展的;
前端操作炫麗。Kibana 界面上,只需要點擊鼠標,就可以完成搜索、聚合功能,生成炫麗的儀表板。
libbeat,該Go庫包含了所有beats公共部分來處理任務。beats是一個代理,將不同類型的數據發送到elasticsearch。beats可以直接將數據發送到elasticsearch,也可以通過logstash 將數據發送elasticsearch。
beats有三個典型的例子:Filebeat、Topbeat、Packetbeat。Filebeat用來收集日誌,Topbeat用來收集系統基礎設置數據如cpu、內存、每個進程的統計信息,Packetbeat是一個網絡包分析工具,統計收集網絡信息。架構圖如下:
轉自博客園