利用RELK进行日志收集
利用RELK进行日志收集
发布时间:April 3, 2018 // 分类:运维工作,开发笔记,python // No Comments
前不久在做应急的总是遇到要求对日志进行分析溯源,当时就想到如果对常见的日志类进行解析后统一入库处理,然后在对相关的IP/URL进行统计归纳。对于溯源之类的很是方便。想到数据量比较大,又要便于分析,就想到了ELK.
搭建一套基于elk的日志分析系统。
系统centos 内存4G 双核
大概架构如此
1.elk搭建
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.rpmwget https://artifacts.elastic.co/downloads/kibana/kibana-6.4.2-x86_64.rpmwget https://artifacts.elastic.co/downloads/logstash/logstash-6.4.2.rpmrpm -ivh elasticsearch-6.4.2.rpm sudo chkconfig --add elasticsearch/etc/init.d/elasticsearch startrpm -ivh kibana-6.4.2-x86_64.rpm /etc/init.d/kibana startsudo chkconfig --add kibanarpm -ivh logstash-6.4.2.rpmcd /usr/share/logstashln -s /etc/logstash ./config |
整个elk系统搭建好了,安装redis作为agent收集日志来作为logstash的输入源
wget http://download.redis.io/redis-stable.tar.gztar zxf redis-stable.tar.gz cd redis-stablemake && make install |
修改redis.conf。
bind 0.0.0.0protected-mode nodaemonize yesmaxclients 1000000 |
启动redis
sudo redis.conf /etc/redis-server /etc/redis.conf |
Logstash配置文件是JSON格式,放在/etc/logstash/conf.d 。 该配置由三个部分组成:输入,过滤器和输出。
input 数据输入端,可以接收来自任何地方的源数据。file:从文件中读取syslog:监听在514端口的系统日志信息,并解析成RFC3164格式。redis:从redis-server list 中获取beat:接收来自Filebeat的事件Filter 数据中转层,主要进行格式处理,数据类型转换、数据过滤、字段添加,修改等,常用的过滤器如下。grok: 通过正则解析和结构化任何文本。Grok 目前是logstash最好的方式对非结构化日志数据解析成结构化和可查询化。logstash内置了120个匹配模式,满足大部分需求。mutate: 在事件字段执行一般的转换。可以重命名、删除、替换和修改事件字段。drop: 完全丢弃事件,如debug事件。clone: 复制事件,可能添加或者删除字段。geoip: 添加有关IP地址地理位置信息。output 是logstash工作的最后一个阶段,负责将数据输出到指定位置,兼容大多数应用,常用的有:elasticsearch: 发送事件数据到 Elasticsearch,便于查询,分析,绘图。file: 将事件数据写入到磁盘文件上。mongodb:将事件数据发送至高性能NoSQL mongodb,便于永久存储,查询,分析,大数据分片。redis:将数据发送至redis-server,常用于中间层暂时缓存。graphite: 发送事件数据到graphite。http://graphite.wikidot.com/statsd: 发送事件数据到 statsd。 |
编写logstash的配置文件。对所有的数据全盘接受,感谢Mosuan师傅的指导。
input { redis { host => '127.0.0.1' port => 6379 password => 'password' data_type => 'list' key => 'logstash:redis' }}output { elasticsearch { hosts => localhost } stdout { codec => rubydebug }} |

Logpara
利用RELK进行日志收集的更多相关文章
- 日志收集之rsyslog to kafka
项目需要将日志收集起来做存储分析,数据的流向为rsyslog(收集) -> kafka(消息队列) -> logstash(清理) -> es.hdfs: 今天我们先将如何利用rsy ...
- 利用ELK构建一个小型的日志收集平台
利用ELK构建一个小型日志收集平台 伴随着应用以及集群的扩展,查看日志的方式总是不方便,我们希望可以有一个便于我们查询及提醒功能的平台:那么首先需要剖析有几步呢? 格式定义 --> 日志收集 - ...
- 【转】Flume日志收集
from:http://www.cnblogs.com/oubo/archive/2012/05/25/2517751.html Flume日志收集 一.Flume介绍 Flume是一个分布式.可 ...
- ELK+kafka构建日志收集系统
ELK+kafka构建日志收集系统 原文 http://lx.wxqrcode.com/index.php/post/101.html 背景: 最近线上上了ELK,但是只用了一台Redis在 ...
- [转载] 一共81个,开源大数据处理工具汇总(下),包括日志收集系统/集群管理/RPC等
原文: http://www.36dsj.com/archives/25042 接上一部分:一共81个,开源大数据处理工具汇总(上),第二部分主要收集整理的内容主要有日志收集系统.消息系统.分布式服务 ...
- 用fabric部署维护kle日志收集系统
最近搞了一个logstash kafka elasticsearch kibana 整合部署的日志收集系统.部署参考lagstash + elasticsearch + kibana 3 + kafk ...
- 基于Flume的美团日志收集系统(二)改进和优化
在<基于Flume的美团日志收集系统(一)架构和设计>中,我们详述了基于Flume的美团日志收集系统的架构设计,以及为什么做这样的设计.在本节中,我们将会讲述在实际部署和使用过程中遇到的问 ...
- 基于Flume的美团日志收集系统(一)架构和设计
美团的日志收集系统负责美团的所有业务日志的收集,并分别给Hadoop平台提供离线数据和Storm平台提供实时数据流.美团的日志收集系统基于Flume设计和搭建而成. <基于Flume的美团日志收 ...
- Flume-NG + HDFS + HIVE 日志收集分析
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
随机推荐
- Serializable 和 parcelable的实现和比较
首先这个两个接口都是用来序列化对象的 但是两者在性能和应用场合上有区别,parcelable的性能更好,但是在需要保存或者网络传输的时候需要选择Serializable因为parcelable版本在不 ...
- Ros问题汇总
1.ImportError: No module named beginner_tutorials.srv 解决: cd ~/catkin_ws $ source devel/setup.bash $ ...
- head first 设计模式 观察者模式
Head first 设计模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会受到通知并自动更新. 让主题与观察者之间松耦合 大话设计模式:定义了一种一对多的依赖关 ...
- p4570 [BJWC2011]元素
传送门 分析 对法力值从大到小排序然后对编号跑线性基即可 代码 #include<iostream> #include<cstdio> #include<cstring& ...
- for与break的用法
# Auther: Aaron Fan age_of_oldboy = 56 #执行3次循环for i in range(3): guess_age = int(input("猜一下oldb ...
- SDUT 3399 数据结构实验之排序二:交换排序
数据结构实验之排序二:交换排序 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 冒泡排序和快 ...
- STL源码剖析--迭代器(转)
一.为什么需要traits编程技术 前面说了很多关于traits的光荣事迹,但是却一直没有介绍traits究竟是个什么东西,究竟是用来干什么的?traits在英文解释中就是特性,下面将会引入trait ...
- 判断wifi连接是否可用
/*** 判断当前连接方式是否是WIFI连接* * @param context* @return*/private static boolean isWifiConnected(Context co ...
- signalR之java client的websocket BUG处理
最近在用SignalR,服务端已经写好(老铁,没毛病,很稳),然后有坑的是我还得写App端,那就撸吧,java也不是什么很难的东西.奈何坑多(已经踩了一波android的控件bug),这次遇到了MS的 ...
- 认识data-xxx 的属性
认识data-xxx 的属性 如, 在bootstrap之data-toggle="table", 不加这个属性,就不能实现框架自带的js效果. 1.它属于 HTML5 的 dat ...