本地调试远程服务

news/2024/11/6 0:47:43/文章来源:https://www.cnblogs.com/KingArmy/p/18526067

1、场景

​ 通常来说我们的服务都是部署在各种远程服务器上的,本地开发完成部署到服务器长期运行。当线上出现问题的时候,或者远程出现问题的时候我们经常需要打印一些日志来判断问题所在。还有一种情况是本地开发环境正常,但是部署到远程环境就会出现各种神奇的问题,这个时候去如果只在本地看代码或者纯看日志会比较麻烦。这个时候我们就可以使用远程Debug方式进行远程调试,不用频繁的修改/部署到远程服务器上这样调试

​ 要远程调试,需要远程服务开启远程调试,然后本地去连接远程服务进行debug

2、远程服务配置

​ 远程调试是需要手动开启的,所以一般来说是关闭的。当我们需要使用的时候通过设置JVM启动参数来实现。在启动的时候添加下面这些参数

启动添加以下参数:
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005(debug监听端口号)参数解释:
-agentlib:jdwp:指定使用Java调试代理库(Java Debug Wire Protocol)进行调试
transport=dt_socket:指定调试连接的传输方式为套接字(socket)
server=y:表示服务器模式,即允许远程调试连接
suspend=n:设置为y,表示在调试客户端连接之前,JVM会暂停执行;设置为n,表示即使没有调试客户端连接,JVM也会继续执行
address=5005:指定调试连接的端口号为5005

如下图:

通过将这个配置字符串添加到 Java 启动命令中,可以在服务器上启用远程调试,并允许通过指定的端口进行连接。在本地开发环境中,可以使用相应的调试工具(如 IDE)连接到服务器上的调试端口,进行远程调试。注意确保服务器和本地开发环境之间的网络连接正常,并且防火墙设置允许远程调试连接。

3、本地配置

需要在本地机器上的5005端口监听调试请求,以idea举例,可以这样启动Java程序

设置远程服务的IP和我们在服务端配置的端口

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005

4、本地调试

打开本地开发环境,连接远程环境

直接使用swagger请求远程的借口

我们就可以在本地调试远程服务了

有兴趣可以关注公众号,新博客第一时间先发布公众号后才会同步博客园

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/826760.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

把握人工智能行业脉搏!全球最值得关注的7大AI资讯平台

序言:全球顶级的人工智能资讯网站都是以英文语言为主,如果大家看不懂,没关系,作者教大家一个技巧,用人工智能直接帮您看,然后直接让AI解析出您关注的重点内容给您,如果想了解详细信息,让人工智能一字不漏的翻译给你,就这么简单粗暴。在瞬息万变的人工智能领域,获取最…

Hadoop高可用搭建

搭建前准备(检查是否满足以下条件) 1、关防火墙 service firewalld stop2、时间同步 yum install ntp ntpdate -u s2c.time.edu.cn 或者 date -s 201805033、免密钥 (远程执行命令) 在两个主节点生成密钥文件 ssh-keygen -t rsa ssh-copy-id ipmaster-->master,node1,no…

【bypass系列】绕过命令过滤器:探索Unix/Linux中的Bypass技术

原创 visionsec 安全视安免责声明 该公众号分享的安全工具和项目均来源于网络,仅供安全研究与学习之用,如用于其他用途,由使用者承担全部法律及连带责任,与工具作者和本公众号无关。在Unix或Linux系统的安全测试和网络防御中,了解如何绕过命令过滤器是非常重要的。今天,我…

群晖数据自动同步百度云盘

1、在群晖后台打开应用 Cloud Sync应用(没有需自己安装)。 2、选择百度云 3、这里需要注意下,同步实际上是以下这两个文件夹同步,并不是百度云的根目录, 1、群辉nas:/homes/zhanglei/百度网盘 2、百度网盘:我的应用数据 ->Cloud Sync 另外建议:设置中的同步方向修改…

PVE 虚拟机 Ubuntu Server安装FTP功能

Ubuntu Server 18.04安装完成后,SSH功能默认已安装,可以通过22端口直接访问, 但FTP功能默认未安装,需要自己手动安装并配置参数文件,具体步骤如下。1、更新软件包列表:sudo apt update2、安装vsftpdsudo apt install vsftpd3、备份原始配置文件(可选)sudo cp /etc/vsft…

Linux系统压力测试工具(命令行工具)

Linux的命令行压力测试工具在做基准测试时很有用,通过基准测试对了解一个系统所能达到的最大性能指标,这些指标可以作为后续性能比较、优化评估的参考依据。 模拟CPU压力: 可以使用stress命令使CPU处于高负载状态。例如,通过stress -c 4命令(-c选项用于指定CPU核心数),会…

实景三维赋能森林防灭火指挥调度智慧化

森林防灭火工作是保护森林资源和生态环境的重要任务。随着信息技术的发展,实景三维技术在森林防灭火指挥调度中的应用日益广泛,为提升防灭火工作的效率和效果提供了有力支持。一、森林防灭火面临的挑战森林火灾具有突发性强、破坏性大、蔓延速度快、扑救困难等特点。传统的防…

java中的Math.round(-1.5)等于多少

-1 等于 -1,因为在数轴上取值时,中间值(0.5)向右取整,所以正 0.5 是往上取整,负 0.5 是直接舍弃。(观点不认同) Math提供了三个与取整有关的方法:ceil、floor、round (1)ceil:向上取整; (2)floor:向下取整; (3)round:四舍五入; 1、ceil:向上取整 向上取整…

Electron: 渲染器进程到主进程(双向)

双向IPC的一个常见应用:从渲染器进程代码调用主进程模块并等待结果 【ipcRenderer.invoke】《==============》【ipcMain.handle()】main.js const { app, BrowserWindow, ipcMain, dialog } = require(electron/main) const path = require(node:path)async function handleF…

关于如何根据shp文件筛选csv某个省份数据集

问题描述:现在我有一个中国地图的shp文件和一个全球降水数据的csv文件,我只想要四川省份的降水数据,该如何得到。中国地图 中国全球降雨数据格式点击查看代码 import geopandas as gpd import pandas as pd shp = gpd.read_file(r.\中华人民共和国\中华人民共和国.shp,en…

数据采集作业3

课程链接 https://edu.cnblogs.com/campus/fzu/2024DataCollectionandFusiontechnology作业链接 https://edu.cnblogs.com/campus/fzu/2024DataCollectionandFusiontechnology/homework/13287实验三仓库链接 https://gitee.com/wd_b/party-soldier-data-collection/tree/master…