You are currently on IBM Systems Media’s archival website. Click here to view our new website.

MAINFRAME > Storage > Data Management

Preventive Medicine

IBM Health Checker adds features to maintain best practices

IBM Health Checker adds features to maintain best practices
Illustration by Coco Masuda

What’s New

Health Checker continues to add new features and functionality with each release. Key changes for V1R12 and V1R13 include:

Direct Message Support
Health checks typically consist of a check routine with code that does the checking and then calls the message API to report the findings, and a message table where individual messages are defined. Direct message support gives check writers the option to embed text messages directly into the code rather than requiring a message table.

“Especially with the homegrown checks, check writers sometimes still find it a little bit intimidating to write a message table,” Thiemann says. “The message table isn’t that complicated but it might be a hurdle.”

IBM has removed the hurdle by eliminating the requirement to match the message ID from the routing with a message table. Whoever writes Assembler checks probably doesn’t mind building a message table, but direct message support might still come in handy for early testing of the code, without yet having to worry about exact messages and the message table build process.

“On a technical side note, we’ve expanded that support with some additional capabilities to expand predefined symbols in the message text and to increase the text limits quite substantially,” Thiemann says. “This has made direct message support more useful and universally accepted.” (For more, see z/OS V1R12 APAR OA34313, PTF UA58115.)

Dynamic Severity
Health Checker attaches high-, medium- and low-severity ratings to notifications. Previously, health checks could only have a single severity assigned to them and couldn’t accommodate any exceptions of a different severity. However, with some checks, such as one with memory or resource limits, it makes more sense to increase or decrease the severity based on how close you are to the limit. Dynamic severity support lets the health check decide, at runtime, proximity to the limits so notifications can be more dynamic and appropriate.

While some health checks can be run once per IPL and that’s enough, others might need to run at specified intervals such as every five minutes or once per day. With SYNCVAL, “you can specify an interval and then the Health Checker framework will automatically run those checks,” Thiemann says. “A systems programmer doesn’t have to submit them every day.”

Health checks are usually first run when they’re added to Health Checker. Timing might be unpredictable since it’s based on when Health Checker is started or when checks are manually added. SYNCVAL helps make it more predictable when those checks run because you can now specify a concrete start time for a check. Also, non-SYNCVAL checks can vary over time, because new runtimes are dynamically set when the previous checks finish.

“Typically that’s not a big deal because health checks are supposed to be short-running, but it makes it less predictable,” Thiemann says. With SYNCVAL those checks are scheduled to be synchronized with the initial start time, so, “if you’re particular about when certain health checks are supposed to run on your system, you’ll want to go with this synchronized version,” he says.

Metal C Support
The first health checks all had to be written in Assembler. “That’s not the easiest language to write anything in,” Thiemann says. Shortly after Health Checker was made an official product, it added System REXX as a supported language. Now Health Checker adds Metal C as its third officially supported language.

Metal C is basically a C programming language with some limitations on what kind of fancy library functions you can use. METAL C generates very efficient code, essentially allowing you to write an Assembler program in C. Thiemann says Health Checker provides some samples to give check writers an idea of what a Metal C health check would look like. The user’s guide lists where to find all samples, including the new Metal C ones.

Tami Deedrick is the former managing editor of IBM Systems Magazine, Power Systems edition.



2019 Solutions Edition

A Comprehensive Online Buyer's Guide to Solutions, Services and Education.

Finding the Perfect Fit

IBM System Storage Easy Tier tailors SSDs for your workloads

Encrypt and Protect

IBM Tivoli Key Lifecycle Manager solves security problems and meets new standards

IBM Systems Magazine Subscribe Box Read Now Link Subscribe Now Link iPad App Google Play Store
Mainframe News Sign Up Today! Past News Letters