02圍繞日志展開的運(yùn)維體_第1頁
02圍繞日志展開的運(yùn)維體_第2頁
02圍繞日志展開的運(yùn)維體_第3頁
02圍繞日志展開的運(yùn)維體_第4頁
02圍繞日志展開的運(yùn)維體_第5頁
已閱讀5頁,還剩51頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、日志展開的運(yùn)維體系黃昆365日歷介紹基礎(chǔ)服務(wù):日程管理、黃歷節(jié)日節(jié)氣、放假安排、天氣等共享日程:班級、公司、球隊、家庭公眾日歷:首映、演出活動、體育賽事等等150000用戶收藏1800萬用戶收藏大綱服務(wù)器架構(gòu)演進(jìn)基于ELK的日志體系基于CEP的智能探討機(jī)房托管年代 nginx_lua Redis fusionIO 提高單機(jī)性能,盡量實(shí)體機(jī)數(shù)量,降低運(yùn)維復(fù)雜度和成本擁抱云服務(wù) 業(yè)務(wù)需要 技術(shù)需要 騰訊云:云主機(jī)/云mysql(CDB)/云負(fù)載均衡/基礎(chǔ)等 其他云服務(wù):又拍云、SendCloud、 減輕基礎(chǔ)運(yùn)維寶天下沒有白吃的午餐 云mysql單機(jī)性能的下降(相比fusionIO) 限制:單機(jī)QP

2、S限制,單庫容量限制 日歷app峰值問題 分庫:按業(yè)務(wù)垂直拆分,按邏輯水平拆分 cobar部分功能服務(wù)化擴(kuò)張、代碼膨脹、膨脹不同人改動同一模塊代碼 功能和代碼耦合度變高, 依賴增多 發(fā)布時互相影響 跨語言調(diào)用(lua服務(wù)也需要認(rèn)證) 方案:服務(wù)拆分dubbo/dubboX演進(jìn)后的架構(gòu) 水平擴(kuò)展 分層 架構(gòu)變復(fù)雜架構(gòu)復(fù)雜后的問題 多層架構(gòu),排查問題變復(fù)雜application層/service層cobar/dubbo多個服務(wù)層級之間的關(guān)聯(lián)關(guān)系系統(tǒng)太散亂zabbix/ganlia/graphite/jmxtrans/cobar和dubbo的中心 開發(fā)查看日志不方便登錄到線上手動分析日志 tail

3、cat grep awk sed日志中的異常和錯誤不及時不方便 基于日志的各種統(tǒng)計分析經(jīng)常需要根據(jù)新需求寫做開發(fā)日志搭建運(yùn)維和開發(fā)之間最好的橋梁 包含服務(wù)器、應(yīng)用、運(yùn)營所需的各種數(shù)據(jù) 及時的反應(yīng)問題 ELK-ElasticsearchLogstashKibana 分布式的日志處理的架構(gòu),可以對日志進(jìn)行收集、過濾計搜索和展、統(tǒng)Logstash a tool for receiving, processing and outputting logs input: codesc: filter: output:file,jmx,log4j,syslog,redis,tcp,udp multiline

4、,jsongrok, date, mutate, split, grepelasticsearch, graphiteLogstashThe life of an eventElasticsearch 基于lucene 分布式高可用(橫向擴(kuò)展、sharding、replica) 全文搜索+統(tǒng)計分析API (Aggregations) 比較完善的管理(head、marvel)Elasticsearch - headElasticsearch - marvelKibana日志整體架構(gòu)場景1基于nginx日志 統(tǒng)計接口調(diào)用次數(shù) 統(tǒng)計tomcat后端接口處理時間,慢請求 按httpcode 200/4

5、xx/5xx進(jìn)行分接、分IP、分agent、分服務(wù)器統(tǒng)計 方案:使用Logstash日志功能(grok),將日志分解成不同的字段,輸出到Elasticsearch,通過Kibana進(jìn)行圖表展示Kibana上展現(xiàn)場景2tomcat錯誤日志 對日志按ERROR/INFO/WARN等進(jìn)行收集統(tǒng)計,級別高的錯誤日志郵件,普通錯誤定時實(shí)時發(fā) 開發(fā)錯誤報告可以登錄kibana直接查看錯誤日志,無需運(yùn)維協(xié)助場景3dubbo日志處理 客戶端和服務(wù)器端定時往中心發(fā)調(diào)用統(tǒng)計信息,中心接收后打到日志中,由logstash收集場景4基于cobar和druid連接池日志分析數(shù)據(jù)庫情況 從cobar的管理端口獲取連接數(shù)、

6、sql執(zhí)行次數(shù)、內(nèi)存情況等,打到 日志里,由logstash收集場景4基于cobar和druid連接池日志分析數(shù)據(jù)庫情況 把druid連接池的sql統(tǒng)計信息日志寫到本地,由logstash收集場景5基于日志排查問題 根據(jù)userID、deviceID、ip地址等用戶標(biāo)識,從日志中找出所有的 請求相關(guān)日志場景5基于日志排查問題使用Elasticsearch進(jìn)行統(tǒng)計分析 Aggregation How many needles are in the haystack? What is the average length of the needles? What is the median len

7、gth of the needles, broken down by manufacturer? What are your most popular needle manufacturers? Buckets & Metrics SELECT COUNT(color) FROM table GROUP BY color Buckets - hour, terms, age ranges, geo Metrics - min, mean, max, sumAggregation 例子ES-SQL 使用SQL替代AggregationES-SQL場景1某一個接口被多少個不同的設(shè)備過(已去

8、重)ES-SQL場景2某一個接口在不同響應(yīng)時間間隔內(nèi)的數(shù)量ELK tips - Grok Grok例子 Grok功能強(qiáng)大,但是占用cpu高 不宜和app server一起部署 filterworkers COUNT 指定多個filter 直接json格式日志,減少grok操作 當(dāng)日志格式發(fā)生變動時而沒及時更改logstash配置時,grok失敗會通過tag_on_failure)(ELK tips - rsyslog 使用rsyslog取代logstash shipper做日志收集 避免logstash和server跑在一起 簡化架構(gòu) 提高性能 rsyslog V8帶impstat模塊方便統(tǒng)計

9、 統(tǒng)計數(shù)據(jù)輸出成json日志格式給elasticsearch,用kibana做數(shù)據(jù)展現(xiàn)ELK tips - ES和logstash兼容性問題 使用elasticsearch_http output 性能差距不大 ES版本兼容性好ELK tips ES調(diào)優(yōu)關(guān)鍵指標(biāo)(marvel) 系統(tǒng)文件數(shù)/網(wǎng)絡(luò)流量 JVM調(diào)優(yōu)heap size/GC 使用ES Client而不是直接往master node index.fielddata.cache 設(shè)置fielddata緩存請求 根據(jù)實(shí)時性要求適當(dāng)調(diào)整index.refresh_interval 按時間建索引,disable很少使用的索引,定期刪除舊索引

10、Mapping中設(shè)置不需要索引的字段(如deviceID/sessionID/IP等) “_all” : “enabled” : false 提高索引性能減小索引 explain系統(tǒng)能不能 Cobar日志中連接數(shù)異常變動 接口響應(yīng)時間異常變動一些? 有用戶刷抽獎接口 有之前沒發(fā)現(xiàn)過的新異常信息出現(xiàn) java GC對接口響應(yīng)速度的影響 以上這類以前的解決方案:定期在日志上跑/程序 需要每次需求定制開發(fā) 反映問題不夠?qū)崟rCEP(Complex Event Processing) 什么是CEP 生活中的例子: 應(yīng)用場景 商業(yè)智能 網(wǎng)絡(luò)、應(yīng)用是否要下雨(濕度變大、烏云、飛蟲低飛)CEP Engine Based on rules or queries (“SQL like”)CEPVSDataBaseEsper Open Source CEP Engine Esper engine allows applications to store queries and run the data through 架構(gòu)Esper Event Object POJO, Map, XML 例子:Esper解決案例Cobar日志中連接數(shù)異常變動 1分鐘內(nèi)總連接數(shù)比前的每分鐘平均值高3倍接口響應(yīng)時間變慢 1分鐘內(nèi)接口平均響應(yīng)時間平均值高2倍解決案例

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論