2020-01-14

ELK-day02


image.png

input 我們要采集的日志文件路徑, 收割機 harvester 監(jiān)聽文件的變化 -->splooer程序 --> 轉(zhuǎn)發(fā) es | logstash | kafka | redis


image.png

filebeat.inputs:
- type: stdin #標準輸入
enabled: true #啟用

output.console: #標準輸出
pretty: true
enable: true

image.png

將文件最新發(fā)生變化的內(nèi)容,存入ES

[root@web01 ~]# cat /etc/filebeat/file.yml
filebeat.inputs:
 - type: log
   paths: /var/log/nginx/access.log
   enabled: true
output.elasticsearch:
 hosts:
["10.0.0.161:9200","10.0.0.162:9200","10.0.0.163:9200"]

收集系統(tǒng)日志

特別分散--> syslog --> file.txt
1.減少無用的數(shù)據(jù)
2.調(diào)整索引名稱
3.測試調(diào)整模板,設定分片

[root@web01 ~]# cat /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
 enabled: true
 paths:
   - /var/log/oldxu.log
 include_lines: ['^ERR', '^WARN', 'sshd']   #只看指定的
日志
output.elasticsearch:
 hosts:
["10.0.0.161:9200","10.0.0.162:9200","10.0.0.163:9200"]
 index: "system-%{[agent.version]}-%{+yyyy.MM.dd}"
setup.ilm.enabled: false
setup.template.name: system   #索引關聯(lián)的模板名稱
setup.template.pattern: system-*

方式一:

###設定system模板的分片數(shù)和副本數(shù)
#setup.template.settings:           #定義索引分片數(shù)和副本
# index.number_of_shards: 3
# index.number_of_replicas: 1

方式二:

   "number_of_shards": "10",
   "number_of_replicas": "1",
 1.修改system模板   ---> 添加 shards 分片數(shù)數(shù)
量,replicas的數(shù)量
 2.刪除模板關聯(lián)的索引
 3.刪除filebeat自行指定的分片數(shù)和副本數(shù)
 4.重啟filebeat
 5.產(chǎn)生新的日志
image.png

收集Nginx

配置filebeat
log_format json '{ "time_local": "$time_local", '
                         '"remote_addr":
"$remote_addr", '
                         '"referer": "$http_referer",
'
                         '"request": "$request", '
                         '"status": $status, '
                         '"bytes": $body_bytes_sent, '
                         '"agent": "$http_user_agent",
'
                         '"x_forwarded":
"$http_x_forwarded_for", '
                         '"up_addr":
"$upstream_addr",'
                         '"up_host":
"$upstream_http_host",'
                         '"upstream_time":
"$upstream_response_time",'
                         '"request_time":
"$request_time"'
   '}';
 access_log /var/log/nginx/access.log json;
1 [root@web01 filebeat]# cat /etc/filebeat/filebeat.yml
收集nginx訪問日志和錯誤日志
filebeat.inputs:
- type: log
 enabled: true
 paths:
   - /var/log/nginx/access.log
 json.keys_under_root: true   #默認Flase雌贱,還會將json解析
的日志存儲至messages字段
 json.overwrite_keys: true     #覆蓋默認的key丰刊,使用自定義
json格式的key
output.elasticsearch:
 hosts:
["10.0.0.161:9200","10.0.0.162:9200","10.0.0.163:9200"]
 index: "nginx-%{[agent.version]}-%{+yyyy.MM.dd}"
setup.ilm.enabled: false
setup.template.name: nginx   #索引關聯(lián)的模板名稱
setup.template.pattern: nginx-*
[root@web01 filebeat]# cat filebeat.yml
filebeat.inputs:
- type: log
 enabled: true
 paths:
   - /var/log/nginx/access.log
 json.keys_under_root: true   #默認Flase志笼,還會將json解析
的日志存儲至messages字段
 json.overwrite_keys: true     #覆蓋默認的key,使用自定義
json格式的key
 tags: ["access"]

收集nginx多個虛擬主機的日志

elk.oldxu.com
bk.oldxu.com
- type: log
 enabled: true
 paths:
   - /var/log/nginx/error.log
 tags: ["error"]
output.elasticsearch:
 hosts:
["10.0.0.161:9200","10.0.0.162:9200","10.0.0.163:9200"]
 indices:
   - index: "nginx-access-%{[agent.version]}-%
{+yyyy.MM.dd}"
     when.contains:
       tags: "access"
   - index: "nginx-error-%{[agent.version]}-%
{+yyyy.MM.dd}"
     when.contains:
       tags: "error"
setup.ilm.enabled: false
setup.template.name: nginx   #索引關聯(lián)的模板名稱
setup.template.pattern: nginx-*
image.png
bs.oldxu.com
error日志

1.虛擬主機
[root@web01 conf.d]# cat elk.oldxu.com.conf
server {
 listen 80;
 server_name elk.oldxu.com;
 root /code/elk;
 access_log /var/log/nginx/elk.oldxu.com.log json;
 location / {
 index index.html;
 }
}
[root@web01 conf.d]# cat bs.oldxu.com.conf
server {
 listen 80;
 server_name bs.oldxu.com;
2.測試,模擬產(chǎn)生日志
3.配置filebeat
 root /code/bs;
 access_log /var/log/nginx/bs.oldxu.com.log json;
 location / {
 index index.html;
 }
}
[root@web01 conf.d]# cat bk.oldxu.com.conf
server {
 listen 80;
 server_name bk.oldxu.com;
 root /code/bk;
 access_log /var/log/nginx/bk.oldxu.com.log json;
 location / {
 index index.html;
 }
}
[root@web01 conf.d]# curl -H Host:elk.oldxu.com
http://10.0.0.7
elk.oldux.com
[root@web01 conf.d]# curl -H Host:bs.oldxu.com
http://10.0.0.7
bs.oldux.com
[root@web01 conf.d]# curl -H Host:bk.oldxu.com
http://10.0.0.7
bk.oldux.com
[root@web01 filebeat]# cat /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
 enabled: true
 paths:
   - /var/log/nginx/elk.oldxu.com.log
 json.keys_under_root: true
 json.overwrite_keys: true
 tags: ["nginx-elk-host"]
- type: log
 enabled: true
 paths:
   - /var/log/nginx/bs.oldxu.com.log
 json.keys_under_root: true
 json.overwrite_keys: true
 tags: ["nginx-bs-host"]
- type: log
 enabled: true
 paths:
   - /var/log/nginx/bk.oldxu.com.log
 json.keys_under_root: true
 json.overwrite_keys: true
 tags: ["nginx-bk-host"]
- type: log
 enabled: true
 paths:
   - /var/log/nginx/error.log
 tags: ["nginx-error"]
Tomcat日志
訪問日志 ---> json格式
output.elasticsearch:
 hosts:
["10.0.0.161:9200","10.0.0.162:9200","10.0.0.163:9200"]
 indices:
   - index: "nginx-elk-access-%{[agent.version]}-%
{+yyyy.MM.dd}"
     when.contains:
       tags: "nginx-elk-host"
   - index: "nginx-bs-access-%{[agent.version]}-%
{+yyyy.MM.dd}"
     when.contains:
       tags: "nginx-bs-host"
   - index: "nginx-bk-access-%{[agent.version]}-%
{+yyyy.MM.dd}"
     when.contains:
       tags: "nginx-bk-host"
   - index: "nginx-error-%{[agent.version]}-%
{+yyyy.MM.dd}"
     when.contains:
       tags: "nginx-error"
setup.ilm.enabled: false
setup.template.name: nginx   #索引關聯(lián)的模板名稱
setup.template.pattern: nginx-*

配置filebeat

#1.修改tomcat日志格式
[root@web02 soft]# yum install java -y
[root@web02 soft]# vim tomcat/conf/server.xml
     <Host name="tomcat.oldxu.com" appBase="webapps"
           unpackWARs="true" autoDeploy="true">
       <Valve
className="org.apache.catalina.valves.AccessLogValve"
directory="logs"
               prefix="tomcat.oldxu.com.log"
suffix=".txt"
               pattern="
{&quot;clientip&quot;:&quot;%h&quot;,&quot;ClientUser&q
uot;:&quot;%l&quot;,&quot;authenticated&quot;:&quot;%u&
quot;,&quot;AccessTime&quot;:&quot;%t&quot;,&quot;metho
d&quot;:&quot;%r&quot;,&quot;status&quot;:&quot;%s&quot
;,&quot;SendBytes&quot;:&quot;%b&quot;,&quot;Query?
string&quot;:&quot;%q&quot;,&quot;partner&quot;:&quot;%
{Referer}i&quot;,&quot;AgentVersion&quot;:&quot;%{UserAgent}i&quot;}" />
     </Host>
[root@web02 filebeat]# cat /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
 enabled: true
 paths:
   - /soft/tomcat/logs/tomcat.oldxu.com.log.*.txt
 json.keys_under_root: true   #默認Flase霉猛,還會將json解析
的日志存儲至messages字段
 json.overwrite_keys: true     #覆蓋默認的key邪财,使用自定義
json格式的key

錯誤日志 <--java
output.elasticsearch:
 hosts: ["10.0.0.161:9200","10.0.0.162:9200"]
 index: "tomcat-access-%{[agent.version]}-%
{+yyyy.MM.dd}"
setup.ilm.enabled: false
setup.template.name: tomcat   #索引關聯(lián)的模板名稱
setup.template.pattern: tomcat-*
[root@web02 filebeat]# cat filebeat.yml
filebeat.inputs:
- type: log
 enabled: true
 paths:
   - /soft/tomcat/logs/tomcat.oldxu.com.log.*.txt
 json.keys_under_root: true   #默認Flase啥刻,還會將json解析
的日志存儲至messages字段
 json.overwrite_keys: true     #覆蓋默認的key煤搜,使用自定義
json格式的key
 tags: ["tomcat-access"]
- type: log
 enabled: true
 paths:
   - /soft/tomcat/logs/catalina.out
 multiline.pattern: '^\d{2}'   #匹配以2個數(shù)字開頭的
 multiline.negate: true
 multiline.match: after
 multiline.max_lines: 10000   #默認最大合并行為500,可根
據(jù)實際情況調(diào)整凡伊。
 tags: ["tomcat-error"]
output.elasticsearch:
 hosts: ["10.0.0.161:9200","10.0.0.162:9200"]
 indices:
   - index: "tomcat-access-%{[agent.version]}-%
{+yyyy.MM.dd}"
     when.contains:
       tags: "tomcat-access"
   - index: "tomcat-error-%{[agent.version]}-%
{+yyyy.MM.dd}"
     when.contains:
       tags: "tomcat-error"
setup.ilm.enabled: false
setup.template.name: tomcat   #索引關聯(lián)的模板名稱
setup.template.pattern: tomcat-*
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末零渐,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子系忙,更是在濱河造成了極大的恐慌诵盼,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,589評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異拦耐,居然都是意外死亡耕腾,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,615評論 3 396
  • 文/潘曉璐 我一進店門杀糯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來扫俺,“玉大人,你說我怎么就攤上這事固翰±俏常” “怎么了?”我有些...
    開封第一講書人閱讀 165,933評論 0 356
  • 文/不壞的土叔 我叫張陵骂际,是天一觀的道長疗琉。 經(jīng)常有香客問我,道長歉铝,這世上最難降的妖魔是什么盈简? 我笑而不...
    開封第一講書人閱讀 58,976評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮太示,結(jié)果婚禮上柠贤,老公的妹妹穿的比我還像新娘。我一直安慰自己类缤,他們只是感情好臼勉,可當我...
    茶點故事閱讀 67,999評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著餐弱,像睡著了一般宴霸。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上膏蚓,一...
    開封第一講書人閱讀 51,775評論 1 307
  • 那天瓢谢,我揣著相機與錄音,去河邊找鬼驮瞧。 笑死氓扛,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的剧董。 我是一名探鬼主播幢尚,決...
    沈念sama閱讀 40,474評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼破停,長吁一口氣:“原來是場噩夢啊……” “哼翅楼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起真慢,我...
    開封第一講書人閱讀 39,359評論 0 276
  • 序言:老撾萬榮一對情侶失蹤毅臊,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后黑界,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體管嬉,經(jīng)...
    沈念sama閱讀 45,854評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡皂林,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,007評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了蚯撩。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片础倍。...
    茶點故事閱讀 40,146評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖胎挎,靈堂內(nèi)的尸體忽然破棺而出沟启,到底是詐尸還是另有隱情,我是刑警寧澤犹菇,帶...
    沈念sama閱讀 35,826評論 5 346
  • 正文 年R本政府宣布德迹,位于F島的核電站,受9級特大地震影響揭芍,放射性物質(zhì)發(fā)生泄漏胳搞。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,484評論 3 331
  • 文/蒙蒙 一称杨、第九天 我趴在偏房一處隱蔽的房頂上張望肌毅。 院中可真熱鬧,春花似錦列另、人聲如沸芽腾。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,029評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽摊滔。三九已至,卻和暖如春店乐,著一層夾襖步出監(jiān)牢的瞬間艰躺,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,153評論 1 272
  • 我被黑心中介騙來泰國打工眨八, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留腺兴,地道東北人。 一個月前我還...
    沈念sama閱讀 48,420評論 3 373
  • 正文 我出身青樓廉侧,卻偏偏與公主長得像页响,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子段誊,可洞房花燭夜當晚...
    茶點故事閱讀 45,107評論 2 356

推薦閱讀更多精彩內(nèi)容

  • 本人陸陸續(xù)續(xù)接觸了ELK的1.4闰蚕,2.0,2.4连舍,5.0没陡,5.2版本,可以說前面使用當中一直沒有太多感觸,最近使用...
    三杯水Plus閱讀 4,106評論 0 12
  • 介紹 ansible是新出現(xiàn)的自動化運維工具盼玄,基于Python開發(fā)贴彼,集合了眾多運維工具(puppet、cfengi...
    Marlboro_1eee閱讀 303評論 0 0
  • 一埃儿、cat? 作用:cat 命令用于連接文件并打印器仗,查看文件內(nèi)容? -n 或 --number:由 1 開始對所有...
    響亮的名字_靜閱讀 513評論 0 1
  • SSHD服務的日志存儲位置-錯誤日志分析-修改日志存儲位置 1、sshd服務日志存放在:/var/log/secu...
    追憶青春2020閱讀 143評論 0 0
  • app的功能不是你想多就多的童番,也不是參照你的主觀來確定功能的青灼,如果是這樣的話,app的開發(fā)效果可想而知妓盲,app的功...
    憶白i閱讀 258評論 0 0