- R1.03 frozen on branch r1.03 / tag r1.03-final; README and CLAUDE.md explain which branch to use and the rules for the shared R1.05 server. - knowledge/version-differences.md: R1.03 -> R1.05 changes from the manual revision tables and a read-only comparison of installed files (install paths, eqt/eta IEC 104/61850 drivers, REST server, jupgutl, new pyTOOLS manual IM 36K10P40). - system-check re-checked read-only on the R1.05 test server. - progress.md: R1.05 re-check table per skill; document map lists R1.05 and R1.03 editions. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
8 KiB
| name | description | version | source | status |
|---|---|---|---|---|
| system-check | Read-only check of a CI Server machine, run before any CI Server work. Use when the user asks which CI Server version is installed, whether CI Server is running, where it is installed, whether time is synchronized, or before starting any task in another skill. Also covers starting CI Server (needs administrator rights). Target version R1.05 (R1.03 on branch r1.03). | R1.05 (first written for R1.03) | IM 36K10J10-01EN §1.2, §1.4, §3.6, §3.7; practiced on the R1.03 test system 2026-09-29/30 and the R1.05 test server 2026-10-08 | verified on R1.03 (2026-09-30); sections 1, 2 and 4 verified on R1.05 (2026-10-08) |
System check
Run this read-only check before any CI Server work. It changes nothing.
1. Installed version
PowerShell:
$keys = @('HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*','HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*')
foreach ($k in $keys) { foreach ($i in (Get-ItemProperty $k -ErrorAction SilentlyContinue)) { if ($i.DisplayName -match 'CI Server') { "{0} | {1}" -f $i.DisplayName, $i.DisplayVersion } } }
Expected for this branch: CI Server R1.05.00 (r11609M). R1.03 (CI Server R1.03.00 (r10200M)):
switch to the repo branch r1.03. Anything else: warn the user that the repo targets R1.05
(see knowledge/version-differences.md).
From the running system (preferred when CI Server is running): export the local node
dataset and read VERSION_MAJOR, VERSION_MINOR, VERSION_PACK (1, 5, 0 = R1.05.00;
1, 3, 0 = R1.03.00).
dssqld -e local_node.qli -d LOCAL_NODE_DF -c -l local_node.lst
Run it in a scratch folder; it only reads. The same row shows the node name, node number and
licence state (NAME/NODE_NAME = UNLICENCED means no licence is registered).
dssqld -f -l dict.lst dumps the full data dictionary (all datasets and fields) if you need
to find another dataset.
Per-component versions (rewritten at every start): %TLS_ALLUSERS_PATH%\lst\tls_versions.lst,
one line per component: <file>,<version>,<size>,<build date>. On the R1.03 test system all 110
lines read R1.03.00; on the R1.05 test server 112 lines read R1.05.00 and jython-full
reads R1.04.00 (as installed). Other different versions usually mean a patch is installed.
Message log: %TLS_LOG_PATH%\umhlog.log holds CI Server messages
(--> From: <PROCESS> (<node>) on <time> then <FAC>-<I|W|E>-<CODE>, <text>). Read it after
starting CI Server to spot errors (e.g. EQP-E-SLV_COM_BAD = no communication with a
station). It can contain connection strings with passwords; never copy those into the repo.
2. Install paths (environment variables)
The paths differ between installations, so read them with set TLS (cmd) or
Get-ChildItem env:TLS* (PowerShell) and never assume them.
| Variable | R1.05 test server | R1.03 test system | Holds |
|---|---|---|---|
TLS_ROOT_PATH / TLS_ITROOT_PATH |
C:\Yokogawa\CIServer |
C:\Program Files (x86)\Yokogawa\CIServer |
Program: tls\com (start scripts), tls\exe (tools), tls\sup (setup files) |
TLS_ALLUSERS_PATH |
C:\Yokogawa\CIServer\tls |
C:\Users\Public\Yokogawa\tls |
Data root (manuals in doc\EN) |
TLS_DAT_PATH |
…\tls\dat |
…\tls\dat |
Database |
TLS_HIS_PATH |
…\tls\his |
…\tls\his |
History |
TLS_SAV_PATH |
…\tls\sav |
…\tls\sav |
Saved data |
TLS_LOG_PATH, TLS_LST_PATH |
…\tls\log, …\tls\lst |
…\tls\log, …\tls\lst |
Logs and listings |
TLS_WAP_PATH |
…\tls\wap |
…\tls\wap |
Web application files |
tls\com and tls\exe are on PATH, so tools such as dssqld and itmval run from any
prompt. Setup files (*.sup) are plain text (CRLF); edit them with the Setup File Editor.
3. Is CI Server running?
- Windows service
StartCIServer("CI Service"), start type Manual on the R1.03 test system, Automatic (Delayed Start) on the R1.05 test server. - Running processes live under
…\Yokogawa\CIServer\tls\exe. None running = CI Server stopped. - Most tools (
dssqld,itmval, …) need CI Server running. - Starting it needs administrator rights (the service runs as
.\CIX_PROCESS, binarytls\exe\ciserv.exe). From a non-elevated shellStart-Service StartCIServerfails with "Cannot open StartCIServer service". Start it from an elevated prompt:Start-Service StartCIServer(or Services › CI Service › Start). - Unlicensed systems shut down about 1 hour 10 minutes after start. All CI Server processes exit, the
StartCIServerservice still shows Running, and every tool fails withumh_panic: <tool>, license expired. To recover, stop then start the CI Service (elevated):Stop-Service StartCIServerthenStart-Service StartCIServer. Before a long task on an unlicensed system, note the start time ((Get-Process ciserv).StartTime) and restart first if the hour is nearly up. Time left is in the health snapshots:License time left : <s>in%TLS_LOG_PATH%\smd_<node>_LOW_smdsnp_general.log(3600 s after a start, −600 per 10 min);*** license problem : 3 ***once it has run out. The count pauses while the PC sleeps (observed 2026-10-01: a run started 17:25 ran out at 09:52 the next morning after a sleep); some processes (e.g.umh) stay attached, butdssqld/itmvalfail and the log showsISF-F-LIC_PROB, DATABASE Service is not licensed. Stop-Service StartCIServercan fail with Cannot stop StartCIServer service although CI Server does restart (seen 2026-10-01: the error was shown, the service stayed Running, and all processes had new PIDs and a newSTARTUP_TIMEinLOCAL_NODE_DFwithin a minute). CheckSTARTUP_TIMEbefore retrying.- Close the Edit Module (and Engineering Module) before stopping CI Server. A local Edit
Module is attached to the BUS Service (
JWUIGED<pid>, ajava.exein the user's session) and does not stop with the service. The next start then aborts at once;%TLS_LOG_PATH%\ci_start.logshowsCI Server is already running/umh_panic: durwfp, CI Server has not been properly stopped, kill the following processes …with the list (seen 2026-10-01:JWUIGED12760kept UMH, DURTIM, UMHLOG … listed). Fix: close the Edit Module (or end thatjava.exe), then start again. Avoiddurstp -k -p *unless the user approves. The Operator Interface (desktop) and the HTML display connect through the web server and were not in the list.
4. Time synchronization
w32tm /query /status and w32tm /query /configuration (Windows Time must be running).
Check the source matches the design (domain controller, NTP server or NOSYNC on Vnet/IP).
Test system results (2026-09-29)
- Version R1.03.00 (r10200M). Matches the repo.
- Environment variables and folders as in the table; all tools and setup files named in
IM 36K10J10 are present except
tmtime(a Vnet/IP station tool, not expected here). - CI Service stopped on 2026-09-29; started 2026-09-30 from an elevated session. About 100
processes then run (e.g.
ciserv,dssman,itm,alm,his,rptgen,opcexe,durm_udp,eqpmdc,eqpmqtt,wfl*). LOCAL_NODE_DF: version 1.3.0 (R1.03.00), node 1, UNLICENCED, router type Endpoint.- Windows Time running, source
time.windows.com; synchronized on 2026-09-30 (stratum 5).
R1.05 test server results (2026-10-08)
Read-only check on the shared R1.05 test server (other projects run there).
- Version
CI Server R1.05.00 (r11609M);LOCAL_NODE_DFversion 1.5.0, node 1, node nameCORE_0001, router type Endpoint, licensed (NAME=THIS_NODE, notUNLICENCED), so the unlicensed 1-hour shutdown does not apply there. - Paths as in the table (program and data both under
C:\Yokogawa\CIServer). - CI Service running, start type Automatic (Delayed Start), account
.\CIX_PROCESS, binaryC:\Yokogawa\CIServer\tls\exe\ciserv.exe. - Windows Time synchronized from the VM IC Time Synchronization Provider (virtual machine host), stratum 4.
- Section 3 (starting and stopping) was not repeated: the server is shared and must not be restarted for a test.