ELK之nginx日志的简单收集
来源:互联网 发布:底盘弹簧增高垫淘宝 编辑:程序博客网 时间:2024/05/17 01:53
在上一篇文章部署好了ELK环境,接下来进行nginx日志的收集
环境
192.168.2.112 jdk/elasticsearch/kibana CentOS release 6.5
192.168.2.118 jdk/logstash/nginx CentOS release 6.3 (Final)
- nginx日志收集
1)进入logstash的etc目录下,创建文件nginxlog.conf并添加如下内容
input { file { path => "/usr/local/nginx/logs/access.log" type => "nginx" }}output { elasticsearch { hosts => "192.168.2.112:9200" }}
path指向日志存储路径
2)然后启动logstash
[root@log-nginx etc]# ../bin/logstash -f nginxlog.conf# nohup /usr/local/logstash/bin/logstash -f nginxlog.conf &>/dev/null & 后台启动
可以看到如下图显示内容:
或者
ps -ef | grep java
3)此时可以先手动访问nginx页面,访问日志数据在增加,则logstash会把数据推送给ES,然后直接在kibana上查看如下图:
- 加入redis消息队列提高速度收集nginx日志
1)118服上部署好redis服务并开启
[root@log-nginx elktest]# ps -ef | grep redisroot 4841 1 0 22:12 pts/1 00:00:00 /usr/local/redis/bin/redis-server *:6379 root 4850 1499 0 22:13 pts/1 00:00:00 grep redis[root@log-nginx elktest]# netstat -tunl | grep 6379tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN tcp 0 0 :::6379 :::* LISTEN
2)在logstash的etc目录下建立文件agentnginx.conf并添加如下内容
input { file { type => "nginx-access" path => "/usr/local/nginx/logs/access.log" }}output { redis { host => "localhost" port => 6379 data_type => "list" key => "logstash" }}
把nginx日志数据推送到redis
3)在logstash的etc目录下建立文件indexnginx.conf并添加如下内容
input { redis { host => "localhost" port => "6379" data_type => "list" key => "logstash" type => "redis-input" batch_count => 1 }}output { elasticsearch { hosts => "192.168.2.112" }}
4)启动logstash
nohup /usr/local/logstash/bin/logstash -f agentnginx.conf &>/dev/null &nohup /usr/local/logstash/bin/logstash -f indexnginx.conf &>/dev/null &ps -ef | grep java
5)此时查看web界面如下
至此nginx日志的简单收集功能完成。
若需要收集其他服务或系统的日志,操作方法与上述类似
如果需要批量收集多台服务器的日志数据,可以通过shell脚本或借助ansible/saltstack等工具把配置好的logstash目录同步到其他的服务器
例如上述的nginx日志收集,配置好了logstash里的agent.conf和index.conf后,直接把logstash目录同步到其他服务器对应的路径,然后修改conf文件里redis的ip即可(若本机有也可以不用修改)
备注:
1)可以点击右上角的时间按钮,然后点击auto-refresh,可以设置自动刷新时间
2)在图形左边一列,可以选择要显示的内容
3)若显示如下图所示内容,则可能是本身没有数据过来,或者是服务器之间的时间不同步。
- ELK之nginx日志的简单收集
- 简单ELK收集日志方案
- 用ELK搭建简单的日志收集分析系统
- 最简单的系统日志收集方式 elk + rsyslog客户端
- ELK搭建简单的日志收集分析系统
- ELK收集Nginx日志,使用grok正则表达式(二)
- elk部署配置,收集nginx和tomcat日志
- ELK日志处理之使用logstash收集log4J日志
- ELK日志处理之使用logstash收集log4J日志
- ELK日志处理之使用logstash收集log4J日志
- ELK -分析nginx 日志
- 日志收集架构-ELK
- elk+filebeat分布式日志收集
- 分布式日志收集套件-ELK
- 基于ELK的日志收集系统的心得
- ELK日志收集(UDP+LVS)集群的部署教程
- python fabric部署elk的filebeat日志收集客户端
- elk之nginx
- 用Shiro实现简单的身份验证
- OpenCV人脸检测例程分析
- 81. Search in Rotated Sorted Array II
- linux 内核升级
- python自定义模块
- ELK之nginx日志的简单收集
- 静态代码分析 cpplint
- idea使用-1.快捷键
- 搭建阿里云服务器(ubuntu)时遇到的问题(一)
- 什么是标识符的链接属性,都有哪些属性?
- java日期类操作:Date、SimpleDateFormat、Calendar简介
- 欢迎使用CSDN-markdown编辑器
- 1002. 写出这个数 (20)
- css选择器