一、zipkin服务端配置

需要JAVA Spring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台源码 一零三八七七四六二六

1.引入依赖

//===========消息队列方式的依赖=============
//此依赖会自动引入spring-cloud-sleuth-stream并且引入zipkin的依赖包
compile("org.springframework.cloud:spring-cloud-sleuth-zipkin-stream")
compile("org.springframework.cloud:spring-cloud-starter-stream-rabbit")
compile('io.zipkin.java:zipkin-autoconfigure-ui')
//保存到数据库需要如下依赖
compile('mysql:mysql-connector-java')
compile('org.springframework.boot:spring-boot-starter-jdbc')
复制代码

2.启动类配置 在启动类加上@EnableZipkinStreamServer

@EnableZipkinStreamServer
@SpringBootApplication
public class ZipkinApplication {public static void main(String[] args) {SpringApplication.run(ZipkinApplication.class, args);}}
复制代码

3.配置文件 完整配置如下,根据自己的设置进行修改即可

#================================基础配置==============================
#应用名
spring.application.name=zipking-server-v1
#端口
server.port=9411
#================================消息队列==============================
spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
#================================数据源配置==============================
#zipkin数据保存到数据库中需要进行如下配置
#表示当前程序不使用sleuth
spring.sleuth.enabled=false
#表示zipkin数据存储方式是mysql
zipkin.storage.type=mysql
#数据库脚本创建地址,当有多个是可使用[x]表示集合第几个元素
spring.datasource.schema[0]=classpath:/zipkin.sql
#spring boot数据源配置
spring.datasource.url=jdbc:mysql://localhost:3306/zipkin
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.initialize=true
spring.datasource.continue-on-error=true
复制代码

4.数据库文件 在本地数据库建立一个数据库,起名为zipkin。 在resources目录下新建zipkin.sql文件,内容如下

SET FOREIGN_KEY_CHECKS=0;-- ----------------------------
-- Table structure for zipkin_annotations
-- ----------------------------
CREATE TABLE `zipkin_annotations` (`trace_id` bigint(20) NOT NULL COMMENT 'coincides with zipkin_spans.trace_id',`span_id` bigint(20) NOT NULL COMMENT 'coincides with zipkin_spans.id',`a_key` varchar(255) NOT NULL COMMENT 'BinaryAnnotation.key or Annotation.value if type == -1',`a_value` blob COMMENT 'BinaryAnnotation.value(), which must be smaller than 64KB',`a_type` int(11) NOT NULL COMMENT 'BinaryAnnotation.type() or -1 if Annotation',`a_timestamp` bigint(20) DEFAULT NULL COMMENT 'Used to implement TTL; Annotation.timestamp or zipkin_spans.timestamp',`endpoint_ipv4` int(11) DEFAULT NULL COMMENT 'Null when Binary/Annotation.endpoint is null',`endpoint_ipv6` binary(16) DEFAULT NULL COMMENT 'Null when Binary/Annotation.endpoint is null, or no IPv6 address',`endpoint_port` smallint(6) DEFAULT NULL COMMENT 'Null when Binary/Annotation.endpoint is null',`endpoint_service_name` varchar(255) DEFAULT NULL COMMENT 'Null when Binary/Annotation.endpoint is null',UNIQUE KEY `trace_id` (`trace_id`,`span_id`,`a_key`,`a_timestamp`) COMMENT 'Ignore insert on duplicate',KEY `trace_id_2` (`trace_id`,`span_id`) COMMENT 'for joining with zipkin_spans',KEY `trace_id_3` (`trace_id`) COMMENT 'for getTraces/ByIds',KEY `endpoint_service_name` (`endpoint_service_name`) COMMENT 'for getTraces and getServiceNames',KEY `a_type` (`a_type`) COMMENT 'for getTraces',KEY `a_key` (`a_key`) COMMENT 'for getTraces'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPRESSED;-- ----------------------------
-- Table structure for zipkin_dependencies
-- ----------------------------
CREATE TABLE `zipkin_dependencies` (`day` date NOT NULL,`parent` varchar(255) NOT NULL,`child` varchar(255) NOT NULL,`call_count` bigint(20) DEFAULT NULL,UNIQUE KEY `day` (`day`,`parent`,`child`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPRESSED;-- ----------------------------
-- Table structure for zipkin_spans
-- ----------------------------
CREATE TABLE `zipkin_spans` (`trace_id` bigint(20) NOT NULL,`id` bigint(20) NOT NULL,`name` varchar(255) NOT NULL,`parent_id` bigint(20) DEFAULT NULL,`debug` bit(1) DEFAULT NULL,`start_ts` bigint(20) DEFAULT NULL COMMENT 'Span.timestamp(): epoch micros used for endTs query and to implement TTL',`duration` bigint(20) DEFAULT NULL COMMENT 'Span.duration(): micros used for minDuration and maxDuration query',UNIQUE KEY `trace_id` (`trace_id`,`id`) COMMENT 'ignore insert on duplicate',KEY `trace_id_2` (`trace_id`,`id`) COMMENT 'for joining with zipkin_annotations',KEY `trace_id_3` (`trace_id`) COMMENT 'for getTracesByIds',KEY `name` (`name`) COMMENT 'for getTraces and getSpanNames',KEY `start_ts` (`start_ts`) COMMENT 'for getTraces ordering and range'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPRESSED;
复制代码

zipkin的服务端就配置完成了,别忘记重新刷新下项目。

二、zipkin客户端配置 引入依赖

compile("org.springframework.cloud:spring-cloud-sleuth-zipkin-stream")
compile("org.springframework.cloud:spring-cloud-starter-stream-rabbit")
复制代码

然后客户端就配置完成了

三、启动 这时候分别启动客户端和服务端,在日志中可以看到初始化mq连接。 然后访问一个客户端的rest接口,看看打开服务端locahost:9411,看看有没有生成记录,这时看看数据库,会建立三个表。就说明我们配置成功了。java B2B2C Springcloud电子商城系统

java B2B2C Springcloud电子商城系统-通过消息队列传输zipkin日志相关推荐

  1. java B2B2C Springcloud电子商城系统-Spring Cloud常见问题与总结(四)

    一.Spring Cloud定位问题思路总结 Spring Cloud进入Camden时代后,已经比较稳定.一般来说,问题都不是Spring Cloud本身的Bug导致.建议按照如下步骤进行定位.需要 ...

  2. java B2B2C Springcloud电子商城系统-Ribbon设计原理

    Ribbon 是netflix 公司开源的基于客户端的负载均衡组件,是Spring Cloud大家庭中非常重要的一个模块:Ribbon应该也是整个大家庭中相对而言比较复杂的模块,直接影响到服务调度的质 ...

  3. java B2B2C Springcloud电子商城系统-断路器(Hystrix)

    原理 在微服务架构中,服务之间形成调用链路,链路中的任何一个服务提供者都可能面临着相应超时.宕机等不可用的情况,在高并发的情况下,这种情况会随着并发量的上升恶化,形成"雪崩效应", ...

  4. java B2B2C Springcloud电子商城系统--------负载均衡(Load Balance)

    负载均衡(Load Balance) 由于目前现有网络的各个核心部分随着业务量的提高,访问量和数据流量的快速增长,其处理能力和计算强度也相应地增大,使得单一的服务器设备根本无法承担.在此情况下,如果扔 ...

  5. java B2B2C Springboot电子商城系统

    大型企业分布式互联网电子商务平台,推出PC+微信+APP+云服务的云商平台系统,其中包括B2B.B2C.C2C.O2O.新零售.直播电商等子平台. 需要JAVA Spring Cloud大型企业分布式 ...

  6. java B2B2C Springboot电子商城系统-路由网关(zuul)

    一.Zuul简介 Zuul的主要功能是路由转发和过滤器.路由功能是微服务的一部分,比如/api/user转发到到user服务,/api/shop转发到到shop服务.zuul默认和Ribbon结合实现 ...

  7. java B2B2C Springboot电子商城系统 (六) 分布式配置中心(Spring Cloud Config)

    2019独角兽企业重金招聘Python工程师标准>>> 一.简介 在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件.在Spring ...

  8. java毕业生设计电子商城系统计算机源码+系统+mysql+调试部署+lw

    java毕业生设计电子商城系统计算机源码+系统+mysql+调试部署+lw java毕业生设计电子商城系统计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B/S架构 开发语言: ...

  9. java b2b2c shop 多用户商城系统源码-common-service 项目构建过程

    我们将对common-service整个项目进行剖析,将整个构建的流程给记录下来,让更多的关注者来参考学习. 需要JAVA Spring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台源 ...

最新文章

  1. ArrayMap java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Object[]
  2. Matlab在概率统计中的应用问题及解决方案集锦
  3. TIBCO宣布接近达成收购LogLogic
  4. 论文笔记(3)-Extracting and Composing Robust Features with Denoising Autoencoders
  5. junit initializationError
  6. java 并发demo_《Java并发编程实践》中4.3.5章demo的一个疑问?
  7. random对文件随机重命名
  8. java中stack集合框架
  9. c char转int_C/C++ 各数据类型占用字节数
  10. SpringBoot-JPA删除不成功,只执行了查询语句
  11. 解决SecureCRT连接linux超时后断开
  12. 采集博图V14-PLCSim数据Demo实现流程
  13. python调用函数出现未定义_python中函数调用中的“未定义”参数
  14. 不同范数下的余弦定理_平行四边形的认识视频
  15. android 安全知识总结
  16. NI LabVIEW开发环境(2.生成installer安装程序exe)
  17. 商业拜访需要注意的13个小细节
  18. krpano 常用标签
  19. http协议(转http://www.cnblogs.com/guguli/p/4758937.html)
  20. IE8和IE9发送跨域请求

热门文章

  1. 064_html音频
  2. 多维数组的索引与切片_「GCTT 出品」Go 系列教程——11. 数组和切片
  3. vue 将字符串最后一个字符给替换_一步一步的实现Vue(一)
  4. 数据结构和算法:全面的算法代码库
  5. 为了远程控制:teamview检测为商用、ZeroTier + 自带远程桌面、Ping其他电脑ping不通
  6. 上古卷轴5python_基于Python-Flask的权限管理5:字典管理
  7. 乾坤 微前端_前端优秀资源整理(持续更新~)
  8. python二分法递归_python 【递归 及 二分法】
  9. linux 解压所有以zip结尾的文件_在 Linux 上压缩文件:zip 命令的各种变体及用法...
  10. 华为ap配置_Win10频发蓝屏,深度Deepin系统,调试华为AC和AP