第六十八章 使用 Web 服务监控 IRIS - 监控网络客户端

简介: 第六十八章 使用 Web 服务监控 IRIS - 监控网络客户端

第六十八章 使用 Web 服务监控 IRIS - 监控网络客户端

SYS.WSMon.Client 类和相关类是一个 IRIS 网络服务客户端,可以在同一个 IRIS 实例或另一个 IRIS 实例中调用 SYS.WSMon.Server 网络服务的方法。

此 Web 客户端类使用以下 LOCATION 参数:

Parameter LOCATION = "http://server:port/csp/sys/SYS.WSMon.Service.cls"

其中,服务器是运行 IRIS 的服务器,端口是 IRIS Web 服务服务器使用的端口。

以与使用其他 IRIS 网络服务客户端相同的方式使用此网络客户端:

  1. 创建 Web 客户端类的实例。
  2. 如果需要,设置其 Location 属性。

如果要使用的 SYS.WSMon.Server Web 服务与客户端位于不同的计算机上,或者如果它使用 52773 以外的端口,则这是必需的。

  1. 如果需要,设置其他属性。
  2. 调用网络方法。
  3. 检查 web 方法返回的值。

详细信息取决于调用的 Web 方法;请参阅“监视 Web 服务的 Web 方法”部分并查看返回类型的类参考。

下面显示了一个示例终端会话:

USER>set $namespace = "%SYS"
 
%SYS>set client=##class(SYS.WSMon.Client).%New()
 
%SYS>set client.Location="http://localhost:57799/csp/sys/SYS.WSMon.Service.cls"
 
%SYS>set myroutinestats=client.GetRoutine()
 
%SYS>write myroutinestats.RtnCallsLocal
19411581
%SYS>write myroutinestats.RtnCallsRemote
0
%SYS>write myroutinestats.RtnCommands
432764817
%SYS>

更典型的是,以编程方式创建和使用客户端,可能是为了检索数据以显示在用户界面中。

注意:请记住,SYS.WSMon 包仅在 %SYS 命名空间中可用,这意味着必须在该命名空间中才能执行此处描述的步骤。

处理事件

IRIS 提供了一个示例 Web 服务(SYS.WSMon.EventSink),可以接收和处理任何日志监控 Web 服务发送的事件。可以使用此 Web 服务或创建和使用自己的 Web 服务。

使用示例事件接收器 Web 服务

SYS.WSMon.EventSink是一个示例 IRIS Web 服务,可以接收和处理事件。

对于给定的 IRIS 实例,日志监控 Web 服务可从以下 URL 获得:

http://server:port/csp/sys/SYS.WSMon.EventSink.cls

其中,服务器是运行 IRIS 的服务器,端口是 IRIS Web 服务服务器使用的端口。

Web 服务有一种方法:

CacheEventSink()
Method CacheEventSink(event As SYS.WSMon.wsEvent) As %Integer

Windows 平台上,此示例方法在事件发生时显示一个弹出窗口;对于其他平台,它会向 ^SYS("MONITOR","WSMON","EVENT_RECEIVED",$h) 添加一个条目。

此方法始终返回 1

要订阅此示例服务以便它接收来自监控 Web 服务的事件,请在终端中执行以下操作:

USER>set $namespace = "%sys"
 
%SYS>set client=##class(SYS.WSMon.Client).%New()
 
%SYS>set eventsinklocation="http://localhost:52773/csp/sys/SYS.WSMon.EventSink.cls"
 
%SYS>set subscriptionid=client.EventSubscribe(eventsinklocation)
 
%SYS>write subscriptionid
CacheEventSubscription_2

这里的 eventsinklocation 是将处理事件的事件接收器 Web 服务的 URL

创建自己的事件接收器 Web 服务

要创建自己的事件接收器 Web 服务,请使用 Studio 中的 SOAP 向导从以下 WSDL 生成 Web 服务:

http://server:port/csp/sys/SYS.WSMon.EventSink.cls?WSDL=1

其中,服务器是运行 IRIS 的服务器,端口是 IRIS Web 服务服务器使用的端口。

然后修改生成的 Web 服务中的 CacheEventSink() 方法以包含自定义逻辑。

相关文章
|
1月前
|
算法 安全 网络安全
网络安全服务
机密主要利用密码学技术加密文件实现,完整主要利用验证码/Hash技术,可用**主要灾备来保障。 网络环境下的身份鉴别,当然还是依托于密码学,一种可以使用口令技术,另一种则是依托物理形式的鉴别,如身份卡等。其实更为安全的是实施多因子的身份认证,不只使用一种方式。数字签名可以用来保证信息的完整性,比如RSA就可以用于数字签名: 若A向B发送信息m则先用自己的保密密钥(私钥)对m加密,然后用B的公钥第二次加密,发送个B后,B先用自己的私钥解密一次,再用A的公钥解密即可。 Kerberos使用对称密码算法来实现通过可信第三方密钥分发中心的认证服务,已经成为工业界的事实标准。
40 3
|
2月前
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
179 5
|
2月前
|
云安全 人工智能 安全
阿里云稳居公共云网络安全即服务市占率第一
IDC发布《中国公有云网络安全即服务市场份额,2023:规模稳步增长,技术创新引领市场格局》报告,阿里云以27.0%的市场份额蝉联榜首。
|
2月前
|
Go UED
Go Web服务中如何优雅平滑重启?
在生产环境中,服务升级时如何确保不中断当前请求并应用新代码是一个挑战。本文介绍了如何使用 Go 语言的 `endless` 包实现服务的优雅重启,确保在不停止服务的情况下完成无缝升级。通过示例代码和测试步骤,详细展示了 `endless` 包的工作原理和实际应用。
60 3
|
2月前
|
JSON Go UED
Go Web服务中如何优雅关机?
在构建 Web 服务时,优雅关机是一个关键的技术点,它确保服务关闭时所有正在处理的请求都能顺利完成。本文通过一个简单的 Go 语言示例,展示了如何使用 Gin 框架实现优雅关机。通过捕获系统信号和使用 `http.Server` 的 `Shutdown` 方法,我们可以在服务关闭前等待所有请求处理完毕,从而提升用户体验,避免数据丢失或不一致。
29 1
|
2月前
|
XML 安全 PHP
PHP与SOAP Web服务开发:基础与进阶教程
本文介绍了PHP与SOAP Web服务的基础和进阶知识,涵盖SOAP的基本概念、PHP中的SoapServer和SoapClient类的使用方法,以及服务端和客户端的开发示例。此外,还探讨了安全性、性能优化等高级主题,帮助开发者掌握更高效的Web服务开发技巧。
|
2月前
|
运维 安全 5G
|
3月前
|
Docker 容器
docker swarm启动服务并连接到网络
【10月更文挑战第16天】
55 5

热门文章

最新文章