ELK之filebeat替代logstash收集日志
filebeat->redis->logstash->elasticsearch
官网下载地址:https://www.elastic.co/downloads/beats/filebeat
Filebeat是轻量级单用途的日志收集工具,用于在没有安装java的服务器上专门收集日志,可以将日志转发到logstash、elasticsearch或redis等场景中进行下一步处理.
1.Filebeat安装和配置
ip:10.0.0.33
cd /usr/local/src/
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.4.0-x86_64.rpm
grep -vE "#|^$" /etc/filebeat/filebeat.yml
filebeat.prospectors:
- input_type: log
paths:
- /var/log/*.log
- /var/log/messages
exclude_lines: ['^DBG',"^$"]
document_type: filesystem-log-0033
output.file:
path: "/tmp"
filename: "filebeat.txt"
# exclude_lines:排除以DBG开头和空行
# document_type:设置类型,相当于给每条日志打个标签
systemctl restart filebeat
echo "filebeat has been restarted" >> /var/log/messages
tail -1 /var/log/messages
{"@timestamp":"2019-02-09T12:15:58.454Z","beat":{"hostname":"linux-elk2","name":"linux-elk2","version":"5.4.0"},
"input_type":"log","message":"filebeat has been restarted","offset":130373,
"source":"/var/log/messages","type":"filesystem-log-0033"}
2.配置filebeat输出到redis
cd /usr/local/redis/
vim redis.conf
bind 10.0.0.33
daemonize yes
save ""
#save 900 1
#save 300 10
#save 60 10000
requirepass 123456
# 启动redis
redis-server /usr/local/redis/redis.conf vim /etc/filebeat/filebeat.yml
#修改output
output.redis:
hosts: "10.0.0.33"
db: "2"
port: "6379"
password: "123456"
key: "filesystem-log-0033" systemctl restart filebeat
echo "123456" >> /var/log/messages
redis-cli -h 10.0.0.33 -a 123456

3.配置linux-elk1节点的logstash收取redis中的数据
vim redis-logstash.conf
input {
redis {
data_type => "list"
host => "10.0.0.33"
db => "2"
port => "6379"
password => "123456"
key => "filesystem-log-0033"
}
} output {
if [type] == "filesystem-log-0033" {
elasticsearch {
hosts => ["10.0.0.22:9200"]
index => "filesystem-log-0033-%{+YYYY.MM.dd}"
}
}
}
systemctl restart logstash 此时elk2上redis中的数据已经被elk1上的logstash取走,并存到es上了
4.监控Redis的队列长度
# centos7上默认的python版本是2.7,可以用yum下载pip
yum -y install python-pip
pip install redis cat redis-test.py
#!/usr/bin/env python
import redis
def redis_conn():
pool=redis.ConnectionPool(host="10.0.0.33",port=6379,db=2,password=123456)
conn = redis.Redis(connection_pool=pool)
data = conn.llen('filesystem-log-0033')
print(data)
redis_conn()
filebeat代替logstash收集日志:http://blog.51cto.com/jinlong/2056598
ELK之filebeat替代logstash收集日志的更多相关文章
- ELK 使用filebeat替代Logstash收集日志
使用beats采集日志 之前也介绍过beats是ELK体系中新增的一个工具,它属于一个轻量的日志采集器,以上我们使用的日志采集工具是logstash,但是logstash占用的资源比较大,没有beat ...
- ELK快速入门(四)filebeat替代logstash收集日志
ELK快速入门四-filebeat替代logstash收集日志 filebeat简介 Filebeat是轻量级单用途的日志收集工具,用于在没有安装java的服务器上专门收集日志,可以将日志转发到log ...
- ELK快速入门(三)logstash收集日志写入redis
ELK快速入门三-logstash收集日志写入redis 用一台服务器部署redis服务,专门用于日志缓存使用,一般用于web服务器产生大量日志的场景. 这里是使用一台专门用于部署redis ,一台专 ...
- ELK快速入门(二)通过logstash收集日志
ELK快速入门二-通过logstash收集日志 说明 这里的环境接着上面的ELK快速入门-基本部署文章继续下面的操作. 收集多个日志文件 1)logstash配置文件编写 [root@linux-el ...
- ELK之logstash收集日志写入redis及读取redis
logstash->redis->logstash->elasticsearch 1.安装部署redis cd /usr/local/src wget http://download ...
- ELK之filebeat、logstash多个topic配置
启动多个进程收集日志.直接output到kafka,output到不同的topiccat filebeat.ymlfilebeat.prospectors:- input_type: log path ...
- ELKStack入门篇(三)之logstash收集日志写入redis
1.部署Redis 1.1.下载redis [root@linux-node2 ~]# wget http://download.redis.io/releases/redis-4.0.6.tar.g ...
- 使用logstash收集日志的可靠性验证
实时计算里,需要对日志实时收集,logstash可以做到.目前的版本是1.4.2,官方文档在http://www.logstash.net/docs/1.4.2/,里面有详细的配置说明,使用也很简单. ...
- Filebeat使用模块收集日志
1.先决条件 在运行Filebeat模块之前: 安装并配置Elastic stack 完成Filebeat的安装 检查Elasticsearch和Kibana是否正在运行,以及Elasticsearc ...
随机推荐
- 访问tomcat出现HTTP Status 500 - java.lang.IllegalStateException: No output folder
问题:tomcat分为安装版和解压缩版,解压缩版如果解压到安装盘,在浏览器中访问http://localhost:8080,可能会出现500错误,错误提示如下: localhost:8080 jav ...
- 配置Spring.NET
先引入关键的程序集 Common.Logging.dll Spring.Core.dll 在配置文件配置中: <configSections> ...... <sectionGrou ...
- hdu3374 String Problem 最小最大表示法 最小循环节出现次数
#include <iostream> #include <cstring> #include <cstdio> using namespace std; int ...
- 【Edit Distance】cpp
题目: Given two words word1 and word2, find the minimum number of steps required to convert word1 to w ...
- ogre3D学习基础12 --- 让机器人动起来(移动模型动画)
学了那么长时间,才学会跑起来.My Ogre,动起来. 第一,还是要把框架搭起来,这里我们用到双端队列deque,前面已经简单介绍过,头文件如下: #include "ExampleAppl ...
- Python+Selenium练习篇之20-处理Alert弹窗
本文来介绍如何通过Selenium方法去处理网页Alert弹窗,和处理iframe类似,都是通过switch_to方法.这里还是没有找到合适的alert弹窗网站,我们就自己创建一个吧,前面文章介绍了如 ...
- linux/mac下的配置自定义命令alias
linux/mac下的自定义命令alias,并保存别名使其永久生效(重启不会失效) 在做开发每次提交代码的命令都是一长串参数,不想去记,于是可以使用alias命令来解决这个问题:alias aComm ...
- Leetcode 503.下一个更大元素
下一个更大元素 给定一个循环数组(最后一个元素的下一个元素是数组的第一个元素),输出每个元素的下一个更大元素.数字 x 的下一个更大的元素是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你 ...
- Python面向对象之类的继承(2)
1.除了封装,Python面向对象还有继承这一功能,如下代码,这是简单的继承功能. class Animal: def chi(self): print(self.name+' 吃') def he( ...
- 单元测试-mock基础
本文较短,只是备份一下mock的几个常用基础例子方便复习 目录 介绍mock的使用例子 maven资源 <dependency> <groupId>org.mockito< ...