flume+elasticsearch日志收集分析
2019独角兽企业重金招聘Python工程师标准>>>
由于不同版存在不兼容问题也试了好多次,网上找别人写的博客版本最后终于成功了。
flume:1.6.0
elasticsearch:1.7.6
kibana:4.1.9
从elasticsearch的lib目录拷贝elasticsearch-1.7.6.jar,lucene-core-4.10.4.jar到flume的lib目录,我们服务器使用的是logcxx和spdlog,使用syslog方式收集日志,(由于spdlog的syslog不能写到远程服务器,自己要改下源码用udp发送出去就行了)。
日志内容:<15>(Balance)[2016-12-15 14:53:28,610][DEBUG] ServerName[Entrance] statistics_total: total_UserCount = [cur_total=11,max_total=0],
红色:syslog用日志级别和日志类型生成的一个数字(自己修改spdlog的syslog需要在一条日志前加上尖括号和这个数字)
绿色:下面正则表达式要过滤出来的服务器名字或者模块名字
蓝色:时间,下面也会转换成时间戳
褐色:级别
黑色:内容
logcxx配置:
log4j.appender.RootSyslog=org.apache.log4j.net.SyslogAppender
log4j.appender.RootSyslog.SyslogHost=127.0.0.1 #flume地址
log4j.appender.RootSyslog.Facility=USER
log4j.appender.RootSyslog.Append=true
log4j.appender.RootSyslog.layout=org.apache.log4j.PatternLayout
log4j.appender.RootSyslog.layout.ConversionPattern=(服务器名字或者模块)[%d][%p] %m%n
flume配置:
agent.sources = sysSource
agent.channels = memoryChannel
agent.sinks = k1
#syslog source
agent.sources.sysSource.type = syslogudp
agent.sources.sysSource.bind = 0.0.0.0
agent.sources.sysSource.port = 514
agent.sources.sysSource.channels = memoryChannel
agent.sources.sysSource.interceptors = i1 i2 i3
#时间
agent.sources.sysSource.interceptors.i1.type = org.apache.flume.interceptor.TimestampInterceptor$Builder
#服务器IP
agent.sources.sysSource.interceptors.i2.type = org.apache.flume.interceptor.HostInterceptor$Builder
agent.sources.sysSource.interceptors.i2.hostHeader = host
#正则表达式过滤出自定义圆括号中的字符串作为服务器类型名
agent.sources.sysSource.interceptors.i3.type=org.apache.flume.interceptor.RegexExtractorInterceptor$Builder
agent.sources.sysSource.interceptors.i3.regex = ((?<=\\()[^\\)]+)
agent.sources.sysSource.interceptors.i3.serializers = s1
agent.sources.sysSource.interceptors.i3.serializers.s1.name = server_type
#ElasticSearchSink
agent.sinks.k1.type = org.apache.flume.sink.elasticsearch.ElasticSearchSink
agent.sinks.k1.channel = memoryChannel
#elasticsearch地址
agent.sinks.k1.hostNames = 10.105.92.225:9300
#elasticsearch索引名字
agent.sinks.k1.indexName = server_log
agent.sinks.k1.batchSize = 100
agent.sinks.k1.indexType = log
#这个要和elasticsearch名字一样
agent.sinks.k1.clusterName = log-es
agent.sinks.k1.serializer = org.apache.flume.sink.elasticsearch.ElasticSearchLogStashEventSerializer
#memory channel
agent.channels.memoryChannel.type = memory
agent.channels.memoryChannel.capacity = 10000
agent.channels.memoryChannel.transacionCapacity = 100
agent.channels.memoryChannel.byteCapacityBufferPercentage = 20
agent.channels.memoryChannel.byteCapacity = 10240000
elasticsearch配置:
cluster.name: log-es
node.name: "log-es01"
node.master: true
node.data: true
可以给elasticsearch配置kibana和head插件
转载于:https://my.oschina.net/u/1411528/blog/806432
flume+elasticsearch日志收集分析相关推荐
- 基于ELK打造强大的日志收集分析系统(springboot2+logback+logstash+elasticsearch+kibana)
前言 上一代的日志分析系统springboot+log4j+flume+kafka仿佛还是昨天,现在已经流行起了新一代的springboot2+logback+logstash+elasticsear ...
- Flume 海量日志收集利器
Flume 海量日志收集利器 关于日志收集 服务器日志收集 服务器日志是大数据系统中最主要的数据来源之一 服务器日志可能包含的信息 访问信息 系统信息 其他业务信息 基于服务器日志的应用 业务仪表盘: ...
- log_pipe日志收集分析系统介绍
一.简要介绍 log_pipe是一个高性能的日志收集分析系统,从13年11月第一版上线以来,已经在阿里内部有了广泛的使用,目前在日志最为繁忙的CDN节点内部已经部署超过20个节点,用于对CDN的访问日 ...
- Flume-NG + HDFS + HIVE 日志收集分析 | EyeLu技术Blog
Flume-NG + HDFS + HIVE 日志收集分析 | EyeLu技术Blog: "" (Via.) 转载于:https://www.cnblogs.com/devops/ ...
- 一套标准的ASP.NET Core容器化应用日志收集分析方案
点击上方蓝字 给一个关注吧 讲故事 关注我公众号的朋友,应该知道我写了一些云原生应用日志收集和分析相关的文章,其中内容大多聚焦某个具体的组件: 超级有用的TraceId,快点用起来吧! 如何利用NLo ...
- flume分布式日志收集系统操作
1.flume是分布式的日志收集系统,把收集来的数据传送到目的地去. 2.flume里面有个核心概念,叫做agent.agent是一个java进程,运行在日志收集节点. 3.agent里面包含3个核心 ...
- ElasticStack搭建Java日志收集分析,并将其构建docker镜像-学习笔记
参考视频(ElasticStack)https://www.bilibili.com/video/av53652729 (Docker) https://www.bilibili. ...
- ELK (一)部署ELK+Filebeat日志收集分析系统
说明:此安装流程只适用于8.0.0以下的版本 1. ElasticSearch 部署 1.1 下载ElasticSearch的wget指令: wget https://artifacts.elasti ...
- 基于Nginx、Kafka日志收集分析
项目环境: 8台服务器(2G,2核) Centos7, Nginx, Keepalived, Filebeat, Kafka, Zookeeper, MariaDB 项目描述: 收集用户访问Ngi ...
最新文章
- vue子组件调用父组件内的方法
- mysql数据库配置文件my.ini
- 计算机中减法英语,计算机中的减法运算
- 【线上圆桌整理 - 微软】后疫情时代现代化办公新趋势
- PyQt4设置窗口左上角的小图标
- Java把时间毫秒数转换成日期和时间
- PyTorch: 各种图像格式相互转化
- 2022美赛M奖经验总结(4)图文优化篇
- 十大常用机器学习算法总结(持续完善)
- PayPal支付配置
- Pyqt5 遇到的超级无敌大坑!clicked.connect后面的connect出现下划线 计算机积极拒绝问题
- pytracking系列跟踪算法的配置(LWL, KYS, PrDiMP, DiMP and ATOM Trackers)(Ubuntu版本)
- 小程序即时配送配置指南
- weblogic12c重置密码linux,weblogic 12c忘记domain密码重置方法
- 门限签名(1)——秘密共享
- SAS(五)建立SAS数据集的方法及导出数据
- 使用python判断一个数是否为素数
- spring-xxx-xxx-0.0.1-SNAPSHOT.jar中没有主清单属性完美解决
- 深入了解C语言和C++哪个更难?
- 【前端三分钟】利用Javascript实现打字效果
热门文章
- java设计模式之设计原则④接口隔离原则
- TensorFlow: Could not load requested Qt binding.
- 三维重建:闭环检测-相机闭环
- 『中级篇』Docker Cloud自动构建 Docker image(55)
- bootstrap File Input 多文件上传插件使用记录(二)删除原文件
- 回溯法求解N皇后问题(Java实现)
- 大家好,给大家介绍一下,这是我的智能伙伴…..
- Python之Idel利器jupyter notebook
- TextBox的智能感知
- 荣幸参加 微软 Teched 2012 会议