Add verified system-management tasks (item read/write, quick load records, history load, monitoring processes, consistency check, tuning checks), the importable CI-Eng-Sample project with load/remove scripts, the unlicensed 1-hour shutdown note, and the sample-project re-test rule. Close ISS-002/003/004 and log ISS-005..007. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
61 lines
3 KiB
Markdown
61 lines
3 KiB
Markdown
---
|
|
task: Monitoring processes (intcpumon, intdskmon, inttcpmon, intmon, intspawn)
|
|
version: R1.03
|
|
source: IM 36K10J10-01EN §4.1.6; practiced with CI-Eng-Sample 2026-09-30
|
|
status: verified
|
|
---
|
|
|
|
# Monitoring processes
|
|
|
|
INTEGRATION Service processes that write system health into items, or run a command when an
|
|
item changes. Each is configured in its own setup file in `%TLS_ROOT_PATH%\tls\sup\`.
|
|
|
|
**Changes the system's setup files.** Back each file up first. Follow the user's chosen way
|
|
of working; in *prepare only* mode, write the lines for the user to add.
|
|
|
|
## Setup file format
|
|
|
|
Setup files are plain text (CRLF). Lines starting with `!` are comments and editor
|
|
definitions (`!KEYWORD : …` shows each allowed keyword and its arguments). Active settings are
|
|
plain `keyword = value` lines, usually added at the end. The Setup File Editor edits the same
|
|
files.
|
|
|
|
## Settings
|
|
|
|
| Process | Setup lines | Item value |
|
|
|---|---|---|
|
|
| `intcpumon` | `interval = 10`, `logging`, `CPU = "", "<item>", ""` | CPU load %. Empty system name = this machine; empty counter = total CPU |
|
|
| `intdskmon` | `interval = 10`, `logging`, `DISK = "C:\\", "<item>"` | **Used** % of the disk (61.9 on a disk 61.9 % used), despite the manual saying free space |
|
|
| `inttcpmon` | `logging`, `TCP = "<host>", "<item>"` | 1 while the host answers a ping |
|
|
| `intmon` | `process = "<process>", "<item>"` | 1 while the CI Server process runs (e.g. `alm`) |
|
|
| `intspawn` | `TRIGGER = "<command>", "<item>", VALUE, NONE, 0` | Runs the command with the new value as argument |
|
|
|
|
`intspawn` trigger modes: `VALUE`, `STATUS`, `OPTION`, `TIMER` (value = interval in s),
|
|
`NODE_DOWN`, `NODE_UP`, `NODE`; filters `NONE`, `EQUAL`, `GREATER`, `LESS` with the value.
|
|
**Keep the command path short**: a ~130-character path silently did nothing
|
|
(`knowledge/issues.md` ISS-007). `intmon` also supports `node = <n>, "<item>"`,
|
|
`channel = <line>, <node>, "<item>"` and `offline` (for multi-node systems, not tested).
|
|
|
|
Tested lines for the sample project: `examples/CI-Eng-Sample/monitoring/*.sup.txt`
|
|
(items `CI-Eng-Sample.SYSTEM.*`).
|
|
|
|
## Start and stop
|
|
|
|
These processes do not start by default.
|
|
|
|
- For a test, start by hand (elevated): `Start-Process "$env:TLS_ROOT_PATH\tls\exe\<process>.exe" -ArgumentList "-n <process>" -WindowStyle Hidden`.
|
|
Stop with `Stop-Process -Name <process>`. They also stop when CI Server stops.
|
|
- To start them with CI Server, add them to `%TLS_ROOT_PATH%\tls\com\integration_start.cmd`
|
|
(for `intmon`, uncomment its `start /b /normal …\intmon.exe -n intmon` line; for the others
|
|
add `start /B /NORMAL %TLS_ROOT_PATH%\tls\exe\<process> -n <process>` followed by
|
|
`start /B /NORMAL /WAIT %TLS_ROOT_PATH%\tls\exe\durwfp -p <process> -t 10`). Not yet tested.
|
|
|
|
## Check
|
|
|
|
Read the target items with `itmval -g -n <item>` (status 9 once updated). With `logging`, the
|
|
processes also write to `%TLS_LOG_PATH%\umhlog.log`.
|
|
|
|
## Verified (CI-Eng-Sample, 2026-09-30)
|
|
|
|
CPU_LOAD 33.4, DISK_C 61.9, PING_LOCALHOST 1, PROC_ALM 1; `intspawn` wrote 0 and 1 to a file
|
|
when `PUMP1.MODE` changed. Setup files restored afterwards.
|