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. Weblogic在Linux下启动特别慢及进入控制台慢的解决方法

    实际是JVM在Linux下的bug 他想调用一个随机函数 但取不到 暂时的解决办法是 1)较好的解决办法: 在Weblogic启动参数里添加 “- Djava.security.egd=file:/d ...

  2. WPF TextBox属性IsReadOnlyCaretVisible

    纠结了半天WPF下只读的TextBox怎么显示输入焦点提示,发现wpf 4中已有新属性“IsReadOnlyCaretVisible”,大善^_^

  3. 给zTree添加onSelect callback

    由于jquery ui没有集成tree控件,所以在网上找到了zTree v3.zTree无疑是功能非常强大的一款jquery的插件,而且是国人作品,zTree的文档写得也非常好,效果很炫.但是我在使用 ...

  4. 让github忽略某些文件

    打开 https://github.com/github/gitignore 找到自己需要的android.gitignore 打开 Repository Settings , 把那些东东加进来,然后 ...

  5. WebGL Matrix4(4*4矩阵库)

    Matrix4是由<<WebGL编程指南>>作者写的提供WebGL的4*4矩阵操作的方法库,简化我们编写的代码.源代码共享地址,点击链接:Matrix4源代码. 下面罗列了Ma ...

  6. css 中的相对定位和绝对定位

    1.默认不写position的话,值为static. 2.相对定位:相对于元素自己本身的位置偏移,虽然位置偏移,但元素本身占据的空间并不释放. 3.绝对定位:相对于离它最近的,position不为st ...

  7. 【转】Redis集群搭建与简单使用

    介绍安装环境与版本 用两台虚拟机模拟6个节点,一台机器3个节点,创建出3 master.3 salve 环境. redis 采用 redis-3.2.4 版本. 两台虚拟机都是 CentOS ,一台 ...

  8. Thinkphp 模板中使用自定义函数的方法

    1.number_format {$number|number_format=2}   千分位,保留两位小数 2.round {$number|round=2}   四舍五入保留两位小数

  9. Nginx: error while loading shared libraries: libpcre.so.1解决

    Shell代码 [root@tmsapp65 conf]# /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx: error while l ...

  10. spring mvc处理方法返回方式

    Model: package org.springframework.ui; import java.util.Collection; import java.util.Map; public int ...