1、ELK架构中Logstash的位置:



1.1、小规模集群部署(学习者适用的架构)


简单的只有Logstash、Elasticsearch、Kibana,由Logstash收集日志或者流量信息,过滤后由Elasticsearch存储,前台kibana进行展示、搜索、聚合。适合小规模部署或者学习使用。

1.2、大规模集群部署


由Logstash进行最初的信息收集和处理,之后传入消息队列(可以是kafka、redis等),然后又Logstash从消息队列中再读取信息处理后存入Elasticsearch集群,由kibana展示

、搜索、聚合等。该架构适合大规模部署,当然对与Logstash进程多消耗性能的问题,还有一些其他的解决办法,可以参考专门的ELK架构方面的文章,这里就不在赘述了。


2、Logstash的输入



2.1、标准输入


首先我们来拟定一个标准输出用来测试我们不同的输入:

input {
stdin{}
}
output{
stdout{
codec => rubydebug{}
}
}



简单的一些添加字段的方

标准输入中我们来加入一些添加固定字段的办法

#1
add_field => {"key":"value"}
#2
tags => ["tag1",tag2] #打标签
type => "type1" #标明类型
#3
host标签是不能修改的,否则会报错

2.2、文件输入


input {
file{
path => ["/Users/a003797/1.txt"]
type => 'ids-warnning'
start_position => "beginning"
}
}
output{
stdout{
codec => rubydebug{}
}
}

如上面的代码,path指的是文件位置,是一个list,start_position是监控位置,从开始监控还是从结尾监控(beginning和end)

#还有一些知识点
1、path里面的路径支持通配符
2、discover_interval 检查path下新文件时间间隔,默认15s
3、exclude 与path配合,表示批量文件中不需要监听的部分
4、stat_interval 检查监听文件的更新状态的时间间隔,默认1s

2.3、网络输入


这个很少用

input {
tcp {
port => 5580
mode => "server"
ssl_enable => false
}
}
output{
stdout{
codec => rubydebug{}
}
}

2.4、其他输入


把logstash配置成syslog服务器

input {
syslog{
port => "514"
}
}

3、编解码:



codec这个字段是控制编码形式的

code => "json" #可选项还有plain等

多行编码

codec => {
pattern => "^\["
negate => true
what => "previous"
}

ELK系列四:Logstash的在ELK架构中的使用和简单的输入的更多相关文章

  1. Apache Shiro系列四,概述 —— Shiro的架构

    Shiro的设计目标就是让应用程序的安全管理更简单.更直观.     软件系统一般是基于用户故事来做设计.也就是我们会基于一个客户如何与这个软件系统交互来设计用户界面和服务接口.比如,你可能会说:“如 ...

  2. ELK系列(5) - Logstash怎么分割字符串并添加新的字段到Elasticsearch

    问题 有时候我们想要在Logstash里对收集到的日志等信息进行分割,并且将分割后的字符作为新的字符来index到Elasticsearch里.假定需求如下: Logstash收集到的日志字段mess ...

  3. ELK系列(二):.net core中使用ELK

    ELK安装好后,我们现在.net Core中使用一下,大体思路就是结合NLog日志组件将数据写入ELK中,其它语言同理. ELK的安装还是有些复杂的,我们也可以在Docker中安装ELK:docker ...

  4. ELK系列--实时日志分析系统ELK 部署与运行中的问题汇总

    前记: 去年测试了ELK,今年测试了Storm,最终因为Storm需要过多开发介入而放弃,选择了ELK.感谢互联网上各路大神,目前总算是正常运行了. logstash+elasticsearch+ki ...

  5. [elk]停电日志离线恢复故障处理-elk环境极速搭建

    es数据手动导入 周末停电了两天,发现两天的日志没导入: 原因: 1. elk开启没设启动 2.日志入库时间是当前时间,不是日志本身的time字段 - 导入步骤 1. 先把日志拖下来 2. 事先需要干 ...

  6. elk系列8之logstash+redis+es的架构来收集apache的日志【转】

    preface logstash--> redis --> logstash --> es这套架构在讲究松耦合关系里面是最简单的,架构图如下: 解释下这个架构图的流程 首先前端log ...

  7. elk系列8之logstash+redis+es的架构来收集apache的日志

    preface logstash--> redis --> logstash --> es这套架构在讲究松耦合关系里面是最简单的, 架构图如下: 解释下这个架构图的流程 首先前端lo ...

  8. ELK系列(1) - Elasticsearch + Logstash + Kibana + Log4j2快速入门与搭建用例

    前言 最近公司分了个ELK相关的任务给我,在一边学习一边工作之余,总结下这些天来的学习历程和踩坑记录. 首先介绍下使用ELK的项目背景:在项目的数据库里有个表用来存储消息队列的消费日志,这些日志用于开 ...

  9. Dubbo学习系列之十六(ELK海量日志分析框架)

    外卖公司如何匹配骑手和订单?淘宝如何进行商品推荐?或者读者兴趣匹配?还有海量数据存储搜索.实时日志分析.应用程序监控等场景,Elasticsearch或许可以提供一些思路,作为业界最具影响力的海量搜索 ...

随机推荐

  1. c#解析XML文件来获得pascal_voc特定目标负样本

    近期在做船仅仅识别方面的事情,须要大量的负样本来训练adaboost分类器. 我从网上下载到一个pascal_voc的数据集.须要找到不包括船仅仅的那些复制出来. 数据集特点 对于每一个图片有一个xm ...

  2. Thinkphp5笔记二:创建模块

    系统:window 7 64位 Thinkphp版本:5.0.5 环境:wampserver集成 我的项目是部署在本地www/thinkphp  目录下.在做之前,先要考虑清楚,你需要几个模块来完成你 ...

  3. struts实现国际化

    上篇博客学习了Java国际化的一些基础知识,了解了这些知识之后,我们可以更好的过度到struts国际化. 本篇博客主要学习struts国际化的实现: 1.配置环境设置baseName. 在struts ...

  4. Win7 共享打印机 “错误:共享无法保存设置”

    原因:windows的后台防火墙服务进程[Windows Firewall{服务描述}.MpsSvc{服务名字}] 关闭了.services.smc 关闭 解决:重启服务 关闭防火墙的功能,通过控制面 ...

  5. Linux less 常用导航命令

    linux中经常用less来查看文件,文件较短的时候用pgup(pageup), pgdn(pagedown),↑,↓几个键够,但是当文件比较长的时候用一些快捷键就能很方便实现快速导航. 1. 按匹配 ...

  6. mongo文件空间

    mongo的文件空间,是由一个一个的文件空间组成,如下图 在mongodb刚安装完成时只有一个指定的db都只有一个文件空间而已,例如这里的db是filedb 那么他的第一个文件空间为filedb.0, ...

  7. Dubbo -- 系统学习 笔记 -- 示例 -- 结果缓存

    Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 结果缓存 结果缓存,用于加速热门数据的访问速度,Dubbo提供声明式缓存,以减少用 ...

  8. 7 -- Spring的基本用法 -- 12... Spring 3.0 提供的表达式语言(SpEL)

    7.12 Spring 3.0 提供的表达式语言(SpEL) Spring表达式语言(简称SpEL)是一种与JSP 2 的EL功能类似的表达式语言,它可以在运行时查询和操作对象图.支持方法调用和基本字 ...

  9. 在netbeans下使用调试PHP的插件XdeBug

    本人的开发环境: wamp最新官网wampserver2.2d-x32版. 下载点:http://nchc.dl.sourceforge.net/project/wampserver/WampServ ...

  10. webstrom 2017 安装及配置

    下载安装:http://www.jetbrains.com/webstorm/ 激活:安装完成后,在打开的 License Activation 窗口中选择 License server. 在输入框输 ...