精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

當前位置:云計算企業動態 → 正文

淺談ELK日志分析平臺 | 品高云公開課

責任編輯:yliang |來源:企業網D1Net  2016-07-25 10:09:30 本文摘自:品高云計算

小編的話

“技術干貨”系列文章意在分享技術牛人的知識干貨,每期主題都不一樣喲!期待各位讀者在文后發表留言,來一場技術上的交流和思想上的碰撞!

2016年7月20日,本期品高云公開課由葉春草帶來“可視化案發現場——淺談ELK日志分析平臺”的分享。

分享嘉賓


 

葉春草現就職于品高云軟件技術支持工程師。就職一年來,曾參與過廣州地鐵聆客、公司聆客、深圳公安局聆客的數據庫遷移、升級及其他服務器的監控運維、日志分析系統搭建等,主要負責聆客相關運維。

分享正文

在談ELK前,先來談談我們品高聆客和ELK之間的關系。

BingoLink(品高聆客)是一款集“應用開發、整合接入、應用管理、安全保障、社交平臺”于一體的MEAP平臺。用BingoLink構建企業的移動化平臺,滿足企業在移動互聯網年代移動應用開發、現有業務系統的整合接入、應用管理及運營、企業內部溝通協作等需求的實現。

ELK在聆客中,發揮的作用和價值就在于

1、可提高用戶響應速度。通過ELK篩選出數據庫慢查詢日志,開發再對語句進行優化,則可提高數據庫響應時間,進而提高用戶響應時間。

2、可提高聆客軟件可用率。當有故障時,可用ELK快速查詢所需要的日志,查看故障原因,縮短故障定位時間,進而提高可用率。

3、可總結聆客網頁的正常狀態百分比。通過ELK篩選nginx狀態碼結果,繪制狀態碼扇形圖,可清晰知道網頁訪問有多少是正常的。

4、可定位聆客用戶的地圖分布。通過ELK抓取用戶訪問的公網IP,再繪制Tile map地圖,則可在地圖上清楚看來聆客在全國各地的分布,定位客戶來源。

5、可優化聆客系統。通過開發、運維定期查看ELK上的圖表、周報,可發現隱藏問題(例如某個nginx路徑訪問持續過長、數據庫有暫未影響功能的error等),進行排除,從而減少潛在的隱患,及優化系統。

那么問題來了,ELK日志分析平臺是什么?

首先來看一下傳統的日志查找方式:當有客戶報障時,需要:

1、登錄服務器

ssh [email protected] ssh [email protected]

ssh [email protected]

2、找到位置

cd /apps/logs/nginx/; cd /apps/logs/mysql/;

cd /apps/logs/docker; cd /apps/logs/java/; …… ……

3、查看日志

head tail grep wc awk count cut …… ……

因此,傳統的日志架構存在的以下若干缺點:

開發人員無權登錄,經過運維周轉費時費力

日志數據分散在多個系統,難以查找

日志數據量大,查詢速度慢

一個調用會涉及多個系統,難以在這些系統的日志中快速定位數據

數據不夠實時

……

一、日志架構的演變:

傳統的日志架構,需要運維人員強大的正則功底,對日志運用shell命令,例如cat tail grep awk sed等,對日志進行處理,再篩選出自己想要的結果或尋找關鍵字。

有了ELK后,對運維和開發處理日志的要求降低,只需要在web界面上簡單的操作,就可以找到自己想要的數據,并進行畫圖


 

  二、那么ELK名稱怎么由來呢?

首字母為該管理系統三個主要軟件:Elasticsearch、Logstash、Kibana。這三個并非該管理系統的全部組成,而且還可以添加Redis,kafka,filebeat等軟件

它們各自的功能大概可以這樣概述:

E

實時分析、實時檢索、海量存儲

建立索引,以便日后快速查看、搜索、分析

L

數據流傳輸、日志結構化

K

分析統計、酷炫圖表

關于ELK的配置

E配置:

主要配置數據目錄、日志目錄、綁定IP和端口

path.data: /apps/data/

path.logs: /apps/logs/elasticsearch/

network.host: 172.17.96.9

http.port: 9200

L配置:

logstash的配置比較復雜,由三個部分組成:input,filter,output


 

K配置:

主要配置elasticsearch的地址,K的數據目錄、日志目錄、綁定IP和端口

server.host: "172.17.96.8“

server.port: 5601

elasticsearch.url: "http://172.17.96.9:9200"

pid.file: /apps/run/kibana/kibana.pid

logging.dest: /apps/logs/kibana/kibana.log

三、ELK啟動

service方式,當你的安裝方式是rpm包或配置官方倉庫時:

1、service方式(rpm包,yum安裝時)

service $PROG start

nohup+&在后臺啟動(源碼安裝時)

2、nohup方式(源碼包安裝時)

nohup $COMMAND &

demontools(supervisord等啟動進程的程序

3、supervisord (源碼包安裝時)

service supervisord start

四、日志匹配

1、過濾器:這里是選取幾個過濾器進行講解,更多的過濾器,可以在官網上繼續學習

date時間處理

date時間格式

date {

match => [ "timestamp" , "dd/MMM/YYYY:HH:mm:ss Z" ]

}

2、grok正則捕獲

grok正則捕獲

grok{

pattern => ["%{TIMESTAMP_ISO8601:Time} - %{IP:serverIP} %{BASE10NUM:port} %{BASE10NUM:relay:int}"]

}

grok {

patterns_dir => ["/apps/conf/logstash/patterns"]

match => {

"message" => "%{MYSQLSLOW}"

}

3、mutate數據修改

mutate數據修改

mutate { convert => ["bytes","integer"] }

mutate { convert => [“time","float"] }

mutate { split => ["re_path", "/"] }

4、rubby靈活處理

ruby靈活處理

ruby {

init =>"@kname= ['re_path','re_args']"

code =>"event.append(Hash[@kname.zip(event['request'].split('?'))])"

}

五、日志展示

實時搜索


 

時間欄


 

圖形選擇


 

填充圖


 

表格


 

markdown(文本說明)


 

度量值


 

扇形圖


 

儀表盤:圖表的整合


 

后續:

1、監控方面:

進程和端口存活(各個軟件)

磁盤空間(Elasticsearch的數據目錄,logstash的日志目錄等

……

2、優化方面:

Elasticsearch 中,JVM使用OS的max-open-files設置、索引調整、文件刷新時間等

Logstash的日志部分無用段去除、filter worker數量等

歡迎大家一起來交流!

你想和更多志同道合的技術大咖一起交流嗎?你想收聽每周的“品高云微信群公開課”的直播嗎?

長按識別以下二維碼關注“品高云計算”微信公眾號,回復“公開課”,品高云公開課的最新資訊、往期精彩回顧都在這里!

關鍵字:ELK品高聆客品高技術干貨

本文摘自:品高云計算

x 淺談ELK日志分析平臺 | 品高云公開課 掃一掃
分享本文到朋友圈
當前位置:云計算企業動態 → 正文

淺談ELK日志分析平臺 | 品高云公開課

責任編輯:yliang |來源:企業網D1Net  2016-07-25 10:09:30 本文摘自:品高云計算

小編的話

“技術干貨”系列文章意在分享技術牛人的知識干貨,每期主題都不一樣喲!期待各位讀者在文后發表留言,來一場技術上的交流和思想上的碰撞!

2016年7月20日,本期品高云公開課由葉春草帶來“可視化案發現場——淺談ELK日志分析平臺”的分享。

分享嘉賓


 

葉春草現就職于品高云軟件技術支持工程師。就職一年來,曾參與過廣州地鐵聆客、公司聆客、深圳公安局聆客的數據庫遷移、升級及其他服務器的監控運維、日志分析系統搭建等,主要負責聆客相關運維。

分享正文

在談ELK前,先來談談我們品高聆客和ELK之間的關系。

BingoLink(品高聆客)是一款集“應用開發、整合接入、應用管理、安全保障、社交平臺”于一體的MEAP平臺。用BingoLink構建企業的移動化平臺,滿足企業在移動互聯網年代移動應用開發、現有業務系統的整合接入、應用管理及運營、企業內部溝通協作等需求的實現。

ELK在聆客中,發揮的作用和價值就在于

1、可提高用戶響應速度。通過ELK篩選出數據庫慢查詢日志,開發再對語句進行優化,則可提高數據庫響應時間,進而提高用戶響應時間。

2、可提高聆客軟件可用率。當有故障時,可用ELK快速查詢所需要的日志,查看故障原因,縮短故障定位時間,進而提高可用率。

3、可總結聆客網頁的正常狀態百分比。通過ELK篩選nginx狀態碼結果,繪制狀態碼扇形圖,可清晰知道網頁訪問有多少是正常的。

4、可定位聆客用戶的地圖分布。通過ELK抓取用戶訪問的公網IP,再繪制Tile map地圖,則可在地圖上清楚看來聆客在全國各地的分布,定位客戶來源。

5、可優化聆客系統。通過開發、運維定期查看ELK上的圖表、周報,可發現隱藏問題(例如某個nginx路徑訪問持續過長、數據庫有暫未影響功能的error等),進行排除,從而減少潛在的隱患,及優化系統。

那么問題來了,ELK日志分析平臺是什么?

首先來看一下傳統的日志查找方式:當有客戶報障時,需要:

1、登錄服務器

ssh [email protected] ssh [email protected]

ssh [email protected]

2、找到位置

cd /apps/logs/nginx/; cd /apps/logs/mysql/;

cd /apps/logs/docker; cd /apps/logs/java/; …… ……

3、查看日志

head tail grep wc awk count cut …… ……

因此,傳統的日志架構存在的以下若干缺點:

開發人員無權登錄,經過運維周轉費時費力

日志數據分散在多個系統,難以查找

日志數據量大,查詢速度慢

一個調用會涉及多個系統,難以在這些系統的日志中快速定位數據

數據不夠實時

……

一、日志架構的演變:

傳統的日志架構,需要運維人員強大的正則功底,對日志運用shell命令,例如cat tail grep awk sed等,對日志進行處理,再篩選出自己想要的結果或尋找關鍵字。

有了ELK后,對運維和開發處理日志的要求降低,只需要在web界面上簡單的操作,就可以找到自己想要的數據,并進行畫圖


 

  二、那么ELK名稱怎么由來呢?

首字母為該管理系統三個主要軟件:Elasticsearch、Logstash、Kibana。這三個并非該管理系統的全部組成,而且還可以添加Redis,kafka,filebeat等軟件

它們各自的功能大概可以這樣概述:

E

實時分析、實時檢索、海量存儲

建立索引,以便日后快速查看、搜索、分析

L

數據流傳輸、日志結構化

K

分析統計、酷炫圖表

關于ELK的配置

E配置:

主要配置數據目錄、日志目錄、綁定IP和端口

path.data: /apps/data/

path.logs: /apps/logs/elasticsearch/

network.host: 172.17.96.9

http.port: 9200

L配置:

logstash的配置比較復雜,由三個部分組成:input,filter,output


 

K配置:

主要配置elasticsearch的地址,K的數據目錄、日志目錄、綁定IP和端口

server.host: "172.17.96.8“

server.port: 5601

elasticsearch.url: "http://172.17.96.9:9200"

pid.file: /apps/run/kibana/kibana.pid

logging.dest: /apps/logs/kibana/kibana.log

三、ELK啟動

service方式,當你的安裝方式是rpm包或配置官方倉庫時:

1、service方式(rpm包,yum安裝時)

service $PROG start

nohup+&在后臺啟動(源碼安裝時)

2、nohup方式(源碼包安裝時)

nohup $COMMAND &

demontools(supervisord等啟動進程的程序

3、supervisord (源碼包安裝時)

service supervisord start

四、日志匹配

1、過濾器:這里是選取幾個過濾器進行講解,更多的過濾器,可以在官網上繼續學習

date時間處理

date時間格式

date {

match => [ "timestamp" , "dd/MMM/YYYY:HH:mm:ss Z" ]

}

2、grok正則捕獲

grok正則捕獲

grok{

pattern => ["%{TIMESTAMP_ISO8601:Time} - %{IP:serverIP} %{BASE10NUM:port} %{BASE10NUM:relay:int}"]

}

grok {

patterns_dir => ["/apps/conf/logstash/patterns"]

match => {

"message" => "%{MYSQLSLOW}"

}

3、mutate數據修改

mutate數據修改

mutate { convert => ["bytes","integer"] }

mutate { convert => [“time","float"] }

mutate { split => ["re_path", "/"] }

4、rubby靈活處理

ruby靈活處理

ruby {

init =>"@kname= ['re_path','re_args']"

code =>"event.append(Hash[@kname.zip(event['request'].split('?'))])"

}

五、日志展示

實時搜索


 

時間欄


 

圖形選擇


 

填充圖


 

表格


 

markdown(文本說明)


 

度量值


 

扇形圖


 

儀表盤:圖表的整合


 

后續:

1、監控方面:

進程和端口存活(各個軟件)

磁盤空間(Elasticsearch的數據目錄,logstash的日志目錄等

……

2、優化方面:

Elasticsearch 中,JVM使用OS的max-open-files設置、索引調整、文件刷新時間等

Logstash的日志部分無用段去除、filter worker數量等

歡迎大家一起來交流!

你想和更多志同道合的技術大咖一起交流嗎?你想收聽每周的“品高云微信群公開課”的直播嗎?

長按識別以下二維碼關注“品高云計算”微信公眾號,回復“公開課”,品高云公開課的最新資訊、往期精彩回顧都在這里!

關鍵字:ELK品高聆客品高技術干貨

本文摘自:品高云計算

電子周刊
回到頂部

關于我們聯系我們版權聲明隱私條款廣告服務友情鏈接投稿中心招賢納士

企業網版權所有 ©2010-2024 京ICP備09108050號-6 京公網安備 11010502049343號

^
  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 冀州市| 富民县| 洛扎县| 保定市| 池州市| 中江县| 蚌埠市| 望江县| 赞皇县| 神木县| 莱阳市| 天津市| 肇庆市| 黄平县| 沛县| 宁南县| 京山县| 阿拉尔市| 永丰县| 安西县| 合阳县| 临猗县| 西城区| 兴隆县| 乌审旗| 花莲县| 天峻县| 彭山县| 靖西县| 樟树市| 曲周县| 德格县| 聂荣县| 咸宁市| 穆棱市| 淮滨县| 湛江市| 平武县| 儋州市| 全州县| 阳山县|