当前位置: 首页 > news >正文

Spring Cloud Alibaba 2025.0.0 整合 ELK 实现日志 - 详解

Spring Cloud Alibaba 2025.0.0 整合 ELK 实现日志

Spring Cloud Alibaba 2025.0.0 整合 ELK 实现日志实战微服务

环境准备

确保已安装以下组件:

  • JDK 17+
  • Spring Boot 3.x
  • Spring Cloud Alibaba 2025.0.0
  • Elasticsearch 8.x
  • Logstash 8.x
  • Kibana 8.x
  • Docker(可选,用于快速部署ELK)

Spring Cloud Alibaba 2025.0.0 整合 ELK 实现日志实战微服务

引入依赖

在项目的pom.xml中添加必要的依赖:

<!-- Spring Cloud Alibaba Nacos 服务发现(可选) --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><version>2025.0.0</version></dependency><!-- Logback 日志依赖 --><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId></dependency><!-- Logstash 日志收集 --><dependency><groupId>net.logstash.logback</groupId><artifactId>logstash-logback-encoder</artifactId><version>7.4</version></dependency>

Spring Cloud Alibaba 2025.0.0 整合 ELK 实现日志实战微服务

配置 Logback 输出到 Logstash

src/main/resources下创建logback-spring.xml,配置日志输出到 Logstash:

<configuration><appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender"><destination>127.0.0.1:5044</destination><encoder class="net.logstash.logback.encoder.LogstashEncoder"><customFields>{"service":"your-service-name"}</customFields></encoder></appender><root level="INFO"><appender-ref ref="LOGSTASH"/></root>
</configuration>
配置 Logstash 管道

创建 Logstash 配置文件logstash.conf,将日志转发到 Elasticsearch:

input {tcp {port => 5044codec => json_lines}
}
filter {# 可添加自定义过滤规则(如解析特定字段)
}
output {elasticsearch {hosts => ["http://localhost:9200"]index => "microservice-logs-%{+YYYY.MM.dd}"}
}
启动 ELK 服务

通过 Docker 快速启动 ELK 服务:

docker run -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:8.12.0
docker run -d -p 5044:5044 -v /path/to/logstash.conf:/usr/share/logstash/pipeline/logstash.conf logstash:8.12.0
docker run -d -p 5601:5601 kibana:8.12.0
配置 Kibana 可视化
  1. 访问 http://localhost:5601 打开 Kibana 控制台。
  2. 进入 Stack Management > Index Patterns,创建索引模式 microservice-logs-*
  3. Discover 中查看实时日志数据,或通过 Dashboard 创建可视化图表。
高级配置(可选)
验证日志链路
  1. 启动 Spring Boot 应用,生成测试日志。
  2. 在 Kibana 中搜索日志,确认字段(如 servicetraceId)已正确显示。
注意事项

在这里插入图片描述

http://www.jsqmd.com/news/294406/

相关文章:

  • 三分之一2-5天和三分之二6-13天资金利用率对比学习
  • Android关机
  • 221_尚硅谷_实现接口和继承比较(2)
  • 2026年苏州智能硬件设计公司推荐:飓风工业设计,企业产品设计/专业工业设计/产品外观设计/电子产品设计/工业设计/机械产品设计公司精选
  • 2026年国内知名的投影机品牌排名,激光投影仪/20000流明投影机出租/画展投影机出租/雾幕投影机,投影机公司排行
  • JAVA自学之路1.1:JAVA入门纠错
  • 2026软考高级系统架构师备考资料-录播+直播
  • 微信立减金回收攻略,方法、流程与折扣全解析
  • 安达发|精准排产,守护生命:医疗器械行业车间排产的数字化革命
  • 2026年市场评价好的纸盒品牌推荐排行,纸盒/彩印包装/农产品纸箱/工业纸盒/纸箱/工业纸箱,纸盒批发厂家推荐排行
  • Deepseek问答:开发人员如何选书
  • php开源短视频源码,JSON对象转化API
  • 短视频平台php源码,字符缓冲流的特有功能
  • 短视频app搭建,如何实现毛玻璃效果?
  • 小视频平台源码,ElementUI 本地分页
  • C 语言基础:输入输出、运算符与流程控制全梳理
  • 鸿蒙APP开发从入门到精通:ArkUI组件库详解与常用组件实战
  • Typescript——泛型
  • Win11 轻松设置更新暂停至 2042年告别过度弹窗 卸载系统冗余软件
  • 实战复盘:如何用 HTML+JS+AI 打造一款“影迹”智能影视管理系统
  • 从对象结构到锁机制:Java 对象锁与类锁深度解析
  • 什么是 Java 中的原子性、可见性和有序性?
  • 2000亿美元!2026年全球游戏行业的新格局与新变量
  • 使用 wxPython 构建文件编辑器与预览器:从零到一的完整实现
  • 从零构建轻量级企业考勤订饭系统:Node.js + SQLite 全栈实战复盘
  • python如何发送邮件
  • 【课程设计/毕业设计】基于Springboot的在线游戏商城系统基于springboot的游戏售卖商城系统【附源码、数据库、万字文档】
  • Python如何识别周围WiFi:跨平台实现与进阶技巧
  • 一键生成100条小红书笔记!DeepSeek+火兔工具箱的组合太牛了!
  • 【毕业设计】基于springboot的助农扶贫系统(源码+文档+远程调试,全bao定制等)