日志收集之filebeat
一,软件介绍
Filebeat是一个轻量级日志传输Agent,可以将指定日志转发到Logstash、Elasticsearch、Kafka、Redis等中。Filebeat占用资源少,而且安装配置也比较简单,Filebeat附带了内部模块(auditd、Apache、Nginx、System和MySQL),这些模块简化了普通日志格式的聚集、解析和可视化。结合使用基于操作系统的自动默认设置,使用Elasticsearch Ingest Node的管道定义,以及Kibana仪表盘来实现这一点。
二,部署安装
本机测试环境
存在 redis 数据库,减轻压力
nginx web服务器
下载filebeat
- wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.6.-linux-x86_64.tar.gz
- tar zxvf filebeat-6.6.-linux-x86_64.tar.gz
- ln -s filebeat-6.6.-linux-x86_64 filebeat
启动命令filebeat
三,配置文件
编写配置文件
- filebeat.inputs:
- - type: log
- enabled: true
- paths:
- - /var/log/*.log
- - /var/log/messages
#配置收集的日志路径
- /application/nginx/logs/*.log- exclude_lines: ['^DBG',"^$"] ##排除的内容,正则排除
- document_type: filesystem-log-5612
#设置类型
- filebeat.config.modules:
- path: ${path.config}/modules.d/*.yml
- reload.enabled: false
- setup.template.settings:
- index.number_of_shards:
- setup.kibana:
- output.file:
- path: "/tmp"
- filename: "text.txt"
测试启动服务
- ./filebeat -e -c filebeat.yml -d "Publish"
测试连接logstash连接
已经存在日志文件了
后台启动:
- nohup ./filebeat -e -c filebeat.yml >/dev/null >& &
启动后立刻查看日志
- tail -f /tmp/text.txt
再终端输入:
- echo "666666666666666" >> /var/log/messages
数据已经记录了
四,连接redis
配置前保证redis局域网能够连接!!
结束进程: kill 对应的pid即可
配置文件重新配置:
- filebeat.inputs:
- - type: log
- enabled: true
- paths:
- - /var/log/*.log
- - /var/log/messages
- - /application/nginx/logs/*.log
- exclude_lines: ['^DBG',"^$"]
- document_type: filesystem-log-
- filebeat.config.modules:
- path: ${path.config}/modules.d/*.yml
- reload.enabled: false
- setup.template.settings:
- index.number_of_shards:
- setup.kibana:
- output.redis:
- hosts: "10.0.0.7"
- db: "1"
- port: "6379"
- password: "123"
- key: "filesystem-log-5612"
启动
- nohup ./filebeat -e -c filebeat.yml > /dev/null >&
再redis上查看数据
- [root@elk-master config]# redis-cli -h 10.0.0.7 -p 6379 -a 123
- 10.0.0.7:> keys *
- (empty list or set)
- 10.0.0.7:> keys *
- (empty list or set)
- 10.0.0.7:> select
- OK
- 10.0.0.7:[]> KEYS * 查看内容
- ) "filesystem-log-5612"
- 10.0.0.7:[]> llen filesystem-log-5612 里面文件长度
- (integer)
- 10.0.0.7:[]> llen filesystem-log-
- (integer)
- 10.0.0.7:[]> llen filesystem-log-
- (integer)
- 10.0.0.7:[]> llen filesystem-log-
- (integer)
- 10.0.0.7:[]> llen filesystem-log-
- (integer)
- 10.0.0.7:[]> KEYS *
- ) "filesystem-log-5612"
- 10.0.0.7:[]>
五, logstash节点拉取数据
logstash配置文件:
- input {
- redis {
- data_type => "list"
- host => "10.0.0.7"
- db => "1"
- port => "6379"
- password => "123"
- key => "filesystem-log-5612"
- }
- }
- output {
- elasticsearch {
- hosts => ["10.0.0.223:9200"]
- index => "filesystem-log-5612-%{+YYYY.MM.dd}"
- }
- }
语法检测:
- /elk/logstash/bin/logstash -f /elk/logstash/config/logstash.conf -t
没问题.启动logstash
- /elk/logstash/bin/logstash -f /elk/logstash/config/logstash.conf &
成功
六,head查看
七, >>>>>>>
- 为了监控Redis的队列长度,可以写一个监控脚本对redis进行监控,并增加zabbix报警
- [root@elk-master ~]# vim redis-test.py
- #!/usr/bin/env python
- import redis
- def redis_conn():
- pool=redis.ConnectionPool(host="10.0.0.7",port=,db=,password=)
- conn = redis.Redis(connection_pool=pool)
- data = conn.llen('filesystem-log-5612')
- print(data)
- redis_conn()
- [root@elk-master ~]# python redis-test.py #当前redis队列长度为0
日志收集之filebeat的更多相关文章
- 快速搭建应用服务日志收集系统(Filebeat + ElasticSearch + kibana)
快速搭建应用服务日志收集系统(Filebeat + ElasticSearch + kibana) 概要说明 需求场景,系统环境是CentOS,多个应用部署在多台服务器上,平时查看应用日志及排查问题十 ...
- 日志分析平台ELK之日志收集器filebeat
前面我们了解了elk集群中的logstash的用法,使用logstash处理日志挺好的,但是有一个缺陷,就是太慢了:当然logstash慢的原因是它依赖jruby虚拟机,jruby虚拟机就是用java ...
- 日志收集之filebeat使用介绍
此系列文章一共分为三部分,分为filebeat部分,logstash部分,es部分.这里会按照每天几百亿条的数据量来考虑,去设计.部署.优化这个日志系统,来最大限度的利用资源,并达到一个最优的性能.本 ...
- MySQL日志收集之Filebeat和Logstsh的一键安装配置(ELK架构)
关于ELK是什么.做什么用,我们不在此讨论.本文重点在如何实现快速方便地安装logstash和filebeat组件,特别是在近千台DB Server的环境下(为了安全保守,公司DB Server 目前 ...
- elk 日志收集 filebeat 集群搭建 php业务服务日志 nginx日志 json 7.12版本 ELK 解决方案
难的不是技术,难的是业务.熟悉业务流程才是最难的. 其实搜索进来的每一个人的需求不一样,希望你能从我的这篇文章里面收获到. 建议还是看官方文档,更全面一些. 一.背景 1,收集nginx acces ...
- ELK之生产日志收集构架(filebeat-logstash-redis-logstash-elasticsearch-kibana)
本次构架图如下 说明: 1,前端服务器只启动轻量级日志收集工具filebeat(不需要JDK环境) 2,收集的日志不进过处理直接发送到redis消息队列 3,redis消息队列只是暂时存储日志数据,不 ...
- 轻松上手Fluentd,结合 Rainbond 插件市场,日志收集更快捷
以往有篇文章介绍 EFK(Kibana + ElasticSearch + Filebeat)的插件日志收集.Filebeat 插件用于转发和集中日志数据,并将它们转发到 Elasticsearch ...
- FILEBEAT+ELK日志收集平台搭建流程
filebeat+elk日志收集平台搭建流程 1. 整体简介: 模式:单机 平台:Linux - centos - 7 ELK:elasticsearch.logstash.kiban ...
- 日志实时收集之FileBeat+Kafka
之前,我们的某一个业务用于实时日志收集处理的架构大概是这样的: 在日志的产生端(LogServer服务器),都部署了FlumeAgent,实时监控产生的日志,然后发送至Kafka.经过观察,每一个 ...
随机推荐
- Java Java7处理异常新特性
- Java读写配置文件prop.properties
Java读写配置文件prop.properties @Test public void fun() throws IOException{ Properties prop=new Properties ...
- 20165219 学习基础与C语言基础调查
学习基础与C语言基础调查 你有什么技能比大多数人要好? 因为不知道其他人的具体情况,我只能说,我比较擅长钢琴,素描,国画,这也是小时候掌握的比较好的技能. 针对这个技能的获取有什么成功的经验 小时候学 ...
- lower_bound下确界
//lower_bound用于找到首个大于等于某个值的元素 #include<algorithm> #include<iostream> using namespace std ...
- CSS3 transition 属性——逐渐变慢/匀速/加速/减速/加速然后减速
ease: 1.ease:(逐渐变慢)默认值 2.linear:(匀速) 3.ease-in:(加速) 4.ease-out:(减速) 5.ease-in-out:(加速然后减速) 6.cubic-b ...
- 串的模式之kmp算法实践题
给定两个由英文字母组成的字符串 String 和 Pattern,要求找到 Pattern 在 String 中第一次出现的位置,并将此位置后的 String 的子串输出.如果找不到,则输出“Not ...
- 【转】C#中的combobox里DropDownStyle
源地址:https://blog.csdn.net/cf643487053/article/details/54016822 C#中的combobox控件里DropDownStyle有三种选项 Sim ...
- Django 使用第三方服务发送电子邮件
在 Django 网站中使用 mailgun 的邮件收发服务. 1.在 mailgun 官网上注册个账号(免费,免费账号每个月有10000条收发邮件的服务,对我来说已经完全够用了),注册完成后界面如图 ...
- 【离散数学】 SDUT OJ 哪款赛车最佳?
哪款赛车最佳? Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 四名专家对四款赛车进行 ...
- Hive内置函数和自定义函数的使用
一.内置函数的使用 查看当前hive版本支持的所有内置函数 show function; 查看某个函数的使用方法及作用,比如查看upper函数 desc function upper; 查看upper ...