ci-server-engineer/.claude/skills/alarm-management/tasks/alarm-checks.md
cliu bf7d88a027 R1.05 re-check batch 3: alarms, audit, authorization, classes, HAC, reporting, pyTOOLS
Full manual diffs (L15, C20, E30, L25, J40, C10 §2, L10, P10, P11, J20,
C30, P20, R40, E10) and read-only checks on the shared R1.05 test server.
Skills and summaries moved to R1.05; new skill pytools (IM 36K10P40) from
docs (no Python on the test server). Issues ISS-132..181; corrections to
version-differences (E10, E30, P11, dss_ath_grp_u0104); C10 summary lists
the 3 new authorization actions; r105-verification V10-V17.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 10:21:36 +11:00

7.1 KiB
Raw Blame History


task: Read-only checks of ALARM Service; generate an informational test event version: R1.05 (first written for R1.03) source: IM 36K10L15-01EN §1, §2.6, §3.4, §4.3, §6; IM 36K10C20-01EN §A7 (4th editions, Feb. 2026; content as in the 3rd editions, Sep. 2023); practiced on the R1.03 test system 2026-10-01 and read-only on the R1.05 test server 2026-10-09 status: verified on R1.03 (2026-10-01). R1.05 - verified (R1.05 test server, 2026-10-09): processes, durwfp, active setup-file lines, almdbg 1/9/12, alhdbg 1, predefined ack types and the ALH storage group; setup files, templates and alarm dataset definitions compared by hash with R1.03 (identical except the files in §5). The INFO event (§4) was not generated on R1.05 (it writes to the shared alarm history).

ALARM Service checks

1. Processes and setup files (read-only)

Check How R1.03 result R1.05 result (2026-10-09)
Processes tasklist → alm.exe, alh.exe, aldprt.exe, alnmgr.exe, alnsmtp.exe, asbman.exe; durwfp -p ALM -t 0 → exit code 0 = attached All six running (tls\com\alarm_start.cmd) Same six running, durwfp 0 for each; alnsms and aldcnt not running (not started by default)
Kernel setup %TLS_ROOT_PATH%\tls\sup\alm.sup (active lines after !ENDDEFAULT) SYNC_COMM N, SYNC_MSG N, QUESIZE 25000, RECOVER_QUEUE Y, ACK_INFO Identical
Storage setup alh.sup CURP, CURT, CHR, QUESIZE 8000, MAX-SEARCH 5, RECOVER_QUEUE Y, DB-JRNL WAL, DB-SYNC OFF Identical
Alarm printer aldprt.sup FORMAT prio,2,spac,1,type,6,tdef,18,name,40,text,10, EVENTS repeat,info,ackn,alarm,prio,firstup Identical
Overview events wfladi.sup EVENTS alarm,repeat,ackn,deact,info,recov,diag,firstup (no DIRECT) Identical
Notification / shelving alnmgr.sup, alnsmtp.sup, alnsms.sup, asbman.sup Defaults: SMTP localhost, 25, SMS COM1:, SYS_WIDE_SHELF N Same, but alnsms.sup has a new message format and prefix (§5)
History storage group dssqld -e filter 'NAME = "ALH"' on HIS_GROUP_DF Type Alarm, rollover 1 day, lifetime 52 weeks Same on a fresh install, so 52 weeks is the installed default, not a local change (the C20 manual says 2 days; ISS-036, ISS-135)
Definitions dssqld -e <out> -d ALARM_ACK_DF -c (also ALARM_AOI_DF, ALARM_ASA_DF, ALARM_FO_DF, ALARM_FU_DF, ALARM_PRIORITY_DF, EXTERNAL_ALARM_DF, STATUS_DF) Predefined ack types AUTOMATIC, MANUAL, FULLMANUAL and their _EAL variants; everything else is project data Same six predefined ack types (32 matrix fields NA_N … A3N_A3)

Export only the small definition datasets this way. Never export ALARM_CHRONO without a narrow filter on a shared or production server (skill rule, ISS-136).

2. Alarm kernel debugger almdbg (read-only options)

Interactive; pipe the answers and end with -1 (from bash, with a timeout):

printf '1\n9\n12\n-1\n' | timeout 20 almdbg
printf '14\n<Section>.<Tag>\n10\n<ack type number>\n-1\n' | timeout 20 almdbg

In a PowerShell script, put the answers in a file (one per line, no blank lines) and start almdbg.exe with Start-Process -RedirectStandardInput <file> -RedirectStandardOutput <file> -NoNewWindow -PassThru, then wait with a timeout (WaitForExit(25000)).

Option Shows
1 Connected destinations, events sent, overflows (R1.03 test system: ALH, OPXUAS, ALNMGR, ALDPRT; R1.05 test server: the same plus WFLADI while an alarm overview is open)
5 / 7 / 8 / 23 First-out groups, first-out / continuation items, collections
9 / 10 Ack type numbers (R1.05 fresh install: 1–6) / matrix of one type (A automatic, M manual)
11 Items with repeat or delay running
12 Statistics: start time, item-based / non-item-based / external events received, events sent, list sizes (R1.05 output also shows a counter non-item-based events 2)
14 Item alarm parameters: monitoring, diagnostic, ack type number, collection, first-out, repeat, delay

The menu range is −1 … 28 on both versions. The last -1 makes DURTIM log DUR-W-REM_PROC, Process ALMDBG_<pid> exited unexpectedly in umhlog.log: harmless. A blank answer takes the default shown in brackets; an empty line at the main prompt repeats the previous action — never send blank lines blindly.

3. Storage debugger alhdbg

printf '1\n-1\n' | timeout 10 alhdbg → storage groups with current unit, cell and start time (R1.03 and R1.05: group 3). Option 2 lists the units of one group. Options 3 (force connect) and 4 (stop ALH) only with approval. Menu range −1 … 4 on both versions.

4. Generate an informational test event (almdbg 16)

Changes the alarm history (adds one INFO event; no effect on current alarms). With approval, and only on a system where an extra history record does not matter:

printf '16\n\n0\n15\n<Section>.<Tag>\n<status text>\n<description>\n-1\n' | timeout 15 almdbg

Prompts: timestamp (blank = now), milliseconds, priority (0–15), name, status text, description. Check with a filter 'EVENT_TYPE = "INFO"' (plus a time range) on ALARM_CHRONO.

Verified (R1.03): the event appears with EVENT_TYPE INFO, ITEM_NAME = the given name, ALARM_TEXT = status text, DESCRIPTION = description, priority 15, ack 1. Other text columns (INSTALL, UNIT, SUB, SOURCE, CATEGORY, CONDITION) contain leftovers or unreadable characters (ISS-037): use the event only as a test marker. Not run on R1.05.

5. What changed in the installed files on R1.05

Compared with R1.03 by file hash (2026-10-08) and line by line (2026-10-09):

File Change
alm.sup, alh.sup, aldprt.sup, aldaco.sup, aldcnt.sup, alnmgr.sup, alnsmtp.sup, asbman.sup, ald_spec_stat.sup, wfladi.sup and their templates; alarm_build, alarm_compile Identical
alarm_start.cmd, alarm_stop.cmd At the end (start) / beginning (stop) they call every ?*_alarm_start.cmd / ?*_alarm_stop.cmd in tls\com (ISS-121). Processes started are the same as on R1.03
alnsms.sup / .tpl New format units SECTION and NAME in the help; active defaults changed: BODY_FORMAT = PRIO,2,SPAC,1,TYPE,6,TDEF,18,TEXT,6,SECTION,120 (R1.03: priority, type, time, NAM1–NAM4, text) and ALARM_PREFIX = PRIO (R1.03 <ALARM>). alnsms is not started by default; not tested (ISS-134)
almini.sup Licence line only (instance file)
Alarm dataset definitions (alarm_*.dss) Identical, including ALARM_CURRENT and ALARM_CHRONO. external_alarm_df.dss differs only by a space; its data access server got an internal fix for record updates
alarm_attribute_temp_df.dss New: dataset ALARM_ATTRIBUTE_TEMP_DF, same fields as ALARM_ATTRIBUTE_DF (NAME, ATTRIBUTE_TYPE, STATION, hidden ATTRIBUTE_INDEX, SPARE), described in its header as a temporary store for item-specific alarm attributes; concealed on an enterprise server, no data file, no index on ATTRIBUTE_INDEX. On the R1.05 test server it has 0 records and is referenced only by the data dictionary and the RESTful API server (jrstsrv.jar, alarm attribute class). Internal: do not load, export or back it up (ISS-133)