文档章节

rsyslog+logstash+elasticsearch+kibana对nginx日志提取

zzuqiang
 zzuqiang
发布于 2016/07/20 18:39
字数 512
阅读 459
收藏 6

rsyslog+logstash+elasticsearch+kibana对nginx日志提取

  1. 安装更新rsyslog请参考:更新安装rsyslog
  2. rsyslog的版本为:rsyslogd -v
rsyslogd 8.19.0, compiled with:
	PLATFORM:				x86_64-redhat-linux-gnu
	PLATFORM (lsb_release -d):
	FEATURE_REGEXP:				Yes
	GSSAPI Kerberos 5 support:		No
	FEATURE_DEBUG (debug build, slow code):	No
	32bit Atomic operations supported:	Yes
	64bit Atomic operations supported:	Yes
	memory allocator:			system default
	Runtime Instrumentation (slow code):	No
	uuid support:				Yes
	Number of Bits in RainerScript integers: 64

See http://www.rsyslog.com for more information.
  1. logsta的版本 [root@huaqinwang logstash]# ./bin/logstash -V
logstash 2.3.4
  1. elasticsearch的版本[root@huaqinwang elasticsearch]# ./bin/elasticsearch -V
Version: 2.3.4, Build: e455fd0/2016-06-30T11:24:31Z, JVM: 1.7.0_79
  1. kibana的版本[root@huaqinwang kibana]# ./bin/kibana -V
4.5.2

6.操作系统版本 [root@huaqinwang kibana]# lsb_release -a

LSB Version:	:base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID:	CentOS
Description:	CentOS release 6.6 (Final)
Release:	6.6
Codename:	Final

1.配置rsyslog-client

修改配置文件:/etc/rsyslog.conf

  • 在$ActionFileDefaultTemplate 添加以下内容:
# Use default timestamp format
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$template myFormat,"%timestamp% %fromhost-ip% %msg%\n"
$ActionFileDefaultTemplate myFormat
  • 在@@remote-host:514添加以下内容:
# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
#*.* @@remote-host:514
*.*     @@192.168.1.85:514

192.168.1.85为Server端、端口默认514

  • 切换到目录:/etc/rsyslog.d目录下新建文件rsyslog-nginx.conf内容如下:
module(load="imfile")    # if you want to tail files
input(type="imfile"
    File="/var/log/nginx/access.log"
    Tag="examplelogs"
 )
  • 重启服务
service rsyslog restart

2.配置rsyslog-server

修改配置文件:/etc/rsyslog.conf

  • 对比以下内容、需要把注释解掉。分别在第13、14、18、19行
# Provides UDP syslog reception
# for parameters see http://www.rsyslog.com/doc/imudp.html
module(load="imudp") # needs to be done just once
input(type="imudp" port="514")

# Provides TCP syslog reception
# for parameters see http://www.rsyslog.com/doc/imtcp.html
module(load="imtcp") # needs to be done just once
input(type="imtcp" port="514")
  • 添加以下内容在remote-host:514处
 # remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
 85 #*.* @@remote-host:514
 86 *.*     @@192.168.1.85:5514

内容目的是交给logstash的 5514 端口读取文件

  • 重启服务雷同客户端配置

3.logstash的配置

使用如下配置:

input{
        syslog {
          port => 5514
        }
}
output {
        elasticsearch {
                hosts => ["192.168.1.85:9200"]
                index => "syslog-access-%{+YYYY.MM.dd}"
                workers => 1
                flush_size => 10
                idle_flush_time => 10
                template_overwrite => true
        }
}

4.elasticsearch索引展示

索引展示如下: 索引展示

5.kibana的效果展示

nginx的日志如下展示: 效果展示

© 著作权归作者所有

zzuqiang
粉丝 23
博文 61
码字总数 133582
作品 0
郑州
程序员
私信 提问
logstash 匹配 nginx access 日志

ELK系统收集的nginx access日志内容默认都是作为一个整体放在messages字段中的,无法对诸如 upstreamresponsetime、upstream_status等重要字段进行单独分析比较,因此,就需要使用logstash ...

weidabao123
2017/03/14
0
0
ELK的安装配置使用

ELK的安装配置 一、ES集群的安装: 搭建ElasticSearch集群: 使用三台服务器搭建集群 node-1(主节点) 10.170.13.1 node-2(从节点) 10.116.35.133 node-3(从节点) 10.44.79.57 下载安装...

志建
2017/07/20
0
0
nginx日志正则格式怎么转换成apache日志格式

nginx日志格式 以下是nginx的日志正则提取格式 我的Apache日志格式如下: 怎么把上面的正则修改成我能用的正则, 自己尝试了好久 一直出错,

非法沣
2017/04/16
127
0
nginx log记录请求响应时间

2018.10.22 阿里云对默认nginx log的分析功能详细介绍。 有时为了方便分析接口性能等,需要记录请求的时长,通过修改nginx的日志格式可以做到,如 添加一个新的log_format logformat timedc...

swingcoder
2018/09/22
0
0
《Nginx官方文档》调试日志

原文链接 要启用调试日志,需要将nginx 在构建时配置为支持调试: ./configure --with-debug ... 然后使用 errorlog 指令设置调试级别: error_log /path/to/log debug; 要验证nginx是否配置为...

xiushao
01/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

任务调度-单体应用定时任务解决方案

1. 应用场景: 单体应用(并发少、就公司内部使用)、业务比较简单、单一、稳定,传统行业首选,项目初期。 2. 主要方式: Spring XML配置方式,timer。 <bean id="cycleBonusTimer" class="...

秋日芒草
35分钟前
3
0
EditText中singleLine过期替代方法

android:lines="1" android:inputType="text"

球球
49分钟前
1
0
删除 Tomcat-webapps 目录自带项目

本文将 %CATALINA_HOME% 目录称为“tomcat”目录。 1.webapps目录中的项目 在 Tomcat 8.0 的 tomcat/webapps 目录中,含有 5 个 Tomcat 自带的 Web 项目,如下所示: docs 有关于 Tomcat 的介...

Airship
53分钟前
3
0
好文:华杉:我等用功,不求日增,但求日减。减一分人欲,则增一分天理,这是何等简易!何等洒脱!

#写在前面1.怎么理解“减一分人欲,则增一分天理,这是何等简易!”?1)华杉提倡 “一劳永逸” 排除浪费,少干活,多赚钱,一战而定,降低作业成本。2)华杉提倡学海无涯,回头是岸...

阿锋zxf
今天
3
0
vue 的bus总线

bus声明 global.bus = new Vue() 事件发送 controlTabbar () {global.bus.$emit('pickUp', 'ddd')}, 事件接收 global.bus.$on('pickUp', (res) => {this.isFocus = true})......

Js_Mei
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部