This document describes how to operate a Natural Development Server in a SMARTS on BS2000/OSD environment.
The following topics are covered:
Start the Natural Development Server with the SDF command:
The SDF procedure
START-NDV has to be supplied with the
||The NDV (SMA) job library.||
||The NDV environment-specific module library. This library contains the linked Natural nucleus module.||
||The NDV module library.||
||The Natural Com-plete interface module library.||
||The SMARTS library (modules and procedures).||
||The Adabas module library.||
||The name of the NDV
||The NDV configuration file. It must reside in the
||The SMARTS configuration file. It must reside in the
||The log-file prefix for the
||The job name of the worker-tasks.||
||The job class of the worker-tasks.||
||The CPU time limit for the SMARTS worker tasks.||
||Switches logging for diagnostic purposes.||
||For internal use only. Do not modify!||-|
For the currently applicable versions refer to Empower https://empower.softwareag.com/.
Do not modify the variable names and parameter names that are used in the procedure
START_NDV. This procedure is called
recursively to attach the worker-tasks. For this purpose, the
ENTERPARM string is internally executed and several variables are
read from the system, using the
GETVAR function of
The Natural Development Server can be terminated with the console command:
/INTR <TSN smarts-main-task>,EOJ
The central logical system file
SYSOUT written by the
FSIO task can be reassigned at SMARTS server execution time, using
the SDF procedure
Thus it is possible to look up trace outputs, error reports, etc., without having to terminate the server.
SHOW-SYSOUT has to be called with the
||The SMARTS module library.|
||The TSN of the SMARTS server main-task.|
As a result of the
SHOW-SYSOUT execution, the logical
SYSOUT of the
FSIO task will be
reassigned to a new file and the previous one will be opened with the
SHOW-FILE command. The new logical system file
is built by appending a numerical suffix to the file name. The value of the
suffix is incremented by 1, each time
SHOW-SYSOUT is executed.
/Call-Proc *LIB(NDVvrs.JOBS,SHOW-SYSOUT), <SMARTS-tsn>
SMARTS-tsn is the TSN of
your SMARTS main task.
To enable the administrator to monitor the status of the Natural Development Server, a monitor task is provided which is initialized automatically at server startup. Using the monitor commands described below, the administrator can control the server activities, cancel particular user sessions, terminate the entire server, etc.
The following topics are covered below:
To communicate with the monitor, you can use the monitor client
NATMOPI; see Monitor
Client NATMOPI. Or you can use
the HTML Monitor Client that supports standard web browser; see
The Natural Development Server supports the following monitor commands:
||Verifies whether the server is active. The server responds and
sends the string
I'm still up
||Terminates the server.|
||Terminates the server immediately without releasing any resources.|
|| With the
set TRACE_LEVEL 0x00000012
||Returns a list of active Natural sessions within the server.
For each session, the server returns information about the user who owns the
session, the session initialization time, the last activity time and an
internal session identifier
||Cancels a specific Natural session within the Natural
Development Server. To obtain the session ID, use the monitor command
||Returns help information about the monitor commands supported.|
For debugging purposes, the server code has a built-in trace facility which can be switched on, if desired.
The following topics are covered below:
A remote development server writes its runtime trace to
the logical system file
SYSOUT of the
The trace is configured by a trace
level which defines the details of the trace. Once a trace is
switched on, it can be restricted to particular clients or client requests by
specifying a trace filter, see
also NDV configuration parameter
Every Natural session is provided with a 32-bit trace status word (TSW)
which defines the trace level for this session. The value of the TSW is set in
the NDV configuration parameter
TRACE_LEVEL. A value
of zero means that the trace is switched off.
Each bit of the TSW is responsible for certain trace information. Starting with the rightmost bit:
|Bit 31||Trace main events (server initialization/termination, client request/result).|
|Bit 30||Detailed functions (session allocation, rollin/rollout calls, detailed request processing).|
|Bit 29||Dump internal storage areas.|
|Bit 28||Session directory access.|
|Bit 27||Dump request/reply buffer EBCDIC.|
|Bit 26||Dump request/reply buffer ASCII.|
|Bit 25||Dump I/O buffer.|
|Bit 23||Request processing main events.|
|Bit 22||Request processing detailed functions.|
|Bit 21||Remote debugger main events.|
|Bit 20||Remote debugger detailed functions.|
|Bit 15||Trace error situations only.|
|Bit 14||Apply trace filter definitions.|
|Bit 00||Reserved for trace-level extension.|
It is possible to restrict the trace by a logical filter in order to reduce the volume of the server trace output.
The filter can be set with the configuration parameter
The filter may consist of multiple
separated by spaces.
To activate the filter definition, the trace bit 14 in the trace status word (see Trace Level) must be set.
The filter keyword is:
||Filters the trace output by specific clients.|
The following rules apply:
If a keyword is defined multiple times, the values are cumulated.
The value must be enclosed in braces and can be a list of filter values separated by spaces.
The values are not case sensitive.
Asterisk notation is possible.
Each request of the user ID
KSP and each request of the
user IDs starting with a
P are traced.
Calls to the
NATRJE utility (Natural Remote Job Entry) are
supported. For technical reasons, however, the file name of the job to be
submitted is created in a way which is different from batch operation in a TIAM
or openUTM environment. The file name has the following structure:
|DDMMYYYY||is the day, month and year when the
|XXXXXXXX||is the time since midnight (00.00 h) in hundreds of seconds.|
|program-name||is the name of the Natural program that calls the
|terminal-id||is the Natural terminal ID as contained in the
system system variable