最近火的不能再火的日志框架就是ELK,其中E(Elasticsearch)表示日志存储,L(Logstash)表示日志收集,K(kibana)表示日志的UI界面,用来查询和分析,而其中的L可以使用Fluentd来代替,并且以上架构都可以通过docker来进行快速的部署. 它们的工作流程 fluentd系统有输入和输出,输入对应我们的应用程序,输出对应咱们的ES存储系统,在.net平台上,如果希望把日志发到fluentd,有三种方式,下面分别简单说一下: http方式 tcp方式 客户端c/s方式…
本文章将会继承上一篇文章,主要讲通过工具来进行日志的收集与发送,<ELK系列~NLog.Targets.Fluentd到达如何通过tcp发到fluentd> Nxlog是一个日志收集工具,它将系统日志,或者指定的日志文件,统配符文件找到,然后加工,最后发送到目标位置.而目标位置有很多种,如文件系统,fluentd系统等,下面我们介绍一个使用场景,也是经常涉及到的场景. log4产生日期,日期文件名,统一后缀,按日志级别命名 nxlog工具,配置,启动,发送数据 fluentd配置,接受数据,打…
前几天我写了几篇关于ELK日志收集,存储和分析的文章: ELK系列~NLog.Targets.Fluentd到达如何通过tcp发到fluentd ELK系列~Nxlog日志收集加转发(解决log4日志换行导致json转换失败问题) ELK系列~log4-nxlog-Fluentd-elasticsearch写json数据需要注意的几点 今天主要说一个日志收集里的多输入端(收集多个网站的日志)的实现方法. 对于日志的收集与转发来说,nxlog可以说很不错,异步将本地日志上传到对象的服务端,而且支持…
Fluentd是一个日志收集工具,有输入端和输出端的概念,前者主要是日志的来源,你可以走多种来源方式,http,forward,tcp都可以,后者输出端主要指把日志进行持久化的过程,你可以直接把它持久化到elasticsearch里,也可以直接在控制台输出,这看你如何配置了,更多基础配置可以看大叔这篇文章<ELK系列~对fluentd参数的理解>. Fluentd输入端的小知识 今天写这篇文章主要是因为在实际工作中遇到的问题,我们为了查询方便把日志定义成了json格式,当你的输入日志不是jso…
这段时候一直在研究ELK框架,主要集成在对fluentd和nxlog的研究上,国内文章不多,主要看了一下官方的API,配合自己的理解,总结了一下,希望可以帮到刚入行的朋友们! Fluentd(日志收集与过滤,server) Fluentd是一个免费,而且完全开源的日志管理工具,简化了日志的收集.处理.和存储,你可以不需要在维护编写特殊的日志处理脚本.Fluentd的性能已经在各领域得到了证明:目前最大的用户从5000+服务器收集日志,每天5TB的数据量,在高峰时间处理50,000条信息每秒.它可…
经验与实践 前两篇文章里我们介绍了nxlog的日志收集和转发<ELK系列~Nxlog日志收集加转发(解决log4日志换行导致json转换失败问题)>,今天我们主要总结一下,在与log4和fluentd及elasticsearch配合工作时需要注意的几个点,这几个点也是我们经常遇到的坑,希望可以帮到大家!我们从日志产生端log4开始说. log4需要注意的,编码与时间戳格式 nxlog需要注意output里对内容处理 fluentd需要注意类型和format的规定 1 log4产生日志,格式必须…
1.基本下载安装 #按照ELK系列一博客安装启动即可,没有大坑,注意一下权限即可 chmod -R 777 ./elasticsearch #此外没有java的,注意安装下JDK,我这次部署的环境是CentOS-7.x,使用yum安装 sudo yum -y list java* sudo yum install java-1.8.0-openjdk.x86_64 2.集群配置: 2.1.配置过程 编辑好elasticseach-1的配置之后,复制出elasticsearch-2,然后修改结点名…
preface logstash--> redis --> logstash --> es这套架构在讲究松耦合关系里面是最简单的,架构图如下: 解释下这个架构图的流程 首先前端logstash读取apache的日志(input读取).然后放到redis的db里面(output存入).存储形式为列表形式存放 后端logstash从redis读取日志内容(input读取),从前端logstash指定的库里面读取指定的key.读取之后filter(filter-grok)过滤.然后传送到es上…
preface 说道分析日志,我们知道的采集方式有2种: 通过grok在logstash的filter里面过滤匹配. logstash --> redis --> python(py脚本过滤匹配) --> ES 第一种方式是不怎么推荐使用的,除非是在日志量比较小的场景才推荐使用.因为grok非常影响性能的,且不够灵活,除非你很懂ruby.第二种方式是 我们一直推荐使用的架构,讲究松耦合关系. 下面我们还是说说第一种方式,然后再说第二种方式. grok模块是作用在filter里面的,它是个…
preface tcp模块的使用场景如下: 有一台服务器A只需要收集一个日志,那么我们就可以不需要在这服务器上安装logstash,我们通过在其他logstash上启用tcp模块,监听某个端口,然后我们在这个服务器A把日志通过nc发送到logstash上即可. tcp模块的使用 在linux-node2上操作我们参考官网的资料:https://www.elastic.co/guide/en/logstash/2.3/plugins-inputs-tcp.html下面就配置下这个logstash的…
preface rsyslog是CentOs系统自带的的一个日志工具,那么我们就配置logstash来接受rsyslog的日志. logstash的syslog模块 linux-node2上操作logstash采集rsyslog发过来的日志,需要通过syslog模块来接受,这个模块的官网资料是:https://www.elastic.co/guide/en/logstash/2.3/plugins-inputs-syslog.html下面我们就动手配置下logstash的配置文件 [root@l…
preface 我们都搭建了ELK系统,且日志也能够正常收集的时候,那么就配置下kibana.我们可以通过kibana配置柱状图,趋势图,统计图,圆饼图等等各类图.下面就拿配置统计图和柱状图为例,结合dashboard来说说如何配置. 选择柱状图 选择Nginx日志 时间的话根据自己需求选择,我这里是选择这一周的.然后选择X轴,然后点击aggregation(聚合),field(字段),选择lan_ip,这里是实验环境,所以选择的是lan_ip,如果是线上的环境,可以换成user_ip,这些字段…
preface 上回说道了elk的安装以及kibana的简单搜索语法,还有logstash的input,output的语法,但是我们在使用中发现了一个问题,我们知道,elk是每一行为一个事件,像Java这类的输出日志,一个事件占用了好几行,导致elk在处理日志的时候,不能够识别多行日志为一个事件,所以我们在kibana上看的时候,明明是一个事件的日志,却拆分了好几段显示,所以我们针对这类一个事件占用多行的日志,得使用elk另一个模块,multiline模块,这个模块能够合并多行当作一个事件呢,使…
preface 我们每天都要查看服务器的日志,一方面是为了开发的同事翻找日志,另一方面是巡检服务器查看日志,而随着服务器数量以及越来越多的业务上线,日志越来越多,人肉运维相当痛苦了,此时,参考现在非常流行的日志分析工具,搭建了一套ELK日志分析系统.下面就说说ELK,ELK安装过程以及如何使用. 了解它 ELK全称其实三个软件组合而成的,ElasticSearch + Logstash + Kibana. logstash负责收集日志的. elasticsearch用来存储和搜索日志的. kib…
转自 elk系列3之通过json格式采集Nginx日志 - 温柔易淡 - 博客园http://www.cnblogs.com/liaojiafa/p/6158245.html preface 公司采用的LNMP平台,跑着挺多nginx,所以可以利用elk好好分析nginx的日志.下面就聊聊它吧. 下面的所有操作都在linux-node2上操作 安装Nginx nginx是开始,所以你得安装一个Nginx,安装方法采用yum安装,yum源:http://mirrors.aliyun.com/epe…
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL/MDX及TCP/IP端口介绍   前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 本节列出了SAP HANA平台的传输控制协议/ Internet协议(TCP / IP)端口. SAP HANA SQL / MDX访问…
ELK安装好后,我们现在.net Core中使用一下,大体思路就是结合NLog日志组件将数据写入ELK中,其它语言同理. ELK的安装还是有些复杂的,我们也可以在Docker中安装ELK:docker run -it --rm -p 9200:9200 -p 5601:5601 --name esk nshou/elasticsearch-kibana 这条命令执行完成后,我们就在本地运行了elasticsearch和Kibana,没有错误的话我们就可以通过localhost:5601直接访问K…
preface 我们都搭建了ELK系统,且日志也能够正常收集的时候,那么就配置下kibana.我们可以通过kibana配置柱状图,趋势图,统计图,圆饼图等等各类图.下面就拿配置统计图和柱状图为例,结合dashboard来说说如何配置. 选择柱状图 选择Nginx日志 时间的话根据自己需求选择,我这里是选择这一周的.然后仙则X轴,然后点击aggregation(聚合),field(字段),选择lan_ip,这里是实验环境,所以选择的是lan_ip,如果是线上的环境,可以换成user_ip,这些字段…
preface 公司采用的LNMP平台,跑着挺多nginx,所以可以利用elk好好分析nginx的日志.下面就聊聊它吧. 下面的所有操作都在linux-node2上操作 安装Nginx nginx是开始,所以你得安装一个Nginx,安装方法采用yum安装,yum源:http://mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm 下面的所有操作都在linux-node2上操作 [root@linux-node2 ~]# rpm -vh…
preface 上回说道了elk的安装以及kibana的简单搜索语法,还有logstash的input,output的语法,但是我们在使用中发现了一个问题,我们知道,elk是每一行为一个事件,像Java这类的输出日志,一个事件占用了好几行,导致elk在处理日志的时候,不能够识别多行日志为一个事件,所以我们在kibana上看的时候,明明是一个事件的日志,却拆分了好几段显示,所以我们针对这类一个事件占用多行的日志,得使用elk另一个模块,multiline模块,这个模块能够合并多行当作一个事件呢,使…
preface 我们每天都要查看服务器的日志,一方面是为了开发的同事翻找日志,另一方面是巡检服务器查看日志,而随着服务器数量以及越来越多的业务上线,日志越来越多,人肉运维相当痛苦了,此时,参考现在非常流行的日志分析工具,搭建了一套ELK日志分析系统.下面就说说ELK,ELK安装过程以及如何使用. 了解它 ELK全称其实三个软件组合而成的,ElasticSearch + Logstash + Kibana. logstash负责收集日志的. elasticsearch用来存储和搜索日志的. kib…
root权限 docker版本:1.13.1 ELK版本:6.4.3 项目中均关闭X-Pack 一.安装Elasticsearch 新建elasticsearch目录,并再其下新建文件config/elasticsearch.yml,文件内容如下: network.host: 0.0.0.0 xpack: ml.enabled: false monitoring.enabled: false security.enabled: false watcher.enabled: false 用于配置e…
1.ELK架构中Logstash的位置: 1.1.小规模集群部署(学习者适用的架构) 简单的只有Logstash.Elasticsearch.Kibana,由Logstash收集日志或者流量信息,过滤后由Elasticsearch存储,前台kibana进行展示.搜索.聚合.适合小规模部署或者学习使用. 1.2.大规模集群部署 由Logstash进行最初的信息收集和处理,之后传入消息队列(可以是kafka.redis等),然后又Logstash从消息队列中再读取信息处理后存入Elasticsear…
1.定义模板创建索引: 首先定义好一个模板的例子 { "order":14, "template":"ids-1", "state":"open", "settings":{ "number_of_shards":1 }, "mappings":{ "warnning":{ "properties":{ &q…
一.Elasticsearch.Kibana.Logstash.Elasticsearch-head的安装 ELK的安装 安装下载地址: https://www.elastic.co/cn/downloads 如下图,Elasticsearch.Kibana.Logstash都可以下载安装.当然页面上还会有其他插件或者组件的下载链接,这里就不在赘述. 下载后建议,在适当的目录下,简历ELK目录,将下载包移动到ELK目录下进行解压 #cd ~ #mkdir ELK #mv ~/Downloads/…
前记: 去年测试了ELK,今年测试了Storm,最终因为Storm需要过多开发介入而放弃,选择了ELK.感谢互联网上各路大神,目前总算是正常运行了. logstash+elasticsearch+kibana的搭建参考:http://wsgzao.github.io/post/elk/.由于搭建过程比较简单就不赘述,主要分享几个坑. 正文: 1.日志如何获取 无论是storm方案还是elk,都涉及这个关键问题.为减少和运维.开发的交叉,尽可能独立.快速,加之当时发现了justniffer这个“神…
前言 最近公司分了个ELK相关的任务给我,在一边学习一边工作之余,总结下这些天来的学习历程和踩坑记录. 首先介绍下使用ELK的项目背景:在项目的数据库里有个表用来存储消息队列的消费日志,这些日志用于开发者日后的维护.每当客户端生产一条消息并发送到消息队列后,就会插入一条对应的记录到数据库里.当这条消息被消费之后,又会更新数据库里对应的记录的几个column的值,比如status.updated_on这些常用的column. 由于客户每天生产消费的消息很多,导致数据库里的这个表里的数据很多,长年累…
elasticSearch Docker安装elasticsearch: docker pull docker.io/elasticsearch:7.2.0 启动: docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" --name es -d docker.io/elasticsearch:7.2.0 logstash Docker安装logstash docker pull docker.io/lo…
因为公司使用ELK的缘故,这两天尝试在阿里云上安装了下ELK,这里做个笔记,有兴趣的同学可以看下. 先大致介绍下ELK,ELK是三个组件的缩写,分别是elasticsearch.logstash.kibana. (1)Elasticsearch是一个高度可扩展的开源全文搜索和分析引擎.它允许您快速,近实时地存储,搜索和分析大量数据.它通常用作底层引擎/技术,为具有复杂搜索功能和要求的应用程序提供支持. (2)Logstash是一个开源的.接受来自多种数据源(input).过滤你想要的数据(fil…
问题与分析 在本地测试无误后将ELK部署到了测试环境,结果第二天发现Logstash挂掉了,一开始以为是自动部署之类导致的问题.之后几天时间里Logstash总是会down掉,查看了下日志文件,发现报错如下: [2019-06-28T07:56:13,148][FATAL][logstash.runner ] An unexpected error occurred! { : error=>#<Errno: : EPIPE: Brokenpipe-<STDOUT>>, : b…