ELK:访问日志切割
本文只针对ELK下对访问日志的分割进行讲解(如nginx的acc日志,IIS的W3C日志等等)
本文只讲方向,具体的语法等知识点可以在官网或者百度查询
本文以IIS日志为例,日志格式(列头)如下:
date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) cs(Referer) sc-status sc-substatus sc-win32-status time-taken
1、filebeat的dissect
优点:简单快捷,在简单应用场景中效率更高
缺点:日志切割场景单一,功能单一
实现:在配置文件中processors下面加上dissect 对日志进行切割
processors:- dissect:tokenizer: "%{date} %{time} %{s-ip} %{cs-method} %{cs-uri-stem} %{cs-uri-query} %{s-port} %{cs-username} %{c-ip} %{cs(User-Agent)} %{cs(Referer)} %{sc-status} %{sc-substatus} %{sc-win32-status} %{time-taken}"field: "message"target_prefix: "fields"
2、logstash的grok
优点:能灵活的切割各种日志,有很多功能加工日志
缺点:配置难度较dissect高出不少
实现:在logstash配置文件中input和output之间的filter中进行配置:
因为IIS的日志字段是可以自定义配置的,所以这里配置了多种解析配置
filter {grok {match => ["message","%{TIMESTAMP_ISO8601:iis.access.time} (?:-|%{IPORHOST:destination.address}) (?:-|%{WORD:http.request.method}) (?:-|%{NOTSPACE:url.path}) (?:-|%{NOTSPACE:url.query}) (?:-|%{NUMBER:destination.port:long}) (?:-|%{NOTSPACE:user.name}) (?:-|%{IPORHOST:source.address}) (?:-|%{NOTSPACE:user_agent.original}) (?:-|%{NOTSPACE:http.request.referrer}) (?:-|%{NUMBER:http.response.status_code:long}) (?:-|%{NUMBER:iis.access.sub_status:long}) (?:-|%{NUMBER:iis.access.win32_status:long}) (?:-|%{NUMBER:temp.duration:long})","message","%{TIMESTAMP_ISO8601:iis.access.time} (?:-|%{NOTSPACE:iis.access.site_name}) (?:-|%{WORD:http.request.method}) (?:-|%{NOTSPACE:url.path}) (?:-|%{NOTSPACE:url.query}) (?:-|%{NUMBER:destination.port:long}) (?:-|%{NOTSPACE:user.name}) (?:-|%{IPORHOST:source.address}) (?:-|%{NOTSPACE:user_agent.original}) (?:-|%{NOTSPACE:iis.access.cookie}) (?:-|%{NOTSPACE:http.request.referrer}) (?:-|%{NOTSPACE:destination.domain}) (?:-|%{NUMBER:http.response.status_code:long}) (?:-|%{NUMBER:iis.access.sub_status:long}) (?:-|%{NUMBER:iis.access.win32_status:long}) (?:-|%{NUMBER:http.response.body.bytes:long}) (?:-|%{NUMBER:http.request.body.bytes:long}) (?:-|%{NUMBER:temp.duration:long})","message","%{TIMESTAMP_ISO8601:iis.access.time} (?:-|%{NOTSPACE:iis.access.site_name}) (?:-|%{NOTSPACE:iis.access.server_name}) (?:-|%{IPORHOST:destination.address}) (?:-|%{WORD:http.request.method}) (?:-|%{NOTSPACE:url.path}) (?:-|%{NOTSPACE:url.query}) (?:-|%{NUMBER:destination.port:long}) (?:-|%{NOTSPACE:user.name}) (?:-|%{IPORHOST:source.address}) (?:-|HTTP/%{NUMBER:http.version}) (?:-|%{NOTSPACE:user_agent.original}) (?:-|%{NOTSPACE:iis.access.cookie}) (?:-|%{NOTSPACE:http.request.referrer}) (?:-|%{NOTSPACE:destination.domain}) (?:-|%{NUMBER:http.response.status_code:long}) (?:-|%{NUMBER:iis.access.sub_status:long}) (?:-|%{NUMBER:iis.access.win32_status:long}) (?:-|%{NUMBER:http.response.body.bytes:long}) (?:-|%{NUMBER:http.request.body.bytes:long}) (?:-|%{NUMBER:temp.duration:long})","message","%{TIMESTAMP_ISO8601:iis.access.time} \\[%{IPORHOST:destination.address}\\]\\(http://%{IPORHOST:destination.address}\\) (?:-|%{WORD:http.request.method}) (?:-|%{NOTSPACE:url.path}) (?:-|%{NOTSPACE:url.query}) (?:-|%{NUMBER:destination.port:long}) (?:-|%{NOTSPACE:user.name}) \\[%{IPORHOST:source.address}\\]\\(http://%{IPORHOST:source.address}\\) (?:-|%{NOTSPACE:user_agent.original}) (?:-|%{NUMBER:http.response.status_code:long}) (?:-|%{NUMBER:iis.access.sub_status:long}) (?:-|%{NUMBER:iis.access.win32_status:long}) (?:-|%{NUMBER:temp.duration:long})","message","%{TIMESTAMP_ISO8601:iis.access.time} (?:-|%{IPORHOST:destination.address}) (?:-|%{WORD:http.request.method}) (?:-|%{NOTSPACE:url.path}) (?:-|%{NOTSPACE:url.query}) (?:-|%{NUMBER:destination.port:long}) (?:-|%{NOTSPACE:user.name}) (?:-|%{IPORHOST:source.address}) (?:-|%{NOTSPACE:user_agent.original}) (?:-|%{NUMBER:http.response.status_code:long}) (?:-|%{NUMBER:iis.access.sub_status:long}) (?:-|%{NUMBER:iis.access.win32_status:long}) (?:-|%{NUMBER:temp.duration:long})"]tag_on_failure => ["fail_in_message"]}
}
欢迎关注我的公众号:龙叔运维
持续分享运维经验
ELK:访问日志切割相关推荐
- Linux centos7 VMware Apache访问日志不记录静态文件、访问日志切割、静态元素过期时间...
一.Apache访问日志不记录静态文件 网站大多元素为静态文件,如图片.css.js等,这些元素可以不用记录 vim /usr/local/apache2.4/conf/extra/httpd-vho ...
- 访问日志不记录静态文件、访问日志切割、静态元素过期时间
11.22 访问日志不记录静态文件 网站大多元素为静态文件,如图片.css.js等,这些元素可以不用记录 小技巧: 打开浏览器,按键盘上的F12键,开发人员工具,选择Network选项(一般默认),刷 ...
- 4.16访问日志不记录静态文件,访问日志切割以及静态元素过期时间
访问日志不记录静态文件 一个网站会有很多元素,尤其是图片.js.css等静态文件非常多,每个用户请求一个页面都会访问诸多的图片,这些元素都会被记录在日志中,如果一个网站访问量很大,那么这些日志会增长的 ...
- Apache访问日志切割
[root@daixuan ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 修改日志文件为: ErrorLog "logs/t ...
- linux中用shell脚本对tomcat和nginx做日志切割
Tomcat日志catalina.out切割小脚本 #!/bin/bash #cut tomcat catalina.out yesterday=`date +"%F" -d &q ...
- 1.8.5 访问日志不记录静态文件
2019独角兽企业重金招聘Python工程师标准>>> 1.8.5 访问日志不记录静态文件 网站大多元素为静态文件,如图片.css.js等,这些元素可以不用记录 把虚拟主机配置文件改 ...
- Nginx访问日志、日志切割、静态文件不记录日志和过期时间
2019独角兽企业重金招聘Python工程师标准>>> 11月27日任务 12.10 Nginx访问日志 12.11 Nginx日志切割 12.12 静态文件不记录日志和过期时间 1 ...
- 12.10 Nginx访问日志 12.11 Nginx日志切割 12.12 静态文件不记录日志和过期时间
- 12.10 Nginx访问日志 - 12.11 Nginx日志切割 - 12.12 静态文件不记录日志和过期时间# 12.10 Nginx访问日志 - 日志的格式- vim /usr/local/ ...
- 4.36域名重定向4.37用户认证4.38Nginx访问日志4.39日志不记录静态文件4.40日志切割...
2019独角兽企业重金招聘Python工程师标准>>> 域名重定向 用户认证 Nginx访问日志 日志不记录静态文件 日志切割 域名重定向 配置第二个域名: vi /etc/ngin ...
- Nginx 访问日志轮询切割
Nginx 访问日志轮询切割脚本 -------------------------------------------------------------------- 注:如果你对python感兴 ...
最新文章
- 使用vim打造自己的python编辑器
- FreeMarker使用记录
- c语言实现--不带头结点的单链表操作
- 工具栏,状态栏(VC_MFC)
- Notepad++中的高级查找
- Java堆排序递归_大顶堆第二弹----堆排序(递归实现)
- 速达服务器账套定期维护么,速达软件常见操作问题解决方法
- vue.set的用法
- testng 检查异常_TestNG异常– ExpectedExceptions,ExpectedExceptionsMessageRegExp
- M2Det论文解读和开源代码
- 妇产科学习题---有答案
- FPGA学习经验分享——入门篇
- 蚁剑软件的配置与应用
- 千里马Android Framework-Binder通信总结流程图
- 前端-表格英文单词不换行问题
- 在线编辑器CKeditor的应用
- java面试官常问的问题
- 扬州大学回应「清华博士入职5年,月薪才372元」
- Codeforces:div3_719 记录
- 机器人操作系统(ROS)入门
热门文章
- 前端使用prettier格式化规范
- Wooboo第四批(暨6月7日)上传程序送百元现金活动获奖公告
- 土豆嫁优酷:烧钱的宿命?
- android N : UnsatisfiedLinkError
- 用流量扫码总显示无法连接服务器,手机有流量但无法连接网络?手机数据网络不能访问互联网...
- excel查重复_毕业季论文查重攻略,手把手教你降低重复率!
- 51驱动AD9850/AD9851—DDS信号发生器
- 【太经典】如果有人问你数据库的原理,叫他看这篇文章
- 51单片机LED 8*8点阵屏显示图形
- 104. 史上最全的数据库面试题,面试前刷一刷