可以通过ApplicationStartup的子类跟踪应用程序的启动,并把信息记录到指定的位置,比如磁盘文件。
例如,用BufferingApplicationStartup对应用程序的启动进行跟踪,并记录到文件。
启动类代码如下:
package cn.edu.tju;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.metrics.buffering.BufferingApplicationStartup;
@SpringBootApplication
public class Start7 {
public static void main(String[] args) {
SpringApplication application = new SpringApplication(Start7.class);
application.setApplicationStartup(new BufferingApplicationStartup(4096));
application.run(args);
}
}
打成jar包后运行:
java -XX:StartFlightRecording:filename=recording.jfr,duration=10s -jar D:\springboot266\target\springboot266-1.0-SNAPSHOT.jar --username=newton
输出结果类似如下: