【问题标题】:Test when server is up or down测试服务器何时启动或关闭
【发布时间】:2013-09-15 19:00:53
【问题描述】:

我正在尝试测试服务器是否可访问。我正在使用 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)

非常感谢任何形式的帮助,是否可以返回真或假以使用其他库进行连接?

【问题讨论】:

  • 请将您从 JPingy 收到的消息添加到您的问题中。
  • 嗨 Ireeder,感谢您的快速回复,我更新了例外情况。
  • JPingy only supports Linux and Android。我怀疑您在 Windows 上使用它 - 当我在 Windows 上运行您的代码时,我遇到了与您相同的错误。
  • 嗨,卢克,谢谢你的回复,现在我明白为什么没有 Backend.Windows 参数了,因为我正忙着解决这个问题,非常感谢你的回复,你是对的,我正在使用 Windows,所以没有其他我可以使用的库可以简单地测试java中服务器的可达性
  • 我不知道任何可以执行 ping 的 Java 库。在 Windows 上执行此操作的常用方法是在子进程中运行 ping.exe,但这种方法很难描述为简单。

标签: java ssh


【解决方案1】:

尝试以下问题,它似乎与您的问题相似。

How to check server is up?

【讨论】:

  • 您好 Ederollora,感谢您的快速回复,我将通过链接返回给您,告诉您它是否有效。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-05
  • 2013-02-03
  • 2022-11-30
  • 1970-01-01
  • 2022-01-23
  • 1970-01-01
  • 2019-01-18
相关资源
最近更新 更多