Spring Cloud【SkyWalking服务环境搭建、微服务接入SkyWalking探针、Docker搭建Elasticsearch环境 】(十四)

news2025/4/8 20:16:03

 

目录

分布式请求链路追踪_SkyWalking服务环境搭建

分布式请求链路追踪_微服务接入SkyWalking探针

分布式请求链路追踪_Docker搭建Elasticsearch环境 

分布式请求链路追踪_SkyWalking使用Elasticsearch持久化 

分布式请求链路追踪_SkyWalking自定义链路追踪


分布式请求链路追踪_SkyWalking服务环境搭建

下载SkyWalking包 

解压SkyWalking包 

tar -zxvf apache-skywalking-apm-es7-8.5.0.tar.gz -C /usr/local/

SkyWalking包目录介绍

介绍:

1、webapp: Ul前端(web 监控页面)的jar包和配置文件

2、oap-libs:后台应用的jar包,以及它的依赖jar包

3、config:启动后台应用程序的配置文件,是使用的各种配置

4、bin:各种启动脚本,一般使用脚本startup.*来启动web页面和对应的后台应用

5、agent:代理服务jar包 

修改端口号 

vim /usr/local/apache-skywalking-apm-bin-es7/webapp/webapp.yml 

启动服务 

注意:

启动成功后会启动两个服务,一个是skywalking-oap-server, 一个是skywalking-web-ui : 8868,skywalkng-oap-server服务 启动后会暴露11800和12800两个端口,分别为收集监控数据的 端口11800和接受前端请求的端口12800,修改端口可以修改 config/applicaiton.yml。 

测试服务

请求http://192.168.66.100:8068 

 

实时效果反馈

1.分布式链路追踪SkyWalking如何修改UI服务端口号_____。

A appcation.yml

B webapp.yml

C app.yml

D 以上都是错误

2.分布式链路追踪SkyWalking在___文件配置持久化方式。

A appcation.yml

B webapp.yml

C app.yml

D 以上都是错误 

分布式请求链路追踪_微服务接入SkyWalking探针

探针,用来收集和发送数据到归集器。

下载官方提供探针 

网址  https://skywalking.apache.org/downloads/

 

拷贝探针文件到项目中 

修改项目的VM运行参数 

点击菜单栏中的 Run -> EditConfigurations... ,此处我们以 cloud-gateway-gateway9527 项目为例,修改参数如下:

 

添加参数 

java -
javaagent:C:\Users\wangc\IdeaProjects\cloud\agent\skywalking-agent.jar
-DSW_AGENT_NAME=consumer-order
-
DSW_AGENT_COLLECTOR_BACKEND_SERVICES=192.168.66.101:11800

 参数:

1、-javaagent:用于指定探针路径。

2、-DSW_AGENT_NAME:服务名字

3、-DSW_AGENT_COLLECTOR_BACKEND_SERVICES:连接地址

Java 命令行启动方式 

java -javaagent:/path/to/skywalkingagent/skywalking-agent.jar -
DSW_AGENT_NAME=nacos-provider -
DSW_AGENT_COLLECTOR_BACKEND_SERVICES=localhost:11800 -jar yourApp.jar

测试监控

 

实时效果反馈

1.微服务通过____参数接入Skywalking探针。

A -javapath

B -agent

C -javaagent

D -jar

2.微服务通过____参数指定Skywalking服务端地址。

A -COLLECTOR_BACKEND_SERVICES 

B -DSW_AGENT__SERVICES

C -DSW_COLLECTOR_BACKEND_SERVICES

D -DSW_AGENT_COLLECTOR_BACKEND_SERVICES

分布式请求链路追踪_Docker搭建Elasticsearch环境 

拉取镜像 

docker pull docker.elastic.co/elasticsearch/elasticsearch:7.1.1

启动容器

docker run -d --name es -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms512m -Xmx512m"
-e "discovery.type=single-node"
docker.elastic.co/elasticsearch/elasticsearch:7.1.1

参数:

1、 -d:守护进程运行

2、 ES_JAVA_OPTS:设置堆内存

3、 discovery.type:设置单节点启动

测试

访问地址: http://192.168.66.101:9200 

分布式请求链路追踪_SkyWalking使用Elasticsearch持久化 

修改config目录下application.yml 

/usr/local/apache-skywalking-apm-bin-es7/config

 

修改命名空间 

修改ES数据连接地址 

重启服务 

[root@localhost bin]# ./startup.sh SkyWalking OAP started successfully! SkyWalking Web Application started successfully!

 

实时效果反馈

1.分布式链路追踪Skywalking官方推荐_______数据库。

A Elasticsearch

B MySQL

C H2

D TIDB 

分布式请求链路追踪_SkyWalking自定义链路追踪

当我们工程中,有些重要的方法,没有添加在链路中,而我们又需要时,就可以添加自定义链路追踪的Span。 

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.49</version>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.skywalking</groupId>
            <artifactId>apm-toolkit-trace</artifactId>
            <version>8.5.0</version>
        </dependency>
        <!--数据库连接池 HikariCP-->
        <dependency>
            <groupId>com.zaxxer</groupId>
            <artifactId>HikariCP</artifactId>
            <version>2.7.8</version>
        </dependency>

 YML文件添加配置

eureka:
 client:
    # 表示是否将自己注册到Eureka Server
   register-with-eureka: true
    # 示是否从Eureka Server获取注册的服务信息
   fetch-registry: true
    # Eureka Server地址
   service-url:
     defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
 instance:
   instance-id: payment8003
   prefer-ip-address: true
spring:
 application:
    # 设置应用名词
   name: cloud-payment-provider
  # 数据库配置
 datasource:
   name: sonice1024
   driver-class-name: com.mysql.jdbc.Driver
   url:
jdbc:mysql://192.168.66.101:3306/test?useSSL=false&useUnicode=true&characterEncoding=utf8&useSSL=false&useTimezone=true&serverTimezone=GMT%2B8
   username: root
   password: 123456
   type: com.zaxxer.hikari.HikariDataSource
   hikari:
     minimum-idle: 3
     auto-commit: true
     idle-timeout: 10000
     max-lifetime: 1800000
     connection-timeout: 30000
     connection-test-query: SELECT 1
server:
 port: 8003

编写主启动类

/**
* 主启动类
*/
@EnableEurekaClient
@MapperScan("com.tong.mapper")
@SpringBootApplication
@Slf4j
public class PaymentMain8003 {
    public static void main(String[] args) {
      SpringApplication.run(PaymentMain8003.class,args);
        log.info("********* 服务提供者启动成功******");
   }
}

编写实体类

@Data
public class User {
        private Long id;
        private String name;
        private Integer age;
        private String email;
        
}

编写UserMapper

public interface UserMapper extends BaseMapper<User> {}

编写UserService接口

public interface UserService {
    List<User> findByAllUser();
}

编写接口实现类

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;
    @Trace
    @Override
    public List<User> findByAllUser() {
        return  userMapper.selectList(null);
   }
}

编写用户控制层

@RequestMapping("user")
@RestController
public class UserController {
   @Autowired
   private UserService userService;
   @GetMapping("findByAll")
   public List<User> findByAll(){
       return userService.findByAllUser();
   }
}

测试  http://localhost:8003/user/findByAll

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/787240.html

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

相关文章

疲劳驾驶检测和识别3:Android实现疲劳驾驶检测和识别(含源码,可实时检测)

疲劳驾驶检测和识别3&#xff1a;Android实现疲劳驾驶检测和识别(含源码&#xff0c;可实时检测) 目录 疲劳驾驶检测和识别3&#xff1a;Android实现疲劳驾驶检测和识别(含源码&#xff0c;可实时检测) 1.疲劳驾驶检测和识别方法 2.人脸检测方法 3.疲劳驾驶检测和识别模型…

24 鼠标常用事件

鼠标进入&#xff1a;enterEvent鼠标离开&#xff1a;leaveEvent鼠标按下&#xff1a;mousePressEvent鼠标释放&#xff1a;mouseRelaseEvent鼠标移动&#xff1a;mouseMoveEvent 提升为自定义控件MyLabel 代码&#xff1a; //mylabel.h #ifndef MYLABEL_H #define MYLABEL_H#…

linux LVM磁盘管理

Linux运维过程中经常会遇到扩容的场景&#xff0c;下面做一点简单笔记&#xff0c;所谓好记性不如烂笔头。 1、新建磁盘挂载 &#xff08;1&#xff09;先看看主机上有没有挂载磁盘或挂载的磁盘有没有剩余的。 如下图可以看到这台机器挂了两个盘&#xff0c;一个/dev/sda,这…

【项目管理】第三节:PMP备考学习建议

文章目录 1.项目管理的价值观与方法论2.PMP开始的形式和题型 1.项目管理的价值观与方法论 对于中国考生而言&#xff0c;PMP”考试有两关要过:第一关是认知升级&#xff0c;考生通过学习和梳理项目管理知识&#xff0c;提升自己对项目管理的认知;第二关是思维升级&#xff0c;…

【Vue3】Vue3中的组合式API是什么?hook是什么?什么是“组合式函数”?项目中如何使用自定义 hook 函数?

组合式API与hook 一、什么是组合式 API&#xff1f;&#xff08;composition-api&#xff09;二、什么是组合式函数&#xff1f;&#xff08;hook&#xff09;2.1 无状态的函数&#xff08;utils&#xff09;2.2 有状态的函数&#xff08;hooks&#xff09;2.3 utils与hooks的联…

yolov5s模型剪枝详细过程(v6.0)

本文参考github上大神的开源剪枝项目进行学习与分享&#xff0c;具体链接放在文后&#xff0c;希望与大家多多交流&#xff01; 一、原模型训练 在官方源码上训练yolov5模型&#xff0c;支持v6.0分支的n/s/m/l模型&#xff0c;我这里使用的是v5s&#xff0c;得到后将项目clone到…

Cesium态势标绘专题-椭圆(标绘+编辑)

标绘专题介绍:态势标绘专题介绍_总要学点什么的博客-CSDN博客 入口文件:Cesium态势标绘专题-入口_总要学点什么的博客-CSDN博客 辅助文件:Cesium态势标绘专题-辅助文件_总要学点什么的博客-CSDN博客 本专题没有废话,只有代码,代码中涉及到的引入文件方法,从上面三个链…

图像处理之Hough变换检测直线

hough变换-直线检测 一、 前言二、Hough 变换三、直线检测四、代码实现1.hough检测2.画直线代码3.画hough空间代码4.检测结果 一、 前言 霍夫变换是一种特征检测(feature extraction)&#xff0c;被广泛应用在图像分析&#xff08;image analysis&#xff09;、计算机视觉(com…

[算法通关村] 1.2 链表的插入

上一节我们谈到了链表的概念&#xff0c;以及链表的创建方法&#xff0c;忘记的小伙伴可以复习一下&#xff1a; [算法通关村] 1.1 单向链表的创建 今天我们来探究一下链表的插入&#xff0c;链表的插入共有 3 种可能性&#xff0c;分别是在链表的头部插入、在中间插入&#x…

CMake学习-All in one

参考引用 CMake与Make最简单直接的区别通过例子学习CMakeLIO-SAM 1. 引言 1.1 什么是 CMake 1.1.1 CMake 背景 1.1.2 CMake 定义 CMake 是一个跨平台的安装&#xff08;编译&#xff09;工具&#xff0c;可以用简单的语句来描述所有平台的安装&#xff08;编译&#xff09;过…

基础算法-数组模拟队列

队列&#xff1a;先进先出 什么叫做队列&#xff1a; 就是一个特殊的数组。这个数组&#xff0c;最前面叫队头&#xff0c;最后面叫队尾。只允许在最后面添加元素&#xff0c;只允许在最前面删除元素。 解题思路&#xff1a; 用一个数组 q 保存数据。 用 hh 代表队头&…

关于PyTorch中一维卷积Conv1d的理解

首先明确一点&#xff0c;PyTorch中的一维卷积是从左往右做的&#xff0c;不是从上往下。 然后明确第二点&#xff0c;一维卷积和二维卷积最大的区别在于&#xff0c;一维卷积的卷积方向只有一个维度&#xff0c;一维卷积的卷积核不像二维卷积核一样可以左右和上下两个维度移动…

Mysql-主从复制与读写分离

Mysql 主从复制、读写分离 一、前言&#xff1a;二、主从复制原理1.MySQL的复制类型2. MySQL主从复制的工作过程;3.MySQL主从复制延迟4. MySQL 有几种同步方式&#xff1a;5.Mysql应用场景 三、主从复制实验1.主从服务器时间同步1.1 master服务器配置1.2 两台SLAVE服务器配置 2…

CRM系统化整合从N-1做减法实践 | 京东物流技术团队

1 背景 京销易系统已经接入大网、KA以及云仓三个条线商机&#xff0c;每个条线商机规则差异比较大&#xff0c;当前现状是独立实现三套系统分别做支撑。 2 目标 2022年下半年CRM目标是完成9个新条线业务接入&#xff0c;完成销售过程线上化&#xff0c;实现销售规则统一。 …

【Git】—— 分⽀的基本操作

目录 &#xff08;一&#xff09;理解分⽀ &#xff08;二&#xff09;创建分⽀ &#xff08;三&#xff09;切换分⽀ &#xff08;四&#xff09;合并分⽀ &#xff08;五&#xff09;删除分⽀ 总结 &#xff08;一&#xff09;理解分⽀ 本章开始介绍 Git 的杀⼿级功能之…

结构型设计模式:装饰器模式

设计模式专栏目录 创建型设计模式-单例模式/工厂模式/抽象工厂 行为型设计模式&#xff1a;模板设计模式/观察者设计模式/策略设计模式 结构型设计模式&#xff1a;装饰器模式 C#反射机制实现开闭原则的简单工厂模式 目录 设计模式专栏目录设计模式分类设计模式的设计原则装饰…

Java体系总览

一、基础篇 JVM JVM内存结构 堆、栈、方法区、直接内存、堆和栈区别 Java内存模型 内存可见性、重排序、顺序一致性、volatile、锁、final 垃圾回收 内存分配策略、垃圾收集器&#xff08;G1&#xff09;、GC算法、GC参数、对象存活的判定 JVM参数及调优 Java对象模型 …

windows环境下docker数据迁移到其他盘

docker安装在C盘&#xff0c;使用一段时间后&#xff0c;C盘爆满。因此想把C盘中的数据迁移到其他盘&#xff0c;以释放C盘空间。分为以下步骤&#xff1a; 1、启动docker软件&#xff0c;打开PowerShell并切换到Docker Compose配置文件的目录。 Docker Compose配置文件的目录…

zabbix监控docker容器

1、安装zabbix-agent2插件 需要被监控的主机安装zabbix-agent2插件&#xff0c;请参考另一篇博客进行安装。原有的zabbix-agent插件不支持docker容器的监控的。agent的功能&#xff0c;agent2也都有 http://t.csdn.cn/dccqw 并在被监控的主机中开放10050端口 firewall-cmd --z…

【雕爷学编程】Arduino动手做(171)---micro:bit 开发板2

37款传感器与模块的提法&#xff0c;在网络上广泛流传&#xff0c;其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块&#xff0c;依照实践出真知&#xff08;一定要动手做&#xff09;的理念&#xff0c;以学习和交流为目的&#xff0c;这…