ci-server-engineer/.claude/skills/system-management/tasks/bus-utilities.md
cliu 83af63ab53 R1.05 re-check batch 2: graphics, history, portal, system-management, items
Full manual diffs (C50, R30, C60, L20, C40, L35, R10, R20, J10, L30, L50,
P30, G10, C10) and read-only checks on the shared R1.05 test server where
the permission system allowed them. Skills and summaries moved to R1.05.
Issues ISS-092..129 (gaps 104-107, 114-115, 130-131 unused); ISS-074
closed (manual and software agree), ISS-091 corrected by ISS-119.
version-differences: unlisted manual changes and installed-only changes.
r105-verification: V5-V9 and new not-tested rows.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 19:29:15 +11:00

69 lines
4.3 KiB
Markdown

---
task: BUS Service utilities - process checks, stopping single processes, message tools, adaptive queues
version: R1.05 (first written for R1.03)
source: IM 36K10L30-01EN §1, §5, §6, §10, §14 (4th ed., Feb. 2026); IM 36K10J10-01EN §3.2.6 (5th ed.); checked on the test system 2026-10-01 (R1.03)
status: verified on R1.03 (durwfp, setup file checks, umhman, umhmsg, umhtestprog); re-checked read-only on the R1.05 test server 2026-10-08 (durwfp exit codes, umhman, dur.sup, durm_1_udp.sup); umhmsg / umhtestprog not run on R1.05 (they write to the shared message log); durstp not run
---
# BUS Service utilities
Background: `knowledge/manuals/IM36K10L30-01EN.md`.
## Is a CI Server process attached?
`durwfp -p <DUR name> -t 0` → exit code **0** = attached (running), **1** = not. Without
`-t 0` it waits up to 60 s for the process to appear; `-e` waits for it to go away. Verified:
`umh`, `opcman`, `durm_1` → 0; unknown name → 1 (R1.03 and R1.05; on R1.05 also `dssman`,
`dsssda00`, `dsssdarst`, `dsssdapy`, `dssevt00` → 0). Bash: `durwfp -p opcman -t 0; echo $?`;
PowerShell: `durwfp -p opcman -t 0; $LASTEXITCODE`. The manual (L30 §10, reworded in the R1.04
edition) calls the result "1 if attached, else 0": that is the opposite of the exit code a
script sees, so test the exit code as above (ISS-120).
DUR names are those given with `-n` (e.g. `OPXCIENG`, `EQPCIENG`, `opxuas`).
## Stop or kill one process (only with the user's approval)
`durstp -m -p <name>` sends a stop message (clean stop); `durstp -m -k -t 10 -p <name>` stops,
then kills after 10 s. `*` wildcards stop many processes (`-p alm\*`). Never `durstp -k -p \*`
(kills `durtim` and leaves DUR memory locked). Restart a process by hand with
`<exe> -n <name>` from `tls\exe` or by restarting CI Server.
## Messages
- Message log: `%TLS_LOG_PATH%\umhlog.log` (`--> From: <PROCESS> (<node>) on <time>`, then
`FAC-S-CODE, text` lines). `UMH Message Text Error: Message number <hex> (…)` = the text
could not be formatted (e.g. `%` in a PRINT text, ISS-025).
- `umhman` (hex code → text): answers can be piped, e.g. `printf '8010008\n\n' | umhman` →
`DUR-W-NO_MSG_FND, No selected message found`; parameters in the text stay empty. Same
answer on R1.05 (piped from PowerShell, 2026-10-08).
- `umhmsg <hex> [<var> <value>]…` logs that message from a script: it prints nothing; the
message appears in `umhlog.log` from process `UMHMSG_<pid>`.
- `umhtestprog` runs its self-test (`TESTING UMH MESSAGES`, `TESTING ILLEGAL CODES`).
- On an **unlicensed** node these tools crash or stop with `license expired` once the licence
time is nearly used up, while `dssqld`/`itmval` still work; restart CI Server (ISS-030).
## Adaptive queues (read-only check)
`tls\sup\dur.sup`, tab *Adaptive queues*: `ADAPTIVE_QUEUE_SETS = <process>, <percent>`
(wildcard `*` allowed, max 40 %). Installed: `ALM` 10, `ALH` 10, `WFLGDI` 20, `WFLCDI`,
`WFLIDI`, `WFLADI`, `ITHEIX`, `ITHSER` 2, `DSSSDA*`, `DSSEVT*`, `OPCEXE` 1; R1.05 adds
`ADTSTO` 1 (audit storage, added "for version upgrade" per the file's change log; ISS-122). Add entries for
new busy processes (extra executors, equipment managers, custom processes); `OPCEXE` without
`*` may not cover the installed `OPCEXE1`…`4` (ISS-026; unchanged on R1.05). Changing `dur.sup` needs admin and a
restart (skill `portal-setup`). Queue use per process: health snapshots
(`tuning-checks.md`) or the performance monitor (*Minimum/Maximum/Current KB*, high queue
100 % = the queue had to grow → raise its size).
## Gateway Core switch (R1.05)
R1.05 `dur.sup` has a new keyword `GATEWAY_CORE` (*General* tab, *Gateway Core* check box;
installed `gateway_core = No`). Tick it only on a CI Core with a **gateway licence**: such a
node collects and passes on data but has no operator interface, also not for Portals and CI View
clients connected to it. If the switch and the licence disagree, a message goes to the
message log (IM 36K10J10 §3.2.6). From docs and the installed file; not tested (no gateway
licence; changing `dur.sup` needs admin and a restart; ISS-116).
## Node links (MDUR)
`tls\sup\durm_<line>_udp.sup` and `tls\com\durm_start.cmd`; single-node installs still run
`durm_1` (`durm_1_udp.sup`: line 1, quality 500, port 17001). Multi-node set-up is in the L30
summary §2; not practiced (one node).