docker 安装 logstash

文章目录

Logstash基本语法组成

什么是Logstash

logstash是一个数据抽取工具,将数据从一个地方转移到另一个地方。如hadoop生态圈的sqoop等。下载地址:https://www.elastic.co/cn/downloads/logstash

logstash之所以功能强大和流行,还与其丰富的过滤器插件是分不开的,过滤器提供的并不单单是过滤的功能,还可以对进入过滤器的原始数据进行复杂的逻辑处理,甚至添加独特的事件到后续流程中。

Logstash配置文件有如下三部分组成,其中input、output部分是必须配置,filter部分是可选配置,而filter就是过滤器插件,可以在这部分实现各种日志过滤功能。

配置文件:

复制代码
input {
    #输入插件
}
filter {
    #过滤匹配插件
}
output {
    #输出插件
}

拉去镜像

因为我这里的es是7.12.1的,所以我logstash我也拉取同样版本,也自己去看版本对照表https://www.elastic.co/cn/support/matrix#matrix_compatibility

bash 复制代码
docker pull logstash:7.12.1

启动镜像

bash 复制代码
docker run \
--name logstash \
--restart=always \
-p 5044:5044 \
-p 9600:9600 \
-v logstash-config:/usr/share/logstash/config \
-v logstash-data:/usr/share/logstash/data \
-v logstash-pipeline:/usr/share/logstash/pipeline \
-d logstash:7.12.1

Logstash输入插件(input)

https://www.elastic.co/guide/en/logstash/current/input-plugins.html

1、标准输入(Stdin)

复制代码
input{
    stdin{
       
    }
}
output {
    stdout{
        codec=>rubydebug    
    }
}

2、读取文件(File)

logstash使用一个名为filewatch的ruby gem库来监听文件变化,并通过一个叫.sincedb的数据库文件来记录被监听的日志文件的读取进度(时间戳),这个sincedb数据文件的默认路径在 <path.data>/plugins/inputs/file下面,文件名类似于.sincedb_123456,而<path.data>表示logstash插件存储目录,默认是LOGSTASH_HOME/data。

复制代码
input {
    file {
        path => ["/var/*/*"]
        start_position => "beginning"
    }
}
output {
    stdout{
        codec=>rubydebug    
    }
}

默认情况下,logstash会从文件的结束位置开始读取数据,也就是说logstash进程会以类似tail -f命令的形式逐行获取数据。

相关推荐
梦想与想象-广州大智汇1 小时前
自建docker加速镜像,使用 Cloudflare Workers/Pages 部署加速教程
运维·docker·容器
AI服务老曹3 小时前
架构师视角:如何构建支持GB28181/RTSP的异构AI视频平台?从Docker部署到源码交付的深度实践
人工智能·docker·音视频
用户78937733908535 小时前
Docker 部署踩坑记录:从“构建失败”到“服务跑通”,以及为什么数据被清空了
python·docker
Slow菜鸟6 小时前
Docker 学习篇(三)| Docker安装指南(Linux版)
linux·学习·docker
0和1的搬运工9 小时前
基于Java+SpringBoot+Vue+HTML5高校教师电子名片系统(源码+LW+调试文档+讲解等)/高校教师/电子名片/系统/教育科技/教育信息化/名片管理/电子身份/教师信息管理/校园信息化
spring cloud·tomcat·log4j·maven·intellij-idea·dubbo·java-consul
炸炸鱼.9 小时前
容器技术入门与 Docker 环境部署
docker
宁静@星空9 小时前
007-Docker构建 jar 包成镜像
docker·容器·jar
xmlhcxr11 小时前
从 0 到 1 落地企业级 DevOps CI/CD 流水线:基于 GitLab+Jenkins+Harbor 的完整实践
运维·docker·gitlab·jenkins·harbor·devops
铁皮哥12 小时前
【后端开发】@Resource 和 @Autowired 到底有什么区别?为什么现在更推荐构造方法注入?
java·ide·spring boot·tomcat·log4j·idea·intellij idea
踏着七彩祥云的小丑14 小时前
AI——Docker部署Dify
docker·ai