前言
| 類型 | 版本 |
|---|---|
| 操作系統 | Mac os / Linux |
| IDEA | 2019.03 |
Jvm-Sandbox-Repeater部署
1、下載源碼
git clone https://github.com/alibaba/jvm-sandbox-repeater
2、調整 console 工程中MySQL 的數據庫配置信息
#repeater-console/repeater-console-start/src/main/resources/application.properties
# 本地mysql數據源測試
spring.datasource.url=jdbc:mysql://localhost:3306/repeater?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=xxxxx
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect
spring.jpa.show-sql=false
spring.jpa.hibernate.ddl-auto=none
3、初始化數據庫
repeater-console/repeater-console-dal/src/main/resources/database.sql
4、修改官方 Console 源碼問題
1) 把 repeater-console/repeater-console-start/src/main/resources/velocity 下面的所有文件,查找 #parse("/blocks ,統一改替換為 #parse("blocks ;
2) 修改 repeater-console/repeater-console-start/src/main/java/com/alibaba/repeater/console/start/controller/page/ReplayController.java 中的 return "/replay/detail"; ,改為 return "replay/detail";
3) 修改 repeater-console/repeater-console-start/src/main/java/com/alibaba/repeater/console/start/controller/test/RegressPageController.java 中的 return "/regress/index"; ,改為 return "regress/index"。
5、編譯並啟動 Console
# 在 repeater 項目根目錄進行
mvn install -DskipTests && java -jar repeater-console/repeater-console-start/target/*.jar
6、安裝 repeater
# 再 repeater 項目根目錄得 bin 目錄下執行
cd bin
sh install-repeater.sh
7、啟動被測程序
# 下載源碼
git clone https://github.com/chenhengjie123/gs-rest-service
# 在示例項目 clone 后的根目錄中運行
cd complete
mvn install && java -jar target/*.jar
8、啟動 Sandbox attch 被測程序
sh ~/sandbox/bin/sandbox.sh -p `ps -ef | grep "target/gs-rest-service-0.1.0.jar" | grep -v grep | awk '{print $2}'` -P 12580
9、進入前端配置頁面
http://127.0.0.1:8001/regress/index.htm
10、進入配置管理,添加信息
應用名:unknown
環境名:unknown
{
"useTtl" : true,
"degrade" : false,
"exceptionThreshold" : 1000,
"sampleRate" : 10000,
"pluginsPath" : null,
"httpEntrancePatterns" : [ "^/greeting.*$" ],
"javaEntranceBehaviors" : [ {
"classPattern" : "hello.GreetingController",
"methodPatterns" : [ "greeting" ],
"includeSubClasses" : false
} ],
"javaSubInvokeBehaviors" : [],
"pluginIdentities" : [ "http", "java-entrance", "java-subInvoke", "mybatis", "ibatis" ],
"repeatIdentities" : [ "java", "http" ]
}

11、查看在線模塊,可以看到被監控信息

12、發送請求
curl -s 'http://localhost:8080/greeting'
curl -s 'http://localhost:8080/greeting?name=User'
13、進入在線流量,查看錄制得數據

