Logstash学习之路(一)Logstash的安装
一、Logstash简介
Logstash 是一个实时数据收集引擎,可收集各类型数据并对其进行分析,过滤和归纳。按照自己条件分析过滤出符合数据导入到可视化界面。它可以实现多样化的数据源数据全量或增量传输,数据标准格式处理,数据格式化输出等的功能,常用于日志处理。工作流程分为三个阶段:
(1)input数据输入阶段,可接收oracle、mysql、postgresql、file等多种数据源;
(2)filter数据标准格式化阶段,可过滤、格式化数据,如格式化时间、字符串等;
(3)output数据输出阶段,可输出到elasticsearch、mongodb、kfka等接收终端。
二、下载
说明:由于我安装的Elasticsearch版本为6.3.1,因此我下载logstash版本为6.31
https://artifacts.elastic.co/downloads/logstash/logstash-6.3.1.tar.gz
解压:
[root@master mnt]# tar -zxvf logstash-6.3.1.tar.gz
[root@master mnt]# mv logstash-6.3.1 logstash
简单输出到控制台,观察是否安装成功:
[root@master bin]# ./logstash -e 'input { stdin { } } output { stdout {} }'
日志:
Sending Logstash's logs to /mnt/logstash/logs which is now configured via log4j2.properties
[2019-04-24T16:19:14,090][INFO ][logstash.setting.writabledirectory] Creating directory {:setting=>"path.queue", :path=>"/mnt/logstash/data/queue"}
[2019-04-24T16:19:14,111][INFO ][logstash.setting.writabledirectory] Creating directory {:setting=>"path.dead_letter_queue", :path=>"/mnt/logstash/data/dead_letter_queue"}
[2019-04-24T16:19:15,079][WARN ][logstash.config.source.multilocal] Ignoring the 'pipelines.yml' file because modules or command line options are specified
[2019-04-24T16:19:15,168][INFO ][logstash.agent ] No persistent UUID file found. Generating new UUID {:uuid=>"1a5ca4ad-02a5-4f48-91d7-1373799f0fd2", :path=>"/mnt/logstash/data/uuid"}
[2019-04-24T16:19:16,754][INFO ][logstash.runner ] Starting Logstash {"logstash.version"=>"6.3.1"}
[2019-04-24T16:19:22,045][INFO ][logstash.pipeline ] Starting pipeline {:pipeline_id=>"main", "pipeline.workers"=>2, "pipeline.batch.size"=>125, "pipeline.batch.delay"=>50}
[2019-04-24T16:19:22,329][INFO ][logstash.pipeline ] Pipeline started successfully {:pipeline_id=>"main", :thread=>"#<Thread:0x4eb0dbdb run>"}
The stdin plugin is now waiting for input:
[2019-04-24T16:19:22,503][INFO ][logstash.agent ] Pipelines running {:count=>1, :running_pipelines=>[:main], :non_running_pipelines=>[]}
[2019-04-24T16:19:22,966][INFO ][logstash.agent ] Successfully started Logstash API endpoint {:port=>9600}
输入:aaaaaaaa,发现安装成功
aaaaaaaaaa
{
"message" => "aaaaaaaaaa",
"host" => "master",
"@timestamp" => 2019-04-24T08:21:07.403Z,
"@version" => "1"
}
命令行参数:logstash命令
|
1
2
3
4
5
|
参数:执行 -e bin/logstash -e ''文件 --config 或 -f bin/logstash -f agent.conf测试 --configtest 或 -t 用来测试 Logstash 读取到的配置文件语法是否能正常解析。日志 --log 或 -l Logstash 默认输出日志到标准错误。生产环境下你可以通过 bin/logstash -l logs/logstash.log 命令来统一存储日志。 |
实例操作:
以输出到Elasticsearch为例:接收控制台输入,Logstash解析输出到ElasticSearch集群
[root@master bin]# cat test_es.conf
input{
stdin{}
}
output{
elasticsearch{
hosts=>["192.168.200.100:9200"]
index=>"testeslogstash"
}
stdout{codec=>rubydebug}
}
运行:
[root@master bin]# ./logstash -f /mnt/logstash/bin/test_es.conf

结果:


所以搭建成功。
Logstash学习之路(一)Logstash的安装的更多相关文章
- 我的 Delphi 学习之路 —— Delphi 助手的安装
标题:我的 Delphi 学习之路 -- Delphi 助手的安装 作者:断桥烟雨旧人伤 Delphi 助手的安装 CnWizards 类似于 VS 中的番茄助手,在编写 Delphi 代码时帮助极大 ...
- Logstash学习之路(五)使用Logstash抽取mysql数据到kakfa
一.Logstash对接kafka测通 说明: 由于我这里kafka是伪分布式,且kafka在伪分布式下,已经集成了zookeeper. 1.先将zk启动,如果是在伪分布式下,kafka已经集成了zk ...
- Git学习之路(2)-安装GIt和创建版本库
▓▓▓▓▓▓ 大致介绍 前面一片博客介绍了Git到底是什么东西,如果有不明白的可以移步 Git学习之路(1)-Git简介 ,这篇博客主要讲解在Windows上安装Git和创建一个版本库 ▓▓▓▓▓▓ ...
- Logstash学习之路(二)Elasticsearch导入json数据文件
一.数据从文件导入elasticsearch 1.数据准备: 1.数据文件:test.json 2.索引名称:index 3.数据类型:doc 4.批量操作API:bulk {"index& ...
- Logstash学习之路(四)使用Logstash将mysql数据导入elasticsearch(单表同步、多表同步、全量同步、增量同步)
一.使用Logstash将mysql数据导入elasticsearch 1.在mysql中准备数据: mysql> show tables; +----------------+ | Table ...
- Logstash学习之路(三)Logstash处理时区、类型转换、删除字段的案例配置
#输入 input { file { path => ["文件路径"] #自定义类型 type => "自定义" start_position =& ...
- Qt学习之路1---软件下载安装及工程简介
1.下载安装目前最新版的qt,官网链接:https://www.qt.io/qt5-8/: 和qt4不同,qt5在线安装,轻巧快速,而且不用配置一些繁琐的东西,安装之后会出现Qt creator这就是 ...
- OPENGL学习之路(0)--安装
此次实验目的: 安装并且配置环境. 1 下载 https://www.opengl.org/ https://www.opengl.org/wiki/Getting_Started#Downloadi ...
- Sass学习之路(2)——Sass环境安装(windows版)
因为本喵目前用的是window10的本子,所以这里就发windows版本的安装流程啦.(希望有朋友可以赞助我一个mac(┳_┳)): 第一步:安装ruby 因为Sass是基于ruby编写的,所以先去官 ...
随机推荐
- PyQt(Python+Qt)学习随笔:怎么在QScrollArea滚动区域中展示子部件的超长内容?
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 滚动区域可以针对部署在其上的子部件在不可见时进行滚动展示,但这种滚动展示仅只能展示内容层可见范围的子 ...
- 2016 piapiapia 数组绕过
0x00.感悟 写完这道题,我感觉到了扫源码的重要性.暑假复现的那些CVE,有的就是任意文件读取,有的是任意命令执行,这些应该都是通过代码审计,得到的漏洞.也就和我们的CTF差不多了. ...
- justify-content属性详解
justify-content 定义了flexbox flexbox内的元素在主轴的方向上的对齐方式. 它可以设置以下几种对齐方式: 靠近一方 justify-content:center: /*fl ...
- ios移动端 clipboard点击复制失效
在使用clipboard.min.js插件库实现复制,android下没有问题,ios下无效! 原因:ios默认非点击标签没有点击效果 解决方法:需要给非点击标签加事件,比如在span,div或者p标 ...
- JavaSE12-内部类&API
1. 参数传递 1.1 类名作为形参和返回值 1.类名作为方法的形参 方法的形参是类名,其实需要的是该类的对象 实际传递的是该对象的[地址值] 2.类名作为方法的返回值 方法的返回值是类名,其实返回的 ...
- css 16-浏览器的兼容性问题
16-浏览器的兼容性问题 我们在div里放一个img,发现: 在html和html5中,div的长宽是不同的,后者的高度要超过几个像素. 比如说,下面这个是html的. <!DOCTYPE ht ...
- [水题日常]UVA11181 条件概率(Probability|Given)
话说好久没写blog了 好好学概率论的第一天,这题一开始完全不会写,列出个条件概率的公式就傻了,后来看着lrj老师的书附带的代码学着写的- 因为我比较弱智 一些比较简单的东西也顺便写具体点或者是按照书 ...
- python去除文件中重复的行
去除文件中重复的行 import os with open('db.txt','r',encoding='utf-8') as read_f,\ open('.db.txt.swap','w',enc ...
- java基础:数组详解以及应用,评委打分案例实现,数组和随机数综合,附练习案列
1.数组 1.1 数组介绍 数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致. 1.2 数组的定义格式 1.2.1 第一种格式 数据类型[] 数组名 示例: int[] arr; ...
- Python将word文档批量转PDF
前面有一篇<Python批量创建word文档(2)- 加图片和表格>的文章,利用这篇文章创建的word文档来批量转PDF文档.代码: 1 ''' 2 #python批量将word文档转换成 ...