2012-07-05 54 views
1

我们在AIX UNIX上运行Progress appservers(OE 10.0B05),我想写一些代码来检查它们是否已启动并正在运行。检查应用程序服务器的代码将从WIN2008服务器运行。我可以在WIN2008服务器上调用Progress Explorer来检查appservers的状态,但是我需要编写一些代码来以编程方式检查它们的状态。远程进行测试AppServer /数据库的可用性4GL

有什么方法可以通过程序检查我的AIX UNIX进程应用程序服务器是否已启动并从远程WIN2008服务器上运行?

+0

你想知道aix服务器是否在运行?或者如果该AIX服务器上的特定Progress App Server正在运行?你在标题中提到了db的可用性,但不是在问题中 - 你是否需要知道关于db的一些信息? – 2012-07-05 18:59:48

+0

我不是OP,但我有兴趣能够查询应用服务器的状态,如活动客户端的数量,正在服务的请求,队列中的请求,平均数。等待时间等......这是可行的吗? – 2012-07-05 19:02:11

+0

@TomBascom - 我想知道AIX系统上的特定Progress App Server是否已启动并正在运行。除了Tim建议打开套接字连接之外,您还有其他想法吗?我希望Progress具有某种类型的工具,可以以编程方式实例化以返回应用程序服务器状态信息。 – pmartin 2012-07-05 20:39:38

回答

2

要获取应用程序服务器状态信息,您可以使用“asbman”。

要远程获取它,您需要一些方法来调用远程进程并返回一个值。我是一个unix的人,所以我通常使用“ssh”来处理这类事情。

有SSH的Windows版本(请查看PuTTY套件以获得非常好的免费选项)。如果您将其设置为使用预共享密钥或“代理”,则不会出现凌乱的登录提示。喜欢的东西(未经测试):

砰砰-i sshkey.ppk [email protected] “asbman -name APPSERVER -query”

“asbman” 还支持-host和-port参数,如果你碰巧有它运行在您想要查询的窗口框上。

+0

是的,我知道关于“asbman”,我希望appservers提供JMX支持或类似的东西,尽管... – 2012-07-05 21:50:34

+0

@pmartin下面是对asbman的简要介绍:http://cronostech.wordpress.com/2011/04/ 27/checking-application-servers-state/- 你可能需要用Perl,Python或其他方法构建一些东西,以便根据请求启动它,并解析你想返回给调用者的信息。 – 2012-07-06 07:51:26

+0

原帖是指10.05B - 这看起来可能是一个错字。如果它实际上是10.0系列中的某个地方(也许是10.0B5?),那么几乎没有机会。如果实际上是10.2B05,那么/可能/有什么东西 - PSC确实最近将对Actional“拦截器”的支持放入了应用程序服务器中(我不确定10.2B是否做出了裁减或者它是否是OE11的东西)。我根本没有查看过细节,但是可能与JMX之类的东西有关。所以如果你在10.2B或更好的话,你可能会想要追求。 – 2012-07-06 13:08:07

0

如果你有一个可以打开套接字连接的小程序,那可以。如果程序可以打开一个套接字,则可以合理确信应用程序服务器正在运行。

您可以使用ABL SOCKET功能来执行此操作。否则,任何其他程序,可以打开远程计算机上的套接字,然后关闭它将工作.b