Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在EC2实例上运行和监视Java_Java_Ssh_Amazon Ec2_Cloud - Fatal编程技术网

在EC2实例上运行和监视Java

在EC2实例上运行和监视Java,java,ssh,amazon-ec2,cloud,Java,Ssh,Amazon Ec2,Cloud,我目前正在进行我的第一个大型服务器端应用程序的部署,该应用程序是用Java编写的。有一个连续的控制台输出,我想偶尔监视和验证它是否正在运行,如果它因任何原因崩溃,理想情况下会收到警报 如果我使用SSH连接到服务器并执行可执行文件,然后注销该会话,我相信它会终止该可执行文件。那么,如何启动可执行文件并允许它运行,即使我的客户端计算机没有全天候登录?当我想看到可执行文件的输出时,我能点击它吗 我有一个通过AWS设置的基本警报,如果网络流量下降到2kb/s以下,它将向我发出警报。除此之外,我还可以设置

我目前正在进行我的第一个大型服务器端应用程序的部署,该应用程序是用Java编写的。有一个连续的控制台输出,我想偶尔监视和验证它是否正在运行,如果它因任何原因崩溃,理想情况下会收到警报

如果我使用SSH连接到服务器并执行可执行文件,然后注销该会话,我相信它会终止该可执行文件。那么,如何启动可执行文件并允许它运行,即使我的客户端计算机没有全天候登录?当我想看到可执行文件的输出时,我能点击它吗


我有一个通过AWS设置的基本警报,如果网络流量下降到2kb/s以下,它将向我发出警报。除此之外,我还可以设置什么?

使用screen()或Byobu()允许进程在您注销时继续运行。您可以在重新登录时重新连接到会话。你可以在谷歌上搜索你选择的教程;有很多。

好吧,你最好的选择是使用
nohup
(和)。它允许运行命令、退出并在
nohup.log
文件中查看进程的输出


由于这是一个标准命令,它已经在任何linux发行版上可用(无需安装任何东西)。

如上述文章所述。如果您的服务器是Linux机器,则始终可以执行nohup commandname.sh&这将把您的执行日志附加到nohup日志中。因此,您可以随时关闭控制台并重新登录,然后转到nohup文件的位置并查看tail-f nohup.out。

与AWS无关。您可以将EC2实例假定为远程计算机。如果是基于Unix的机器。很简单。SSH连接到您的计算机并

  • 按以下方式运行可执行文件:

    sudo nohup /path/to/my/exec > /path/to/log/file.log &
    
  • 如果您想要查看SSH到机器的输出并使用
    vi

    vi /path/to/log/file.log
    
    要查看运行日志,请使用
    tail

    tail -f /path/to/log/file.log