线上出问题?远程DeBug会吗?| Java随笔记

「这是我参与11月更文挑战的第18天,活动详情查看:2021最后一次更文挑战


相关文章

Java随笔记:Java随笔记


  • 唉。。。又是陈年老文章。。水的我老脸都不知道往哪里放了。。。
  • 本地我们启动一个jar包怎么启动?
    • 简单 java -jar 包名即可。
    • 那服务器上呢?java -jar 是控制台启动哦,当我们关闭进程的时候,服务同样也暂停了。
    • 当然我们也可以使用nohub来进行后台启动。但是,shell脚本不是更香嘛!
    • ./start.sh 一键启动jar包,完美!

1)服务器目录结构如下:

目录结构

2)打开start.sh文件,代码如下:

 nohup java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8989,suspend=n -jar sdkclient-0.0.2-SNAPSHOT.jar -Dspring.config.location=application.yml &
复制代码
  • 以下都为同目录级别下设置:

    • nohup :日志设置,运行时将日志保存在nohup.out文件下。
    • java -jar 【jar包名】 :启动该jar包服务
    • Xdebug :设置支持远程debug,设置端口后,可在本地idea上打断点,查看断点日志

3) 远程DeBug

  • 远程断点方法:edit configuration --> Remote --> Host 【设置远程服务器IP】--> Port 【端口号】--> ok
  • 如下图所示: 设置图

    • address = 【端口号】 :该端口设置后,在本地可用idea远程该服务器服务
  • 远程DeBug的用处真的挺多的,有时候线上和开发环境并不是完全一致的。

  • 我们在开发环境中一切都是好好地,但是一到线上就出问题,这个时候我们看日志可能定位较慢,但是想快速定位该怎么办?

  • 远程DeBug来一手,瞬间解决问题!

  • Dspring.config.location = 【application.yml】 设置服务端所使用的yml文件依赖

4)启动

  • 进入该脚本目录下,输入:./start.sh 启动该脚本

5)本地也可以这样启动

  • 在该脚本目录下,鼠标右键,使用终端打开:
  • 输入:java -jar 【jar包名】 如下: 启动该项目服务 运行成功显示效果

    • 出现以上代码,表示启动成功。接下来就可以访问该服务了。

路漫漫其修远兮,吾必将上下求索~

如果你认为i博主写的不错!写作不易,请点赞、关注、评论给博主一个鼓励吧~hahah

猜你喜欢

转载自juejin.im/post/7032614232005083173