在服务器启动或关闭时进行测试

时间:2013-09-15 19:00:54

标签: java ssh

我正在尝试测试服务器是否可以访问。我使用ssh从不同的服务器拖尾日志文件,并使用来自以下web http://www.ganymed.ethz.ch/ssh2/的java Ganymed连接到服务器。所以我试图找到一种ping服务器的简单方法,因为我想向用户显示上下服务器的列表,以便他们在尝试在服务器上拖尾日志文件时知道它们的状态。

任何光线都会受到高度赞赏。我也尝试过使用JPingy,但我不确定它是否符合我的要求,因为我将长消息作为例外。有什么我可以用来测试一些服务器是否可以访问,所以我可以更新用户的状态? 以下是我在JPingy示例中使用的代码,它向我展示了一些我不理解的奇怪消息。

public class Main {

public static void main(String[] args) {

    PingArguments arguments = new PingArguments.Builder().url("google.com")
            .timeout(5000).bytes(32).build();

    PingResult results = Ping.ping(arguments, Backend.UNIX);

    System.out.println(results.ttl());
    System.out.println(results.rtt_min());
    System.out.println(results.received());

}

}

我得到的例外是以下

    java.lang.ArrayIndexOutOfBoundsException: 1
at com.googlecode.jpingy.UnixPingResult.matchReceived(UnixPingResult.java:52)
at com.googlecode.jpingy.PingResult.<init>(PingResult.java:79)
at com.googlecode.jpingy.UnixPingResult.<init>(UnixPingResult.java:29)
at com.googlecode.jpingy.Ping$Backend$1.getResult(Ping.java:31)
at com.googlecode.jpingy.Ping.ping(Ping.java:59)
at Main.main(Main.java:13) 

    Exception in thread "main" java.lang.NullPointerException
at Main.main(Main.java:15)

非常感谢任何类型的帮助,是否可以使用其他库来返回true或false?

1 个答案:

答案 0 :(得分:0)

尝试以下问题,这似乎与您的问题类似。

How to check server is up?