ELK学习笔记之logstash配置多入多出并互相隔离
0x00 概述
需求:需要利用同一logstash进程采集不同日志,输出到es的不同index,各输入输出隔离;
主要需要解决如下两个问题:
0x01 如何加载多个配置文件
普通启动方式:
nohup bin/logstash -f config/logstash.conf &
多配置文件启动方式:
nohup bin/logstash -f config/java-conf &
注意:java-conf为目录,将加载该目录下所有配置文件;不要使用config/java-conf/*.conf
问题:配置不当,各输入输出会存在交叉,解决办法参考以下第二点。
0x02 如何隔离各输入输出
利用type,对输入输出进行筛选,配置参考:
log1.conf input { file { type => "log1" path => "/**/log1.log" discover_interval => 10 # 监听间隔 start_position => "beginning" #从头开始 } } #输出到elasticsearch output { if [type] == "log1"{ elasticsearch { index => "log1-%{+YYYY.MM.dd}" hosts => "192.168.2.32:9200" #输出到elasticsearch 对应服务器 } } } log2.conf input { file { type => "log2" path => "/**/log2.log" discover_interval => 10 # 监听间隔 start_position => "beginning" #从头开始 } } #输出到elasticsearch output { if [type] == "log2"{ elasticsearch { index => "log2-%{+YYYY.MM.dd}" hosts => "192.168.2.32:9200" #输出到elasticsearch 对应服务器 } } }
PS:index名不能包含大写字母。
分类:
ELK学习笔记
标签:
Logstash多入多出相互隔离
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?