InterSystems IRIS 上的附加开发人员工具栏

一组附加工具,用于监控和调查 InterSystems IRIS 数据平台、Ensemble 集成平台和 Caché DBMS 上的应用程序和集成解决方案中的错误,或另一辆自行车的故事。

在本文中,我想谈谈我每天使用的应用程序以及标准管理工具来监视 InterSystems IRIS 平台上的应用程序和集成解决方案,并在错误发生时发现错误。
该解决方案包括查看和编辑全局数组、运行查询(包括 JDBC/ODBC)、通过电子邮件以压缩的 XLS 文件形式发送搜索结果。 查看具有编辑能力的类对象。 系统协议的几个简单图表。

这是一个基于的CSP应用程序 jQuery 用户界面, 图表.js, jsgrid.js
如果您有兴趣,请参阅下文和 存储库.

这一切都始于研究如何记录 InterSystems IRIS、Ensemble 和 Caché DBMS 中对象的更改的问题。

看完之后 优秀的文章 关于这个,我叉了 项目。 并开始根据他的需要完成它。

生成的解决方案作为 %CSP.Util.Pane 的面板子类实现,它具有主命令窗口和运行按钮,以及命令细化设置。

当你输入“?”时我们得到这些命令的简要描述:

InterSystems IRIS 上的附加开发人员工具栏

全局变量

我最常用的命令是查看全局。 通常,在调试您自己或其他人的项目时,这是一个全局协议。 您可以按相反的顺序查看它,也可以对链接和数据应用过滤器。 可以编辑和删除找到的节点:

InterSystems IRIS 上的附加开发人员工具栏

您可以通过在命令中名称后输入减号 ^logMSW- 来删除整个全局。
但这样你只能删除以^log(协议全局变量)开头的全局变量,即已实施针对意外删除的限制。

如果在名称后输入“*”,您将获得具有附加特征的全局变量列表。 第二个“*”将添加一个新字段“已分配的MB”,另一个星号将是“已使用的MB”。两个报告的组合和“星号”的划分是为了将通常很长的报告划分为占用的块大型全局变量。

InterSystems IRIS 上的附加开发人员工具栏

从此表中,您可以按照活动链接查看全局本身,或者通过单击“权限”字段中的 R 或 W,以标准方式从管理门户查看/编辑它。

请求

将报告转换为 Excel 格式

第二个最常用的功能是查询执行。 为此,请输入 sql 语句作为命令。

在标准系统管理门户中对我来说足够的主要内容是对 DBMS 中配置的 JDBC/ODBC 源执行查询并以 XLS 格式输出结果、存档并通过电子邮件发送文件。 为此,在我的工具中,在执行命令之前,您需要启用“下载到 Excel 文件”复选框。

这个功能为我的日常工作节省了大量时间,我成功地将现成的模块集成到新的应用程序和集成解决方案中。

InterSystems IRIS 上的附加开发人员工具栏

但要做到这一点,您首先需要配置在服务器上创建文件的路径以及用户和邮件服务器的凭据;为此,您需要依次编辑全局程序设置^%App.Setting的节点。

InterSystems IRIS 上的附加开发人员工具栏

全局保存报告

很多时候需要全局保存报表执行的结果。 为此,我使用以下过程:

对于 JDBC:
##class(App.sys).SqlToDSN

对于 ODBC:
##class(App.sys).SaveGateway

对于 SQL 表达式:
##class(App.sys).SaveSQL

对于查询:
##class(App.sys).SaveQuery

例如,如果在面板中输入命令
xec do ##class(App.sys).SaveQuery("%SYSTEM.License:Counts","^GN",0)
让我们将许可证使用计数请求的结果保存在 ^GN 数组中,您可以使用以下命令查看面板中保存的内容: result ^GN("%SYSTEM.License:Counts",0)

InterSystems IRIS 上的附加开发人员工具栏

增强功能模块

第二个改进是在生成每个查询行时执行专门编写的模块的能力的实现,它极大地简化和自动化了我的工作。 通过这种方式,我可以一次性将新功能构建到报告中,例如用于对数据进行其他操作的活动链接。

示例 1:使用 App.Parameter 类

使用“表格导航器”创建参数

通过“选项”编辑参数

InterSystems IRIS 上的附加开发人员工具栏

示例2:通过“历史记录”链接查看全局

InterSystems IRIS 上的附加开发人员工具栏

受文章 [9] 的启发,为了可视化数据库的增长,创建了一个页面,显示从当天起使用“扩展”记录从 iris.log 文件 (cconsole.log) 创建的数据库大小的每月图表。

例如,在 InterSystems IRIS 中也创建了一个事件图,它也是从协议文件生成的:

InterSystems IRIS 上的附加开发人员工具栏

材料链接:

[1] Kasha 中的日志子系统
[2] 速食粥 - 使用 jqGrid 在 Caché 中进行 CRUD
[3] Caché DBMS 的替代 SQL 管理器
[4] 使用 Caché DBMS 生成和发送电子邮件的示例
[5] 缓存+jQuery。 快速启动
[6] 应用部署
[7] UDL 支持
[8] 在 Caché 管理门户中查看全局变量
[9] 带缓存的普罗米修斯
[10] Caché DBMS 中的本地化

感谢这些文章和其他文章的作者帮助我创建了这个工具。

PS 该项目正在开发中,许多想法尚未实施。 在不久的将来我计划做:

1. 框架上的应用模板 工具包
2. 代码格式自动记录 多克西根 集成到 CStudio 中

来源: habr.com

添加评论