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

news/2026/1/24 17:12:54/文章来源:https://www.cnblogs.com/yangykaifa/p/19527067

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.mzph.cn/news/1210630.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android关机

adb shell reboot -p

221_尚硅谷_实现接口和继承比较(2)

221_尚硅谷_实现接口和继承比较(2)1.实现接口可以当作是对继承的一种补充 2.实现接口和继承

2026年苏州智能硬件设计公司推荐:飓风工业设计,企业产品设计/专业工业设计/产品外观设计/电子产品设计/工业设计/机械产品设计公司精选

在数字化转型浪潮中,优秀的工业设计公司正凭借数据驱动和技术融合,重新定义产品竞争力。 工业设计正经历从传统外观造型设计向技术集成运用的现代工业设计转变。 市场报告显示,全球工业设计服务市场规模持续增长,智…

2026年国内知名的投影机品牌排名,激光投影仪/20000流明投影机出租/画展投影机出租/雾幕投影机,投影机公司排行

评测背景:聚焦服务与保障,重新定义“强”的标准 随着展览展示、文旅演艺及高端会议市场的蓬勃发展,专业投影设备的需求已从单一的产品性能,扩展至包含方案设计、设备保障、现场执行与全国化服务在内的综合能力比拼…

JAVA自学之路1.1:JAVA入门纠错

1.1、JAVA入门纠错 在JAVA入门这篇文章里有些问题和错误需要纠正,懒得再改那篇文章了,直接写在这好了。 package test.test1;public class HelloWorld {public static void main(String[] args) {System.out.println…

2026软考高级系统架构师备考资料-录播+直播

【手机复制括号内整段内容&#xff0c;打开「夸克APP」即可获取。 伏脂燹烜煘胁氟洞座 /~e9ef3ABPYp~:/】

微信立减金回收攻略,方法、流程与折扣全解析

在移动支付广泛普及的当下,微信立减金成了消费者常用的优惠凭证。但受消费场景限制或有效期临近影响,大量立减金闲置浪费。如何通过正规渠道快速变现?本文将从方法、流程、折扣三方面,结合权威数据与行业实践给出答…

安达发|精准排产,守护生命:医疗器械行业车间排产的数字化革命

在关乎人类生命健康的医疗器械制造领域&#xff0c;每一台设备、每一个部件的准时交付&#xff0c;都可能直接影响到患者的治疗与康复。这个行业以其严苛的质量法规&#xff08;如FDA、ISO 13485&#xff09;、复杂的生产工艺和极高的可追溯性要求而著称。在这样的背景下&#…

2026年市场评价好的纸盒品牌推荐排行,纸盒/彩印包装/农产品纸箱/工业纸盒/纸箱/工业纸箱,纸盒批发厂家推荐排行

在工业生产与商品流通领域,纸盒作为产品包装的核心载体,直接影响着商品运输安全、市场展示效果及品牌价值传递。随着国内制造业、电商物流、食品加工等行业的快速发展,纸盒需求量持续攀升,但市场产品质量参差不齐,…

Deepseek问答:开发人员如何选书

如果觉得好&#xff0c;请点赞、收藏、转发和关注&#xff0c;感谢您&#xff01;仅供参考问&#xff1a;按照开发人员的用途、职位、技能掌握程度、预算、可支配时间五个方面提出选择编程书籍的技巧ds答&#xff1a;为不同背景和需求的开发人员选择编程书籍是一项需要精细匹配…

php开源短视频源码,JSON对象转化API

php开源短视频源码&#xff0c;JSON对象转化API 1. 入门案例 package com.jt.pojo;import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArg…

短视频平台php源码,字符缓冲流的特有功能

短视频平台php源码&#xff0c;字符缓冲流的特有功能 一、字符缓冲流的特有功能 void newLine() 换行操作&#xff1a; 三个步骤: write;newLine;flush; 当然最后close; public String readLine() 读一行,只读内容&#xff0c;不读换行的符号&#xff01;操作&#xff1a…

短视频app搭建,如何实现毛玻璃效果?

短视频app搭建&#xff0c;如何实现毛玻璃效果&#xff1f; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"vi…

小视频平台源码,ElementUI 本地分页

小视频平台源码&#xff0c;ElementUI 本地分页 因为一些业务需求,需要用到前端本地分页,直接上代码 <el-table :data"orderList.slice((pageNo-1)*pageSize,pageNo*pageSize)" empty-text"暂无数据" v-loading"orderLoading"> </el-t…

C 语言基础:输入输出、运算符与流程控制全梳理

好的&#xff0c;我们来一次C语言基础的系统梳理&#xff0c;重点覆盖你提到的三大块&#xff1a;输入输出、运算符、流程控制。 这份内容适合零基础或想快速复习的人&#xff0c;全部用最实用、最常考的写法和注意点&#xff0c;强烈建议你边看边敲代码验证。 一、C程序基本结…

鸿蒙APP开发从入门到精通:ArkUI组件库详解与常用组件实战

鸿蒙APP开发从入门到精通&#xff1a;ArkUI组件库详解与常用组件实战 鸿蒙&#xff08;HarmonyOS NEXT&#xff09;是华为推出的分布式操作系统&#xff0c;其APP开发框架以ArkUI为核心&#xff0c;采用ArkTS&#xff08;基于TypeScript的扩展语言&#xff09;进行声明式开发。…

Typescript——泛型

一、问题的引入 需求&#xff1a;创建一个函数&#xff0c;我想要传入啥参数&#xff0c;就返回啥&#xff0c;传入的参数和返回的值的类型相同&#xff0c;那么针对这个需求&#xff0c;我们应该如何去做&#xff0c;大家很快就会想到下面的这种办法。 function hhh(value: …

Win11 轻松设置更新暂停至 2042年告别过度弹窗 卸载系统冗余软件

时隔两年更新的Windows11 轻松设置 1.12 正式版&#xff0c;整合六大核心模块&#xff0c;一个工具就能替代多款零散小工具&#xff0c;Win11 系统优化、个性化设置全搞定&#xff0c;比单独用其他工具便捷太多&#xff01; 软件下载地址 软件功能清晰划分六大板块&#xff0c…

实战复盘:如何用 HTML+JS+AI 打造一款“影迹”智能影视管理系统

在数字化时代&#xff0c;我们囤积了大量的影视资源链接&#xff08;百度网盘、夸克网盘&#xff09;&#xff0c;但它们通常以杂乱的 TXT 文本形式存在。只有链接&#xff0c;没有海报&#xff1b;只有片名&#xff0c;没有评分。 为了解决这个痛点&#xff0c;我开发了**“影…

从对象结构到锁机制:Java 对象锁与类锁深度解析

从对象结构到锁机制&#xff1a;Java 对象锁与类锁深度解析 Java 的并发控制中&#xff0c;synchronized 是最经典的内置锁机制。它基于 JVM 的对象结构实现&#xff0c;分为对象锁&#xff08;实例锁&#xff09;和类锁&#xff08;静态锁&#xff09;。下面从对象内存布局入…