我正在尝试从 MVS 捕获所有批处理作业。我想将所有批处理作业信息(开始、结束、错误)传输到外部系统,以便进行进一步分析。有没有人知道如何做到这一点?
4 回答
编写一个 IEFACTRT 出口(或任何现代的等价物)并让系统程序员安装它。
IBM 实际上为此提供了一个工具。您可以让它为所有作业写入 SMF(系统管理工具)记录。记录布局可用,您可以编写代码对其进行分析,或者您可以获得 OmegaMon 等第三方产品,它们将为您进行分析和报告。
通常,安装会削减SMF 类型 30记录。 启动新事务时写入 子类型 1 。transaction
表示系统资源管理器(SRM) 事务。不要将它与例如数据库系统上下文中的事务混淆。开始执行的批处理作业就是这样的事务。 子类型 5在事务结束时写入。除了子类型 5,还有一个完成部分报告作业终止状态。
现在,SMF 处理传统上是分批完成的,因为您必须首先通过从日志流或从 SYS1.MANx 数据集中提取它们来准备 SMF 记录。
但是最近,z/OS 中添加了一些功能,允许您在写入 SMF 记录时挂钩到该过程。可以使用 IBM Common Data Provider for z/OS 之类的产品以您希望的方式转换数据并将其流式传输到选择的目的地,例如 logstash。遵循这种技术可以几乎实时处理 SMF 记录。
就像在我的商店一样,我们将作业信息打印到普通文件中,然后通过 ftp 传输到一些文件服务器,然后使用一些脚本运行提取/格式化并将数据拉入 BI 平台以供以后分析/可视化。目前,我们正在研究利用像 Neo4j 这样的图数据库的力量来更深入地了解我们的批处理作业关系/更好地将作业关系呈现给感兴趣的人。现在我们认为graph db是一个非常好的工具(批处理作业管理)......希望我的回答能给你一些启发/提醒......