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

news/2024/11/29 4:37:23/

 

目录

分布式请求链路追踪_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 Serverregister-with-eureka: true# 示是否从Eureka Server获取注册的服务信息fetch-registry: true# Eureka Server地址service-url:defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eurekainstance:instance-id: payment8003prefer-ip-address: true
spring:application:# 设置应用名词name: cloud-payment-provider# 数据库配置datasource:name: sonice1024driver-class-name: com.mysql.jdbc.Driverurl:
jdbc:mysql://192.168.66.101:3306/test?useSSL=false&useUnicode=true&characterEncoding=utf8&useSSL=false&useTimezone=true&serverTimezone=GMT%2B8username: rootpassword: 123456type: com.zaxxer.hikari.HikariDataSourcehikari:minimum-idle: 3auto-commit: trueidle-timeout: 10000max-lifetime: 1800000connection-timeout: 30000connection-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 {@Autowiredprivate UserMapper userMapper;@Trace@Overridepublic List<User> findByAllUser() {return  userMapper.selectList(null);}
}

编写用户控制层

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

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

 


http://www.ppmy.cn/news/977993.html

相关文章

Fastify系列-从0到1超详细手把手教你使用Fastify构建快速的API

什么是Fastify&#xff1f; Fastify是一个web框架&#xff0c;高度专注于以最少的开销和强大的插件架构提供最佳的开发体验。它的灵感来自于Hapi和Express&#xff0c;据我们所知&#xff0c;它是运行在Node.js上的最快的Web框架之一。 为什么使用Fastify&#xff1f; 这些是…

网络安全必备的10款工具(附安装包)

“磨刀不误砍柴工”。 优秀的工具有助于提高工作效率&#xff0c;安全工程师也需要优秀的安全软件来提高工作效率。 在具体的工作场景中&#xff0c;有很多种选择&#xff0c;这里有10种开源的免费安全工具&#xff0c;不仅可以提高工作效率&#xff0c;还可以降低企业成本。 …

【LeetCode热题100】打卡第43天:会议室II完全平方数

文章目录 【LeetCode热题100】打卡第43天&#xff1a;会议室II&完全平方数⛅前言 会议室II&#x1f512;题目&#x1f511;题解 完全平方数&#x1f512;题目&#x1f511;题解 【LeetCode热题100】打卡第43天&#xff1a;会议室II&完全平方数 ⛅前言 大家好&#xff…

【Datawhale夏令营】任务一学习笔记

目录 一&#xff1a;anaconda的环境配置 二&#xff1a;赛题任务解读 2.1 任务要求 2.2 数据集介绍 2.3 评估指标 三&#xff1a;机器学习之 LightGBM 一&#xff1a;anaconda的环境配置 下载Anaconda&#xff1a;访问Anaconda官方网站&#xff08;https://www.anaconda.…

RISCV -3 RV32I/RV64I基本整型指令集

RISCV -3 RV32I/RV64I基本整型指令集 1 RV32I Base Integer Instruction Set1.1 Programmers’ Model for Base Integer ISA1.2 Base Instruction Formats1.3 Immediate Encoding Variants1.4 Integer Computational Instructions1.4.1 Integer Register-Immediate Instruction…

2023最经典的软件测试面试题【含答案】

说起软件测试近几年的发展&#xff0c;其实已悄无声息地发生了巨大的变化。前几年随着互联网行业的迅猛发展&#xff0c;软件测试人才稀缺&#xff0c;低门槛高薪资促使大批毕业生和转行人员一窝蜂地涌入。而现在&#xff0c;软件测试发展太快&#xff0c;纵观各大招聘网站&…

SQL AND OR 运算符

AND & OR 运算符用于基于一个以上的条件对记录进行过滤。 如果第一个条件和第二个条件都成立&#xff0c;则 AND 运算符显示一条记录。 如果第一个条件和第二个条件中只要有一个成立&#xff0c;则 OR 运算符显示一条记录。 下面是选自 "students" 表的数据&a…

跨境独立站如何应对恶意网络爬虫?

目录 跨境出海独立站纷纷成立 爬虫威胁跨境电商生存 如何有效识别爬虫&#xff1f; 技术反爬方案 防爬虫才能保发展 中国出海跨境电商业务&#xff0c;主要选择大平台开设店铺&#xff0c;例如&#xff0c;亚马逊、eBay、Walmart、AliExpress、Zalando等。随着业务的扩大&…