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

SkyWalking 部署与应用(Windows)

简介

SkyWalking 是分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于容器(Docker、K8s、Mesos)架构而设计。
提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案

下载

因为用的jdk8, 所以本文以支持jdk8 的最后版本为例,即 SkyWalking-apm-8.9.1, java-agent-8.9.0, 下载其对应的压缩包

SkyWalking apm 下载

在这里插入图片描述

SkyWalking java agent 下载

在这里插入图片描述

部署

将下载的安装包解压到指定目录, 进入目录: C:\soft\skywalking\8x\apache-skywalking-apm-bin

在这里插入图片描述

SkyWalking OAP 搭建

配置文件: config/application.yml
日志文件:logs/skywalking-oap-server.log

重点修改 storage 配置项,通过 storage.selector 配置项来设置具体使用的存储器。
通过修改 core 配置项, 修改 OAP 服务的占用端口

  • core.default.restPort : SkyWalking UI 需要用到的服务端口, 默认为12800
  • core.default.gRPCPort: java-agent 上推应用数据需要要用到的服务端口, 默认为11800
core:selector: ${SW_CORE:default}default:# Mixed: Receive agent data, Level 1 aggregate, Level 2 aggregate# Receiver: Receive agent data, Level 1 aggregate# Aggregator: Level 2 aggregaterole: ${SW_CORE_ROLE:Mixed} # Mixed/Receiver/AggregatorrestHost: ${SW_CORE_REST_HOST:0.0.0.0}restPort: ${SW_CORE_REST_PORT:12800} restContextPath: ${SW_CORE_REST_CONTEXT_PATH:/}restMinThreads: ${SW_CORE_REST_JETTY_MIN_THREADS:1}restMaxThreads: ${SW_CORE_REST_JETTY_MAX_THREADS:200}restIdleTimeOut: ${SW_CORE_REST_JETTY_IDLE_TIMEOUT:30000}restAcceptorPriorityDelta: ${SW_CORE_REST_JETTY_DELTA:0}restAcceptQueueSize: ${SW_CORE_REST_JETTY_QUEUE_SIZE:0}httpMaxRequestHeaderSize: ${SW_CORE_HTTP_MAX_REQUEST_HEADER_SIZE:8192}gRPCHost: ${SW_CORE_GRPC_HOST:0.0.0.0}gRPCPort: ${SW_CORE_GRPC_PORT:11800}maxConcurrentCallsPerConnection: ${SW_CORE_GRPC_MAX_CONCURRENT_CALL:0}maxMessageSize: ${SW_CORE_GRPC_MAX_MESSAGE_SIZE:0}gRPCThreadPoolQueueSize: ${SW_CORE_GRPC_POOL_QUEUE_SIZE:-1}gRPCThreadPoolSize: ${SW_CORE_GRPC_THREAD_POOL_SIZE:-1}gRPCSslEnabled: ${SW_CORE_GRPC_SSL_ENABLED:false}gRPCSslKeyPath: ${SW_CORE_GRPC_SSL_KEY_PATH:""}gRPCSslCertChainPath: ${SW_CORE_GRPC_SSL_CERT_CHAIN_PATH:""}gRPCSslTrustedCAPath: ${SW_CORE_GRPC_SSL_TRUSTED_CA_PATH:""}
storage:# 通过selector 切换数据库, 默认使用 h2selector: ${SW_STORAGE:h2} h2:driver: ${SW_STORAGE_H2_DRIVER:org.h2.jdbcx.JdbcDataSource}url: ${SW_STORAGE_H2_URL:jdbc:h2:mem:skywalking-oap-db;DB_CLOSE_DELAY=-1}user: ${SW_STORAGE_H2_USER:sa}metadataQueryMaxSize: ${SW_STORAGE_H2_QUERY_MAX_SIZE:5000}maxSizeOfArrayColumn: ${SW_STORAGE_MAX_SIZE_OF_ARRAY_COLUMN:20}numOfSearchableValuesPerTag: ${SW_STORAGE_NUM_OF_SEARCHABLE_VALUES_PER_TAG:2}maxSizeOfBatchSql: ${SW_STORAGE_MAX_SIZE_OF_BATCH_SQL:100}asyncBatchPersistentPoolSize: ${SW_STORAGE_ASYNC_BATCH_PERSISTENT_POOL_SIZE:1}

配置修改完成,执行 bin/oapService.bat 启动 OAP 服务, 查看日志出现如下日志,则服务启动成功。

在这里插入图片描述

SkyWalking UI 搭建

配置文件: webapp/webapp.yml

  • server.port : 网页访问的端口, 默认为 8080 ,
  • spring.cloud.discovery.client.instances.-uri : 获取服务信息的地址, 与上述 OAP 的服务端口要保持一致
server:port: 8080spring:cloud:gateway:routes:- id: oap-routeuri: lb://oap-servicepredicates:- Path=/graphql/**discovery:client:simple:instances:oap-service:- uri: http://127.0.0.1:12800# - uri: http://<oap-host-1>:<oap-port1># - uri: http://<oap-host-2>:<oap-port2>mvc:throw-exception-if-no-handler-found: trueweb:resources:add-mappings: truemanagement:server:base-path: /manage

修改完配置文件, 执行 bin/webappService.bat 启动UI服务, 访问 http://localhost:8080

在这里插入图片描述

一键启动

apm 服务的 bin 目录下, 提供了 startup.bat 一键启动 OAP 和 UI 服务

代理

配置应用的代理, 需要用到 下载的 java-agent , 进入解压目录 C:\soft\skywalking\8x\skywalking-agent

配置方式

方式一: 配置文件

配置文件: config/agent.config
日志文件: 默认存储在 logs/skywalking-api.log , 可修改

  • agent.service_name : ui 界面看到的服务名称
  • collector.backend_service :服务信息上推地址(OAP服务地址)
  • logging.file_name:日志目录(可选), 默认值为 skywalking-api.log
agent.service_name=${SW_AGENT_NAME:Your_ApplicationName}
collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:127.0.0.1:11800}
logging.file_name=${SW_LOGGING_FILE_NAME:skywalking-api.log}

启动命令

java -jar -javaagent:your\skywalking-agent.jar youService.jar

例如: java -jar -javaagent:C:\soft\skywalking\8x\skywalking-agent\skywalking-agent.jar demo.jar

方式二: 命令配置

这种方式相对比较便捷, 可以将一个代理包用于多个应用,动态配置

java -jar -javaagent:your\skywalking-agent.jar -Dskywalking.agent.service_name=your_server -Dskywalking.collector.backend_service=127.0.0.1:11800 -Dskywalking.logging.file_name=demo-skywalking-api.log demo.jar 

例如: java -jar -javaagent:C:\soft\skywalking\8x\skywalking-agent\skywalking-agent.jar -Dskywalking.agent.service_name=demo -Dskywalking.collector.backend_service=127.0.0.1:11800 -Dskywalking.logging.file_name=demo-skywalking-api.log demo.jar

IDEA 配置

配置 VM options 参数

-javaagent:C:/soft/skywalking/8x/skywalking-agent/skywalking-agent.jar -Dskywalking.agent.service_name=demo-server -Dskywalking.collector.backend_service=127.0.0.1:11800 -Dskywalking.logging.file_name=demo-skywalking-api.log

在这里插入图片描述

Tomcat 配置

//Catalina.bat首行添加
set "CATALINA_OPTS=-javaagent:C:/soft/skywalking/8x/skywalking-agent/skywalking-agent.jar"

监控展示

启动成功,可以在UI 看到对应的服务

  • 当前服务: demo
  • 当前实例: uuid@服务IP

在这里插入图片描述

如此简单的监控就搭建好了, 可以在web页面明显的看到应用各指标情况。

在这里插入图片描述

相关文章:

  • 3DS 转换为 STP 全攻略:迪威模型网在线转换详解
  • OpenAI 如何在激烈的AI人才争夺战中抢占先机?
  • 视频或视频流和帧的关系?怎么理解?
  • MATLAB R2025a安装教程
  • 2025 MWC 上海盛大开幕,聚焦AI、5G-Advanced及开放API
  • Git工作流程及使用规范
  • GoByExample简单应用
  • Vue3 项目国际化实践
  • 标杆确立!永洪科技位于IDC报告Data Analytics领域象限排头位!
  • Oracle 查看所有表的字段名、数据类型及长度
  • Android软件适配遥控器需求-案例经验分享
  • opencv的setDefaultAllocator使用
  • MySQL 数据处理函数全面详解
  • PCB设计实践(三十六)PCB设计新手系统性注意事项总结
  • 自演进多智能体在医疗临床诊疗动态场景中的应用
  • ATX电源
  • 关于Github可连接时长问题的实验
  • html中的盒子标签div标签,有序列表,无序列表
  • Nginx转发中相对路径资源302问题的分析与解决
  • Keepalived+LVS高可用集群
  • 上海网站设计找哪家/如何做好网上销售
  • 建设掌上银行官方网站/免费web服务器网站
  • 个性flash网站/海外黄冈网站推广
  • 如何用2级域名做网站/北京百度搜索优化
  • 手机网站表单页面制作/企业网站推广策略
  • wap网站部署/室内设计培训班学费一般多少