调试Java进程在1小时内被终止

调试Java进程在1小时内被终止,java,amazon-ssm-agent,Java,Amazon Ssm Agent,我正在开发一个Java服务,需要使用python脚本调用它,有点像这样: def start_java_service(self, set_id): p = subprocess.Popen(['nohup', 'java', '-jar', 'SetProcessor.jar', set_id], cwd='/path/to/jar/directory') 此python脚本将由Amazon SSM代理调用。问题是,一旦Java服务完成1小时的执行,它就会自动终止 有

我正在开发一个Java服务,需要使用python脚本调用它,有点像这样:

def start_java_service(self, set_id):
            p = subprocess.Popen(['nohup', 'java', '-jar', 'SetProcessor.jar', set_id], cwd='/path/to/jar/directory')
此python脚本将由Amazon SSM代理调用。问题是,一旦Java服务完成1小时的执行,它就会自动终止

有人能帮我调试这个问题的步骤吗

编辑


我发现,如果我自己运行Java服务,它就可以正常工作。但是,如果它被SSM调用,它在1小时后被杀死,可能有各种原因

  • 最常见的问题是占用太多内存,这可能会触发操作系统终止进程:要解决此问题,只需运行一个

    dmesg | grep“终止进程”

为了更好地理解内存的去向,可以使用jmap

  • 另一个原因可能是由于未命名的异常。在这种情况下,请确保您正在检查日志

我试图放慢Java进程的速度,如果可能出现异常,它不会在每次1小时后出现。在/var/log/amazon/ssm/amazon-ssm-agent.log或/var/log/amazon/ssm/errors.log中有任何有用的信息吗