ELK系列四:Logstash的在ELK架构中的使用和简单的输入
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架构中的使用和简单的输入的更多相关文章
- Apache Shiro系列四,概述 —— Shiro的架构
Shiro的设计目标就是让应用程序的安全管理更简单.更直观. 软件系统一般是基于用户故事来做设计.也就是我们会基于一个客户如何与这个软件系统交互来设计用户界面和服务接口.比如,你可能会说:“如 ...
- ELK系列(5) - Logstash怎么分割字符串并添加新的字段到Elasticsearch
问题 有时候我们想要在Logstash里对收集到的日志等信息进行分割,并且将分割后的字符作为新的字符来index到Elasticsearch里.假定需求如下: Logstash收集到的日志字段mess ...
- ELK系列(二):.net core中使用ELK
ELK安装好后,我们现在.net Core中使用一下,大体思路就是结合NLog日志组件将数据写入ELK中,其它语言同理. ELK的安装还是有些复杂的,我们也可以在Docker中安装ELK:docker ...
- ELK系列--实时日志分析系统ELK 部署与运行中的问题汇总
前记: 去年测试了ELK,今年测试了Storm,最终因为Storm需要过多开发介入而放弃,选择了ELK.感谢互联网上各路大神,目前总算是正常运行了. logstash+elasticsearch+ki ...
- [elk]停电日志离线恢复故障处理-elk环境极速搭建
es数据手动导入 周末停电了两天,发现两天的日志没导入: 原因: 1. elk开启没设启动 2.日志入库时间是当前时间,不是日志本身的time字段 - 导入步骤 1. 先把日志拖下来 2. 事先需要干 ...
- elk系列8之logstash+redis+es的架构来收集apache的日志【转】
preface logstash--> redis --> logstash --> es这套架构在讲究松耦合关系里面是最简单的,架构图如下: 解释下这个架构图的流程 首先前端log ...
- elk系列8之logstash+redis+es的架构来收集apache的日志
preface logstash--> redis --> logstash --> es这套架构在讲究松耦合关系里面是最简单的, 架构图如下: 解释下这个架构图的流程 首先前端lo ...
- ELK系列(1) - Elasticsearch + Logstash + Kibana + Log4j2快速入门与搭建用例
前言 最近公司分了个ELK相关的任务给我,在一边学习一边工作之余,总结下这些天来的学习历程和踩坑记录. 首先介绍下使用ELK的项目背景:在项目的数据库里有个表用来存储消息队列的消费日志,这些日志用于开 ...
- Dubbo学习系列之十六(ELK海量日志分析框架)
外卖公司如何匹配骑手和订单?淘宝如何进行商品推荐?或者读者兴趣匹配?还有海量数据存储搜索.实时日志分析.应用程序监控等场景,Elasticsearch或许可以提供一些思路,作为业界最具影响力的海量搜索 ...
随机推荐
- WebXml.com.cn 中国股票行情数据 WEB 服务(支持深圳和上海股市的全部基金、债券和股票),数据即时更新
http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx
- lua中实现倒计时
今天在开发的时候,涉及到了使用倒计时来显示. 首先自己的思路是: 1.设计显示的Lable. 2.对传入的时间进行处理,转成字符串00:00:00.通过调用回调函数来控制一秒刷新一次. 转换算法: h ...
- dos 批处理中%cd% 和%~dp0%的区别
看网上介绍区别,写的好复杂,其实很简单: %cd% 在批处理和命令窗口都能使用.用于打印,当前工作路径. %~dp0% 则只能用于批处理中,用于获得当前批处理文件所在的路径. 做个试验试一下: @e ...
- 详解CorelDRAW中如何合并与拆分对象
合并两个或多个对象可以创建带有共同填充和轮廓属性的单个对象,以便将这些对象转换为单个曲线对象.可以合并的对象包括矩形.椭圆形.多边形.星形.螺纹.图形或文本等,本教程将详解CorelDRAW中关于合并 ...
- WebGL Matrix4(4*4矩阵库)
Matrix4是由<<WebGL编程指南>>作者写的提供WebGL的4*4矩阵操作的方法库,简化我们编写的代码.源代码共享地址,点击链接:Matrix4源代码. 下面罗列了Ma ...
- Java时间日期字符串格式转换大全
import java.text.*; import java.util.Calendar; public class VeDate { /** * 获取现在时间 * * @return 返回时间类型 ...
- 一致性Hash算法原理及C#代码实现
一.一致性Hash算法原理 基本概念 一致性哈希将整个哈希值空间组织成一个虚拟的圆环,如假设某哈希函数H的值空间为0-2^32-1(即哈希值是一个32位无符号整形),整个哈希空间环如下: 整个空间按顺 ...
- 使用srvany.exe将程序安装成windows服务的详细教程
srvany.exe介绍 srvany.exe是Microsoft Windows Resource Kits工具集的一个实用的小工具,用于将任何EXE程序作为Windows服务运行.也就是说srva ...
- iOS protocbuf安装使用
protobuf文件地址:https://github.com/google/protobuf 1.问题/usr/local.bak/lib /usr/local.bak/man /usr/local ...
- [SublimeText] 之 Packages
概述 Packages 是指供 Sublime Text 使用的资源文件集合,例如插件.语法高亮.菜单.片断等等.Sublime Text 自身安装了一些 Packages,还有很多用户创建的 Pac ...