在windows下安装配置skywalking

1.下载地址

Downloads | Apache SkyWalkinghttp://skywalking.apache.org/downloads/

2.文件目录说明

将文件解压后,可看到agent和bin目录:

Agent:作为探针,安装在服务器端,进行数据采集和上报。

Config:作为后端服务的配置,将采集的信息存在mysql,h2,elasticsearch中。

Bin:在该目录中有oapservice就是backend的后端服务和webappservice就是ui界面的服务

Webapp:启动ui的安装包

3.backend和ui配置

3.1配置application.yml文件

使用mysql存储采集的数据信息,将其他的存储配置信息注释,注释有elasticsearch,h2,elasticsearch7,influxdb

复制代码
配置信息如下:
 selector: ${SW_STORAGE:mysql}
  mysql:
    properties:
      jdbcUrl: ${SW_JDBC_URL:"jdbc:mysql://localhost:3307/swtest"}
      dataSource.user: ${SW_DATA_SOURCE_USER:root}
      dataSource.password: ${SW_DATA_SOURCE_PASSWORD:root}
      dataSource.cachePrepStmts: ${SW_DATA_SOURCE_CACHE_PREP_STMTS:true}
      dataSource.prepStmtCacheSize:
${SW_DATA_SOURCE_PREP_STMT_CACHE_SQL_SIZE:250}
      dataSource.prepStmtCacheSqlLimit: 
${SW_DATA_SOURCE_PREP_STMT_CACHE_SQL_LIMIT:2048}
      dataSource.useServerPrepStmts: ${SW_DATA_SOURCE_USE_SERVER_PREP_STMTS:true}
      metadataQueryMaxSize: ${SW_STORAGE_MYSQL_QUERY_MAX_SIZE:5000}

3.2配置webapp.yml文件

为了避免端口冲突,在webapp目录下找到webapp.yml文件,可修改端口号即可。

server:

port: 8090

4.启动backend和UI服务

进入到C:\skywalking8.1\apache-skywalking-apm-bin\bin目录下,运行statup.bat文件,可同时启动backend和ui服务。

使用管理员模式打开命令窗口,进入到bin目录下,输入startup.bat后,启动backend和ui服务。

5.配置agent

5.1目录说明

Config:配置文件目录

Plugins:所有插件的目录,该目录下的所有插件都生效。

Optional plugins:可选插件的目录

Log:日志文件目录

5.2配置agent.config文件

进入到C:\skywalking8.1\apache-skywalking-apm-bin\agent\config目录中,找到agent.conf文件进行修改如下:

agent.service_name=${SW_AGENT_NAME:tomcat_application}

collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:127.0.0.1:11800}

agent.service_name:可自定义服务名称

collector.backend_service:需要backend服务的IP和端口对应,可参考config目录下的

Application.yml文件的gRPCHost和gRPCPort字段的配置,由于agent和backend都在本地,所以不用修改ip和端口。

5.3启动agent服务

5.3.1配置catalina.bat文件

进入到tomcat的bin目录,编辑catalina.bat文件,在文件的首行添加以下代码:

set "CATALINA_OPTS=

-javaagent:C:\skywalking8.1\apache-skywalking-apm-bin\agent\skywalking-agent.jar"

添加代码的文件就是skywalking-agent.jar探针文件的位置

5.3.2修改tomcat-user.xml文件

进入到tomcat的conf目录,编辑tomcat-user.xml文件,添加代码以便打开tomcat时输入用户密码可以访问url:

<role rolename="manager-gui"/>

<user username="tomcat" password="admin" roles="manager-gui"/>

5.3.3修改server.xml文件

进入到tomcat的conf目录,修改server.xml文件,修改port端口,避免启动tomcat服务出现端口冲突。

5.3.4启动tomcat服务

使用管理员模式,打开cmd窗口,进入到tomcat的bin目录中,输入startup.bat命令,启动tomcat.

在浏览器中输入,http://localhost:8088/进行登录后,进入到tomcat管理界面中。

6.查看skywalking的UI界面

在浏览器中输入http://localhost:8090/后,打开监控界面,查看监控的agent信息。

7.附加说明

1.在bin目录中启动startup.bat出现闪退,为什么没法启动服务。

答:是由于startup.bat的文件目录放在C:\Program Files下导致的,目录名称不能包含空格。

2.Log目录下查看日志文件显示Failed to get driver instance for jdbcUrl

复制代码
java.lang.RuntimeException: Failed to get driver instance for 
jdbcUrl=jdbc:mysql://localhost:3307/swtest
	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:110) ~[HikariCP-3.1.0.jar:?]
	at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:334) ~[HikariCP-3.1.0.jar:?]
	at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:109) ~[HikariCP-3.1.0.jar:?]
	at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:108) ~[HikariCP-3.1.0.jar:?]
	at com.zaxxer.hikari.HikariDataSource.<init>(HikariDataSource.java:81) ~[HikariCP-3.1.0.jar:?]
	at org.apache.skywalking.oap.server.library.client.jdbc.hikaricp.JDBCHikariCPClient.connect(JDBCHikariCPClient.java:49) ~[library-client-8.0.1.jar:8.0.1]
	at org.apache.skywalking.oap.server.storage.plugin.jdbc.mysql.MySQLStorageProvider.start(MySQLStorageProvider.java:125) ~[storage-jdbc-hikaricp-plugin-8.0.1.jar:8.0.1]
	at org.apache.skywalking.oap.server.library.module.BootstrapFlow.start(BootstrapFlow.java:58) ~[library-module-8.0.1.jar:8.0.1]
	at org.apache.skywalking.oap.server.library.module.ModuleManager.init(ModuleManager.java:69) ~[library-module-8.0.1.jar:8.0.1]
	at org.apache.skywalking.oap.server.starter.OAPServerBootstrap.start(OAPServerBootstrap.java:43) [server-bootstrap-8.0.1.jar:8.0.1]
	at org.apache.skywalking.oap.server.starter.OAPServerStartUp.main(OAPServerStartUp.java:26) [server-starter-8.0.1.jar:8.0.1]
Caused by: java.sql.SQLException: No suitable driver
	at java.sql.DriverManager.getDriver(DriverManager.java:298) ~[java.sql:?]
	at com.zaxxer.hikari.util.DriverDataSource.<init>(DriverDataSource.java:103) ~[HikariCP-3.1.0.jar:?]
	... 10 more

解决方法:

C:\skywalking8.1\apache-skywalking-apm-bin\oap-libs目录下放入

mysql-connector-java-8.0.21.jar文件

3.启动bin目录下的startup.bat时,logs目录显示skywalking-oap-server.log的文件显示Caused by: java.sql.SQLSyntaxErrorException:Unknown database 'swtest'

答:由于没有创建swtest数据,导致出现该错误,需要手动创建数据库,数据库的表会自动创建成功。

相关推荐
dgvri5 天前
Skywalking介绍,Skywalking 9.4 安装,SpringBoot集成Skywalking
spring boot·后端·skywalking
rOuN STAT6 天前
Skywalking介绍,Skywalking 9.4 安装,SpringBoot集成Skywalking
spring boot·后端·skywalking
危笑ioi6 天前
helm部署skywalking链路追踪 java
java·开发语言·skywalking
MmeD UCIZ7 天前
Skywalking介绍,Skywalking 9.4 安装,SpringBoot集成Skywalking
spring boot·后端·skywalking
专注API从业者7 天前
淘宝 API 调用链路追踪实战:基于 SkyWalking/Pinpoint 的全链路监控搭建
大数据·开发语言·数据库·skywalking
MMMMMMMMMMemory8 天前
记录skywalking预警如何处理401问题
skywalking
SoulRoar.8 天前
Armbian离线安装ES+SkyWalking并注册系统服务
大数据·elasticsearch·skywalking
@土豆9 天前
Java JVM参数环境变量详解及SkyWalking Agent集成技术文档
java·jvm·skywalking
NCIN EXPE9 天前
SpringBoot教程(三十二) SpringBoot集成Skywalking链路跟踪
spring boot·后端·skywalking
enjoy编程9 天前
SkyWalking 分布式追踪、APM学习-I
skywalking