真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

EFK實戰(zhàn)之如何實現(xiàn)日志集成

本篇內(nèi)容主要講解“EFK實戰(zhàn)之如何實現(xiàn)日志集成”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“EFK實戰(zhàn)之如何實現(xiàn)日志集成”吧!

“只有客戶發(fā)展了,才有我們的生存與發(fā)展!”這是創(chuàng)新互聯(lián)建站的服務(wù)宗旨!把網(wǎng)站當(dāng)作互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品思維更注重全局思維、需求分析和迭代思維,在網(wǎng)站建設(shè)中就是為了建設(shè)一個不僅審美在線,而且實用性極高的網(wǎng)站。創(chuàng)新互聯(lián)對成都網(wǎng)站設(shè)計、做網(wǎng)站、網(wǎng)站制作、網(wǎng)站開發(fā)、網(wǎng)頁設(shè)計、網(wǎng)站優(yōu)化、網(wǎng)絡(luò)推廣、探索永無止境。

前言

在EFK基礎(chǔ)架構(gòu)中,我們需要在客戶端部署Filebeat,通過Filebeat將日志收集并傳到LogStash中。在LogStash中對日志進行解析后再將日志傳輸?shù)紼lasticSearch中,最后通過Kibana查看日志。

上文已經(jīng)搭建好了EFK的基礎(chǔ)環(huán)境,本文我們通過真實案例打通三者之間的數(shù)據(jù)傳輸以及解決EFK在使用過程中的一些常見問題。

首先看一下實際的業(yè)務(wù)日志

2020-01-09 10:03:26,719 INFO ========GetCostCenter Start===============
2020-01-09 10:03:44,267 WARN 成本中心編碼少于10位!{"deptId":"D000004345","companyCode":"01"}
2020-01-09 10:22:37,193 ERROR java.lang.IllegalStateException: SessionImpl[abcpI7fK-WYnW4nzXrv7w,]: can't call getAttribute() when session is no longer valid.
 at com.caucho.server.session.SessionImpl.getAttribute(SessionImpl.java:283)
 at weaver.filter.PFixFilter.doFilter(PFixFilter.java:73)
 at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:87)
 at weaver.filter.MonitorXFixIPFilter.doFilter(MonitorXFixIPFilter.java:30)
 at weaver.filter.MonitorForbiddenUrlFilter.doFilter(MonitorForbiddenUrlFilter.java:133)

「日志組成格式為:」
時間 日志級別 日志詳情
那么我們的主要任務(wù)就是將這段日志正常寫入EFK中。

filebeat安裝配置

  • 下載filebeat7.5.1

  • 將下載后的文件上傳至服務(wù)器并解壓tar -zxvf filebeat-7.5.1-linux-x86_64.tar.gz

  • 修改filebeat.yml,

filebeat.inputs:- type: log  enabled: true  paths:    - /app/weaver/Resin/log/xxx.log

此段配置日志輸入,指定日志存儲路徑

output.logstash:  # The Logstash hosts  hosts: ["172.31.0.207:5044"]

此段配置日志輸出,指定Logstash存儲路徑

  • 啟動filebeat
    ./filebeat -e -c filebeat.yml
    如果需要靜默啟動,則使用 nohup ./filebeat -e -c filebeat.yml & 命令啟動即可。

logstash配置

logstash的配置主要分為三段 inputfilter,output。input用于指定輸入,主要是開放端口給Filebeat用于接收日志filter用于指定過濾,對日志內(nèi)容進行解析過濾。output用于指定輸出,直接配置ES的地址即可

input {  beats {    port => 5044  }}output {  elasticsearch {    hosts => ["http://172.31.0.127:9200"]    index => "myindex-%{+YYYY.MM.dd}"    user => "elastic"    password => "xxxxxx"  }}

我們配置好logstash后通過命令重啟logstash
docker-compose -f elk.yml restart logstash

經(jīng)過上述兩步配置后應(yīng)用程序往日志文件寫入日志,filebeat會將日志寫入logstash。在kibana查看寫入的日志結(jié)果如下:EFK實戰(zhàn)之如何實現(xiàn)日志集成

日志顯示有2個問題:

  • 由于錯誤日志堆棧信息有多行,在kibana中展示成了多行,數(shù)據(jù)查看很亂。需要將堆棧異常整理成一行顯示。

  • 需要對日志進行解析,拆成“時間 日志級別 日志詳情”的顯示格式。

優(yōu)化升級

  • 在filebeat中設(shè)置合并行
    filebeat默認(rèn)是行傳輸?shù)?,但是我們的日志肯定是多行一個日志,我們要把多行合并到一起就要找到日志的規(guī)律。比如我們的日志格式全都是以時間格式開頭,所以我們在filebeat中 filebeat.inputs區(qū)域添加如下幾行配置

  # 以日期作為前綴  multiline.pattern: ^\d{4}-\d{1,2}-\d{1,2}  # 開啟多行合并  multiline.negate: true  # 合并到上一行之后  multiline.match: after
  • 在logstash中設(shè)置對日志的解析
    將日志解析成“時間 日志級別 日志詳情”的展示格式,所以我們需要在logstash配置文件中添加filter段

filter {
	grok{
		match => {
			"message">

這里主要是使用grok語法對日志進行解析,通過正則表達(dá)式對日志進行過濾。大家可以通過kibana里的grok調(diào)試工具進行調(diào)試EFK實戰(zhàn)之如何實現(xiàn)日志集成

配置完成后我們重新打開kibana Discover界面查看日志,符合預(yù)期,完美!EFK實戰(zhàn)之如何實現(xiàn)日志集成

常見問題

kibana 亂碼

這個主要原因還是客戶端日志文件格式有問題,大家可以通過 file xxx.log查看日志文件的編碼格式,如果是ISO8859的編碼基本都會亂碼,我們可以在filebeat配置文件中通過encoding指定日志編碼進行傳輸。

filebeat.inputs:- type: log  enabled: true  paths:    - /app/weaver/Resin/log/xxx.log  encoding: GB2312

kibana 提取字段出錯

EFK實戰(zhàn)之如何實現(xiàn)日志集成

如上所示,打開kibana Discover面板時出現(xiàn)此異常,大家只要刪除ES中的 .kibana_1索引然后重新訪問Kibana即可。EFK實戰(zhàn)之如何實現(xiàn)日志集成

查看周圍文件

我們在終端查看日志某關(guān)鍵字時一般會查上下文信息便于排查問題,如經(jīng)常用到的指令 cat xxx.log | grep -C50 keyword,那么在Kibana中如何實現(xiàn)這功能呢。EFK實戰(zhàn)之如何實現(xiàn)日志集成

在Kibana中搜索關(guān)鍵字,然后找到具體日志記錄,點擊左邊向下箭頭,然后再點擊“查看周圍文檔”即可實現(xiàn)。

動態(tài)索引

我們?nèi)罩酒脚_可能需要對接多個業(yè)務(wù)系統(tǒng),需要根據(jù)業(yè)務(wù)系統(tǒng)建立不同的索引。

  • 在filebeat中給日志打上標(biāo)記

- type: log  ......  fields:    logType: oabusiness
  • 在logstash中根據(jù)標(biāo)記生成索引

input {
  beats {
    port => 5044
  }
}
filter {
  if [fields][logType] == "oabusiness">

到此,相信大家對“EFK實戰(zhàn)之如何實現(xiàn)日志集成”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!


標(biāo)題名稱:EFK實戰(zhàn)之如何實現(xiàn)日志集成
網(wǎng)站地址:http://weahome.cn/article/igpips.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部