> 文档中心 > 下班前10分钟光速安装skywalking并解决报错

下班前10分钟光速安装skywalking并解决报错

看标题就知道我当时慌的一批

下载方式

可以从官网下载apache-skywalking-apm-$version.tar.gz包。在windows或linux下都可以解压,因为运行参数需要指定里面的jar包,建议在开发环境也搞一个。

Windows下载解压后(.tar.gz),直接点击bin/startup.bat就可以运行,但我们需要配置些东西,我在下面结合报错说。这个时候实际上是启动了两个项目,一个收集器collector(11800端口,供java项目连接用),一个web监控页面,默认8080端口。
进入解压目录,果不其然,就像许多springcloud组件一样,skywalking监控页面也是基于springboot的。根据约定大于配置的思想,很容易就理解项目结构了。
我的版本是8.3.0
修改监控页面端口
如有需要,修改webapp目录下的webapp.yml文件。8080端口竟然被占用,我们要把端口号调教成我们的形状。(我随手弄了个8079先用着)。

苦命鸳鸯双双启动失败doge

  • 适用症状
    • windows下表现为两个命令行端口闪现
    • linux下脚本输出启动成功,通过netstat或jps命令却发现没有进程

解决方法:
安装目录不要有中文空格

监控页面500,配置数据库

  • 适用症状
    collector没有成功启动,可以看到监控页面的springboot窗口,但另一个窗口闪现一下就消失了。

  • 原因

我的情况是没有改配置就直接启动了。collector的配置文件在config文件夹下的application.yml中。
此时需要修改的只有一项:存储配置。skywalking需要有一个地方存放数据,现在常用的是ES7,不过我当时只有mysql。
直接ctrl+F查找storage,该配置下第一行为

selector: ${SW_STORAGE:es7}

我们将es7改为mysql(如果你这会儿不用ES7的话),让skywalking选择用mysql存储,然后在下面找到mysql的配置,修改连接属性。
其他不需要的数据库选项可以先用#注释或直接删除,当然放着不管也没啥事。

mysql:    properties:      jdbcUrl: ${SW_JDBC_URL:"jdbc:mysql://localhost:3306/skywalking?serverTimezone=Asia/Shanghai"}      dataSource.user: ${SW_DATA_SOURCE_USER:root}      dataSource.password: ${SW_DATA_SOURCE_PASSWORD:密码}

修改对应项即可,其他不用管。要连接的数据库需要自己手动新建。
然后启动即可在浏览器访问到监控页面。

然后,本身skywalking没有添加支持mysql的依赖,我们要把mysql-connector-java的jar包放在oap-libs目录下。

java项目启动参数配置

idea顶端运行按钮旁边,编辑运行配置Edit Configuration,
编辑VM Options
下班前10分钟光速安装skywalking并解决报错

-javaagent:E:\apache-skywalking-apm-bin\agent\skywalking-agent.jar-Dskywalking.agent.service_name=当前微服务的名称,随便写-Dskywalking.agent.collector.backend_service=localhost:11800

百科名医