logstash 6.6.0 读取nginx日志 插入到elasticsearch中
logstash.conf
input {
# For detail config for log4j as input,
# See: https://www.elastic.co/guide/en/logstash/
file {
type => "log" # log 名
path => "/home/wwwlogs/a.log" # log 路径
}
}
filter {
grok {
match => {
"message" => "^%{IPORHOST:clientip} (?:-|%{USER:ident}) (?:-|%{USER:auth}) \[%{HTTPDATE:[@metadata]timestamp}\] %{NOTSPACE:method} %{NOTSPACE:url}"
}
remove_field => ["message"]
}
mutate {
split => ["url", "?"]
add_field => ["url_params", "%{url[1]}"]
remove_field => ["url"]
}
mutate {
split => ["url_params","&"]
add_field => ["cdid_info", "%{url_params[0]}"]
add_field => ["elapsedTime_info", "%{url_params[1]}"]
add_field => ["os_info", "%{url_params[2]}"]
add_field => ["time_info", "%{url_params[3]}"]
add_field => ["uid_info", "%{url_params[4]}"]
add_field => ["wt_info", "%{url_params[5]}"]
remove_field => ["url_params"]
}
mutate {
split => ["cdid_info", "="]
add_field => ["cdid", "%{cdid_info[1]}"]
remove_field => ["cdid_info"]
}
mutate {
split => ["elapsedTime_info", "="]
add_field => ["elapsedTime", "%{elapsedTime_info[1]}"]
remove_field => ["elapsedTime_info"]
}
mutate {
split => ["os_info", "="]
add_field => ["os", "%{os_info[1]}"]
remove_field => ["os_info"]
}
mutate {
split => ["time_info", "="]
add_field => ["time", "%{time_info[1]}"]
remove_field => ["time_info"]
}
mutate {
split => ["uid_info", "="]
add_field => ["uid", "%{uid_info[1]}"]
remove_field => ["uid_info"]
}
mutate {
split => ["wt_info", "="]
add_field => ["wt", "%{wt_info[1]}"]
remove_field => ["wt_info"]
}
}
output {
# For detail config for elasticsearch as output,
# See: https://www.elastic.co/guide/en/logstash/current
elasticsearch {
hosts => "39.100.100.100:9200" #ElasticSearch host, can be array. # elasticseach 的 host
index => "index_log" #The index to write data to.
}
# 该命令是将结果输出到控制台
#stdout { codec => rubydebug }
}
cd 到 conf 文件目录下
检查配置是否正确
../bin/logstash -f ./logstash.conf -t
有上面提示说明配置没有问题
启动
../bin/logstash -f ./logstash.conf
————————————————
版权声明:本文为CSDN博主「可爱的狼」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/adorablewolf/article/details/90210969
logstash 6.6.0 读取nginx日志 插入到elasticsearch中的更多相关文章
- logstash收集的日志输出到elasticsearch中
logstash收集的日志输出到elasticsearch中 一.需求 二.实现步骤 1.编写pipeline文件 1.`elasticsearch`配置参数解析: 2.可能会报的一个异常 2.准备测 ...
- 使用 Elastic Agents 把定制的日志摄入到 Elasticsearch 中
转载自:https://mp.weixin.qq.com/s/QQxwYh1uLCkKn1LK72ojJA 在以前的系统中,我们可以使用如下的几种方式来采集日志: 1.我们可以直接使用 Beats 把 ...
- Logstash使用grok插件解析Nginx日志
grok表达式的打印复制格式的完整语法是下面这样的: %{PATTERN_NAME:capture_name:data_type}data_type 目前只支持两个值:int 和 float. 在线g ...
- 关于使用Log4Net将日志插入oracle数据库中
1.关于配置文件. <?xml version="1.0" encoding="utf-8" ?> <configuration> &l ...
- 在nginx日志的access log中记录post请求的参数值
背景:有时程序偶出现参数少了或没有提交到下一个链接Url里后出现问题,如何查呢,最好的办法是在nginx上的加post参数,以定位到问题才有可能对某个UIR的代码出现的问题进行排查. og_forma ...
- logstash通过kafka传输nginx日志(三)
单个进程 logstash 可以实现对数据的读取.解析和输出处理.但是在生产环境中,从每台应用服务器运行 logstash 进程并将数据直接发送到 Elasticsearch 里,显然不是第一选择:第 ...
- elasticsearch+logstash+redis+kibana 实时分析nginx日志
1. 部署环境 2. 架构拓扑 3. nginx安装 安装在192.168.176.128服务器上 这里安装就简单粗暴了直接yum安装nginx [root@manager ~]# yum -y in ...
- Logstash使用grok过滤nginx日志(二)
在生产环境中,nginx日志格式往往使用的是自定义的格式,我们需要把logstash中的message结构化后再存储,方便kibana的搜索和统计,因此需要对message进行解析. 本文采用grok ...
- 第七章·Logstash深入-收集NGINX日志
1.NGINX安装配置 源码安装nginx 因为资源问题,我们先将nginx安装在Logstash所在机器 #安装nginx依赖包 [root@elkstack03 ~]# yum install - ...
随机推荐
- npm 安装全局包 不是内部或外部命令的问题
场景: npm已经安装成功 ,通过npm install -g 安装的 全局包 提示不是内部或外部命令 第一步: npm list -g --depth=0:查看npm全局包的路径,和有哪些安装包 ...
- Processing玩抠图
突然兴起想玩一下抠图,试着用自带的Example\video来改,花了一个中午做了个小样: 分别是白色为底与黑色为底的效果,代码如下: import processing.video.*; int n ...
- Android Studio导入google training example gradle失败
Error:Unable to tunnel through proxy. Proxy returns "HTTP/1.1 400 Bad Request 每次从github的Google ...
- 最大字段和&洛谷11月月赛DIV2 T1
蒟蒻只能打一打DIV2的基础题 太卑微了 这道题的本质其实是再建一个数组,如果s串i位置是0那么就给a[i]赋值为1,表示要累加个数,如果是1那么就把a[i]赋值为-1,表示个数减一,最后求最大子段和 ...
- Flask一种通用视图,增删改查RESTful API的设计
模型设计是后端开发的第一步.数据模型反映了各种对象之间的相互关系. from app import db class Role(db.Model): """角色" ...
- 浅谈python闭包及装饰器
1. 什么是闭包: 闭包 是指有权访问另一个函数作用域中变量的函数,创建闭包的最常见的方式就是在一个函数内创建另一个函数,通过另一个函数访问这个函数的局部变量,利用闭包可以突破作用链域,将函数内部的变 ...
- 开源GIT仓库-----gitlab
简介:GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目.它拥有与Github类似的功能,能够浏览源代码 ...
- Spring Boot|监控-Actuator
Spring Boot 为我们提供了一个生产级特性-Actuator,包含很多实际有用的API,下面我们就一起来看看这些API. 一.Actuator 首先在程序中引入Actuator <!-- ...
- Easytrader踩坑之旅(二)
快速阅读 用的是THSTrader进行的调试,同花须必须用8.0的. 在新的机子重新安装requirements已经调用同花顺查股票余额. 继续昨天的话费. 昨天到最后,虽然显示了余额,但是和自己帐户 ...
- 360杯复赛流量分析题 详细writeup
题目名: 这是捕获的黑客攻击数据包 通过分析流量包,得知黑客先上传了一个文件: 追踪TCP流,可以看到文件内容,是一个木马: 然后通过get请求一个加密key,在响应里能看到key的值. 接下来就是用 ...