ELK之Logstash
发布日期:2021-06-30 20:22:09
浏览次数:3
分类:技术文章
本文共 2781 字,大约阅读时间需要 9 分钟。
Elasticsearch/Logstash/Kibana作为目前开源领域最为炙手可热的监控三剑客声名大噪。ELK三者各司其职,本文将极为简单地介绍一下如何使用Docker将Logstash跑起来收取数据。
docker pull
取得logstash的官方镜像
[root@host34 ~]# docker pull logstashUsing default tag: latestlatest: Pulling from library/logstash357ea8c3d80b: Already exists52befadefd24: Already exists42f3df327392: Pull complete3decae4e9763: Pull complete0a60a7e0c31d: Pull completeb42727ba883d: Pull complete98299a24213c: Pull completebce15ff1cbf7: Pull completeb9ded4ed7c99: Pull complete3181c22f5a6b: Pull completebbfd3230c943: Pull completef505f3e96b8f: Pull complete1061041d49b4: Pull complete871b0ca55612: Pull completeDigest: sha256:5c8bcc7785eedf69043ec758d72fc3edc3a6a965067c87084168fff0eb534644Status: Downloaded newer image for logstash:latest[root@host34 ~]#
logstash的设定文件
logstash的设定文件中标准有input/filter/ouptput三种,filter可以省略。如果不知道这个如何运转,我们可以使用一个不需要设定文件的方式,或者说inline的方式将docker运转起来。
docke run(inline设定文件)
启动
[root@host34 ~]# docker run -it --rm logstash logstash -e 'input { stdin { } } output { stdout { } }'Settings: Default pipeline workers: 1Pipeline main started
可以看到 logstash已经启动了,其以标准输入stdin作为stdin,标准输出stdout作为stdout。其接受标准输入,并将接受到的标准输入打到标准输出上。
分别输入hello world,可以从标准输出上看到结果
hello2016-08-20T03:34:43.655Z 6f0a25618ecd helloworld2016-08-20T03:34:48.692Z 6f0a25618ecd world
准备logstash的设定文件
通过一个极其简单的inline的设定方式,我们知道logstash确实能够收集到相关信息,至少标准输入的信息能够获取到。而通过使用logstash的设定文件能否正常做到这一点呢,下面通过一个简单的试验来看一下。
[root@host34 config-dir]# pwd/root/config-dir[root@host34 config-dir]# lltotal 4-rw-r--r--. 1 root root 168 Aug 19 23:38 logstash.conf[root@host34 config-dir]# cat logstash.confinput { file { path =>"/tmp/test_for_input.log" type =>"test_input"}}filter {}output { stdout {}}[root@host34 config-dir]#
logstash的
docker run(logstash.conf)
启动了一个名为logstash的container,并将做成的logstash.conf映射到容器内。
命令:docker run -it --name logstash --rm -v "$PWD":/config-dir logstash logstash -f /config-dir/logstash.conf
[root@host34 config-dir]# docker run -it --name logstash --rm -v "$PWD":/config-dir logstash logstash -f /config-dir/logstash.confSettings: Default pipeline workers: 1Pipeline main started
进入到容器logstash中,生成input对象文件test_for_input.log并向其输入数据。
[root@host34 ~]# docker exec -it logstash /bin/bashroot@1ca6e11b5f61:/# echo "hello, this is the message from liumiao" >/tmp/test_for_input.logroot@1ca6e11b5f61:/# echo "how are you" >> /tmp/test_for_input.logroot@1ca6e11b5f61:/# echo "fine , thank you, and you" >>/tmp/test_for_input.logroot@1ca6e11b5f61:/# echo "I am fine too" >> /tmp/test_for_input.logroot@1ca6e11b5f61:/#
logstash的标准输出上及时地得到了搜集的信息
2016-08-20T04:02:06.441Z 1ca6e11b5f61 hello, this is the message from liumiao2016-08-20T04:02:21.511Z 1ca6e11b5f61 how are you2016-08-20T04:02:37.569Z 1ca6e11b5f61 fine , thank you, and you2016-08-20T04:02:46.593Z 1ca6e11b5f61 I am fine too
转载地址:https://liumiaocn.blog.csdn.net/article/details/52254331 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年04月23日 19时11分44秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
lnmp部署
2019-04-30
location区段
2019-04-30
nginx访问控制、基于用户认证、https配置
2019-04-30
用zabbix监控nginx
2019-04-30
SaltStack
2019-04-30
linux内存的寻址方式
2019-04-30
ubunut16.04的pip3出现问题,重新安装pip3
2019-04-30
how2heap-double free
2019-04-30
how2heap-fastbin_dup_consolidate
2019-04-30
orw_shellcode_模板
2019-04-30
[fmt+shellcode]string
2019-04-30
fmt在bss段(neepusec_easy_format)
2019-04-30
[double free] 9447 CTF : Search Engine
2019-04-30
python 函数式编程
2019-04-30
python编码
2019-04-30
redis cli
2019-04-30
redis api
2019-04-30
flink physical partition
2019-04-30
java 解析json
2019-04-30
java http请求
2019-04-30