SPAN8.
SPAN4.
你好,
刚刚想知道什么是使用REST API(V3)所需的最小操作,以测试FME服务器实例是否可用于处理作业?
例如,成功响应了“获取信息”请求告诉我多少钱?是否只是运行FME服务器Web服务(即Tomcat)或者这意味着FME服务器可以接受请求吗?
“获取存储库”请求告诉我更多吗?
我问的原因是我将使用3rd.派对应用程序来监控FME服务器,并告诉我是否变得不可用。我可以通过提交的工作请求编写一个非常最小的FME工作区 - 这显然会告诉我我需要知道的东西 - 但是不愿意将发动机捆绑在杂散的工作要求中。为了有用,我需要频繁地轮询FME服务器。
谢谢,
n
我们在安全的时候与家伙打了一个电话,并谈到这一点,在其他项目中。亚搏在线我随后收到了一封电子邮件,其中包含以下信息。事实证明,有一个无证的REST API调用,可以做出快速的“健康检查”以查看服务是否正在运行,但它仍然没有测试完整的工作处理能力。无论如何,他们的回应很有趣,并在各种各样的电话以及他们正在检查的内容提供一些进一步的背景......
正如我们今天的电话所讨论的那样,这是FME源的REST端点,以便进行健康检查:
这是我们用于检查我们的FME云实例是否已启动和运行的端点。但是,如果这是你在寻找的话,我就不100%了。我与开发人员进行了讨论,事实证明,此调用只需检查REST API WebApp是运行的。它没有告诉你:
1. FME核心进程是否正在运行
2. FME发动机进程运行
因此,指示是否可以处理作业。
/ fmerest / v3 / healthcheck端点将返回HTTP 200响应代码或根本不响应。
呼叫
将指示FME核心进程是否已启动,因为它调用此过程。也就是说,我们不建议经常打击这个端点,因为它是单线线的,并且可以在过程上放大很多负载。这是我们使用HealthCheck端点的实际原因。
这/ FMEREST / V3 / INFO调用可以根据核心的状态返回2个不同的HTTP状态代码:
- 200个核心并运行
- 503 Web应用程序无法连接到核心
每10岁时ping这个端点应该是好的。
另一种选择是呼叫
这将告诉您引擎是否已注册和运行,因此这是任何可以处理作业的最佳指标。然而,这个电话将慢又慢,也不应该在太高的间隔中击中。
总结,我会说Healthcehck给你一个想法,他们的主体和机器起来,它可以短暂地击中。如果FME服务器核心在不同的计算机上运行,则此检查将无法检测到核心是否已关闭。信息和引擎端点将为您提供有关整体状态的更多信息,但也应该不会经常击中。
谢谢人们。我认为,检查可用的发动机可能是最好的方法,根据托德的建议,只是想看看有人是否有备用解决方案/建议。
如果安全可以添加REST呼叫,则会很好,亚搏在线专门用于检查FME服务器“可用性”,但是这是最好的定义。例如,它是否有可能可用但不是核心?它们由不同的服务启动和管理。或者是发动机和核心,但不是DB服务?
我认为检查发动机可用性是一个很好的开始,可能是当前REST API的最佳解决方案,但我只是不确定它是一个完全解决方案。
如果安全可以对此发表评论,那将是很好的.亚搏在线..... :)
正如@Todd_davis所说,您可以使用REST API查询运行引擎的数量。例子:
http:// myfmeserver / fmerest / v2 /变换/引擎?接受= json&细节=低
它将返回一个枚举可用引擎的JSON列表对象。如果您想查看其中一个是免费的,请检查CurrentJobid = -1,来自带有两个引擎的服务器的示例:
[{“hostname”:“myfmeserver”,“resultfailurecount”:0,“结果琥珀源”:0,“maxtransactionResultSuccess”:100,“instanceName”:“myfmeserver_engine1”,“transactionport”:62392,“currentjobid”:-1,“MaxTransactionResultFailure“:10,”BuildNumber“:16716,”平台“:”Win32“},{”hostname“:”myfmeserver“,”myfmeserver“,”resultfailurecount“:0,”结果琥珀源“:0,”MaxTransactionResultSuctCess“:0,”MaxTransactionResultSuccess“:100,”InstanceName“:“myfmeserver_engine2”,“transactionport”:54189,“currentjobid”:-1,“maxtransactionresultfailure”:10,“buildnumber”:16716,“平台”:“win32”}]
如果需要更多信息,还有一个API调用来查询运行和排队作业。
如果您想查询是否有发动机运行,或者使用队列,您可以使用如下更改转换/作业:
http://docs.亚搏在线safe.com/fme/html/fme_rest/v2/apidoc/index.html# !/transformations/list_get_11.
©2020 S亚搏在线afe Software Inc |合法的