action.skip

Databridge Client Manager Service/Daemon Messages


Log Messages

The following messages are only written to the Client Manager Service log file, which is located in the logs directory in the global working directory. These messages are prefixed by the timestamp hh:mm:ss (where hh is hours, mm is minutes, and ss is seconds).


Bindsocket({AF_INET | AF_INET6}, port)

This message, which is logged at the start of the Service, indicates that the Service is binding the socket to listen for connect requests on the specified port number using the given protocol. AF_INET6 is IPV6 and AF_INET is IPV4.


Blackout period for data source name starting, run will be restarted after the blackout period ends at [+]hh:mm:ss

The Client exits with an exit code of 2020 when it determines that a blackout period is about to start. Upon seeing this exit code, the service writes this message to its log file and schedules the launching of a process command for the data source in question a few seconds after the blackout period ends. This allows the client to resume without any operator intervention. A + sign preceding the time indicates that the time is on the next day.


Closing [{CNS | IPC}] Session dd, socket = nnn[, userid = 'userid']

This message indicates that the corresponding Console or IPC socket is being closed. IPC sockets are used to pass messages between spawned client runs (DBClient or DBClntCfgServer) and the Service/Daemon (DBClntControl). The userid is provided for Console Sessions.


CNS Session dd, socket = nnn initialization complete

This message indicates that a console session has successfully been initialized. After the signon RPC is received and validated, the following message appears "CNS Session nn, ... signon complete.


CNS Session nn, userid = 'userid', {role = role | security = 0xhhhhhhhh,0xhhhhhhhh}, signon complete

This message indicates that a Console session has successfully signed on the Service. The supplied userid and role are listed in the log file for reference. The defined roles are “administrator”, “operator” and “user”. If the userid is using customized rather than a predefined role, the security bits are listed instead. The security bits are represented by two 32-bit numbers displayed in hexadecimal format. Refer to Administrative Console documentation for a definition of these bits that represent the individual menu items the user is allowed to use. Menu items whose security bit is 0, will be grayed out.


Command line too long for data source name, clone command cannot be run

This message indicates that the command line for a clone command is too long. The current limit is 4096 characters, which should be enough for a reasonable clone command. Consider using the -Y with a process command or the -x option with a clone command when the number of data sets not to be cloned is less than the number of data sets to be cloned.


Configuration information read from binary file "dbcontrol.cfg"

This message, which is logged when the configuration parameter debug is set to True, confirms that the Service has successfully read the binary configuration file “dbcontrol.cfg” from the config subdirectory of the Service's working directory.


Copying working directory for data source name to directory "failed_add_tmp"

When adding a new data source fails, the service removes the directory for the data source, which makes it difficult to determine why the add failed. To remedy this situation the Service copies the working directory for the data source to the temporary directory failed_add_tmp after clearing it out if it already exists. This allows you to look at the log file and see why the add failed. Once you have resolved the problem you should delete this directory.


CreateProcess: cmdline = "cmdline"
CreateProcess: cd = "workingdir"
CreateProcess: module = "filename"*

These 3 messages are logged when the configuration parameter debug is set to True. The first line shows the command line for a spawned run. The second line shows the working directory used by a spawned run. The third line shows the program file used to spawn the run.


Current activity: nnn console sessions, mmm ipc sessions, ddd data sources

This message shows the number of active sessions for consoles (which include Administrative Consoles and bconsole runs), the number of spawned runs and the number of data sources. Each spawned run uses one IPC connection.


Data Source name disabled (client exit_code = nnnn)

This message indicates that the Service disabled the specified data source because the run’s exit code indicated an unrecoverable error. The reason for disabling a data source is to prevent any further client runs in situations where the client will keep encountering the same problem. After the problem is resolved, you must enable the data source from the Administrative Console and restart the client.


Data Source name disabled after number retries failed

The Service automatically performs error recovery for most exit codes that are thought to be recoverable. It does so by restarting the client after a brief delay and repeats this process a few times. The client stops retrying when the number of retries reaches the value of the max_retries parameter specified in the Service's configuration file for the data source is reached. When this happens it disables the data source and logs this message.


Databridge Client Control Program Version version

This message identifies the version of the code. It is logged when the program starts. The version is of the form M.m.g.ppp where M and m are the major and minor versions of the software (e.g. 7.0), g is a group number that is incremented when an Update or Service Pack is issued, ppp is the latest patch number. Consult the file readme.txt on the release medium for a list of all relevant patches in a Hot fix, Update or Service Pack.


DBClntControl automatically launching a {generate | redefine} command for data source name

This message is logged when the auto_redefine or auto_generate options are enabled for a data source. It indicates that the Service has launched a DBClntCfgServer run to perform the specified command. These options are designed to automate the handling of simple DMSII reorganizations without interrupting production.


DBClntControl automatically launching dbfixup for data source name

This message indicates that the Service encountered a Client exit code of 2056, which indicates that the Client Control Tables are out of date and need to be updated by running the dbfixup utility. Starting with version 6.6 the Client Manager Service automatically does this.


DBClntControl shutting down; listen socket closed

This message is logged when the Service closes the socket it listens on, when it starts to shut down. The service sends all of the launched Clients and indication that they should terminate before it completes its shut down.


Deleting working directory tree for data source name

This message is logged when a request is received from the Console to remove a data source and its directories.


End_of_run: data_source = name, process_id = nnnn, exit_code = dddd [(Run terminated prematurely)]

This message is logged when a launched client notifies the Service that the run is terminating. To determine which type of run it is, you must find the corresponding Start_of_run: … message, with a matching process_id. In the unlikely case when the client run crashes or it loses the IPC connection to the Service, the exit code will be followed by the text Run terminated prematurely.


Exit code nnnn (error_text), data source name disabled.

This message indicates that the launched client returned an exit code that corresponds to a recoverable error, that has error recovery disabled. When this happens, this message is written to the service's log file and an alert with the same text is sent to the Administrative Console, which can forward the alert by sending an e-mail to a distribution list.


Exit code nnnn (error_text), data source name disabled after nn retries failed.

This message indicates that the launched client returned an exit code that corresponds to a recoverable error, but the error continued to occur until the maximum retry count was reached. When this happens this message is written to the service's log file and an alert with the same text is sent to the Administrative Console, which can forward the alert by sending an e-mail to a distribution list.


Failed to remove working directory for data source name, rc = nn, errno = dd

This message indicates that the attempt to remove the working directory for the data source in question failed. If this happens you will need to make sure that the data source is removed from the configuration file, by running "dbctrlconfigure export", which will create the file "dbcontrol.ini" in the config folder. Edit this file and look at the data source list; if the data source is still there you will need to remove it from the list and delete the section for the data source from the file "dbcontrol.ini". You then need to run "dbctrlconfigure import" to import the updated text configuration file. Finally, remove the working directory for the data source and restart the Service.


IPC Session dd, socket = nnn initialization complete

This message indicates that a launched run has initialized its IPC session and the two programs can now communicate with each other using this socket.


Launching script: "filename"

This message indicates that the specified command file (shell script for UNIX) is being launched by the Service.


Log file switched from "filename" (reason)

This message is written to the new log file immediately after a log switch occurs. It provides the name of the previous log file, which is sometime useful if need to find out what happened at a time before the switch.

Log file switched to "filename" (reason)

This message is written to the log file under the following conditions, which cause the Service to close the current log file and open a new one:

  • The logsw_on_size configuration parameter is set to True and file size exceeds the configured maximum (the Service check the log file size after a prescribed number of messages are written to the log file).
  • The logsw_on_newday configuration parameter is set to True and the Service notices that the date has changed.
  • The operator issues a Logswitch command.

The values for reason include Operator Keyin, Max file size, and Date change.


Manager for data_source name timed out -- stopping DBClntCfgServer

When the Administrative Console connects to the Service, it requests information about the data source, which the Service does maintain. The Service launches DBClntCfgServer to run a manage command, which allows it to indirectly get access to the database. To avoid tying up resources, such runs are brief in duration and terminate after a minute of inactivity. This message indicates that the launched run is terminating.


Non-standard data source working directory for srcname, files not deleted

This message is logged when processing a request from the Administrative Console to remove a data source's working directory. If it is not a subdirectory of the Service’s working directory, it is not removed and this message is logged. This prevents the deletion of a directory that has been moved to a different location for safekeeping purposes. We recommend that you always use the directory structure imposed by the Service.


OPER: cmd command for data source src issued from console, userid = 'name'

This message is one of a series of messages that are designed to allow auditing of all operator actions. Such messages always start with the string OPER: , thus making it easy to find them by searching for this string in the log file. They also specify the userid of the operator that performed the action.

This message indicates that the operator, whose userid is name, has issued the given Administrative Console command for the given data source. This allows the auditing of operator actions, including actions that are directed at launched clients.


OPER: {DBClient | DBClntCfgServer} trace mask set to 0xhhhhhh from console, userid = 'name'

This message is logged when the Administrative Console operator enables the -t option with a value of 0xhhhhhh for all runs of the given program launched by the Service. You should not set this option unless you are trying to diagnose a problem with a launched runs that fails immediately. A failed Add > DataSource command is an example of a situation where it makes sense to use this option for DBClntCfgServer. It is highly unlikely that you will ever need to set this option for DBClient as you can specify trace options for runs launched in response to an Administrative Console operator command.

Note

This option stays in effect until it is explicitly disabled from the Administrative Console by setting the tracing option to "Trace none".


OPER: Data Source src added from console, userid = 'name'

This message indicates that the operator, whose userid is name, has added the specified data source using an Add > New command.


OPER: Data Source src {enabled | disabled} by the console, userid = 'name'

This message indicates that the operator, whose userid is name, has enabled or disabled the given data source.


OPER: Data Source src removed from console, userid = 'name'

This message indicates that the operator, whose userid is name, has removed the specified data source.


OPER: Data Source src signon information modified from console, userid = 'name'

This message indicates that the operator, whose userid is name, has changed the signon parameters for the given data source.


OPER: Existing Data Source src added from console, userid = 'name'

This message indicates that the operator, whose userid is name, has added the given data source, which already exists but it not known to the Service.


OPER: Password for userid 'name1' reset from console, userid = 'name2'

This message indicates that the operator, whose userid is name2, has changed the password for the userid name1. The Administrative Console manages the sign on from the browser by either using LDAP (recommended) or Simple Authentication, which saves the encrypted passwords in a CSV file. The only passwords that the Service needs to manage are those for bconsole runs. Any bconsole run that is launched in a command file (shell script in UNIX) uses a token passed to it on the command line. This token acts as a one-time password. We still use a password for bconsole connections originating from the command-line or from the Windows Scheduler (chron in the case of UNIX). If you need to use bconsole in this manner, you will need to use the Administrative Console to set the password for the userid it uses.


OPER: Permissions for userid 'name1' updated from console, userid = 'name2'

This message indicates that the operator, whose userid is name2, has customized the permissions for the userid name1.


OPER: Script "filename" launched from console, userid = 'name'

This message indicates that the operator, whose userid is name, has launched the given script file from the Administrative Console.


OPER: {Service | Daemon} Data Source srcname parameters modified from console, userid = 'name'

This message indicates that the operator, whose userid is name, has changed one of the parameters of the data source srcname.


OPER: {Service | Daemon} debug mode {enabled | disabled} from console, userid = 'name'

This message indicates that the operator, whose userid is name, has enabled or disabled debug mode for the Service. You should almost never need to do this, except when you are having trouble getting the Service to run.

Besides the log file, you should also look at the Windows Application Event Log, as the Client Manager Service also writes some messages in the Event Log if it encounters problems during startup.

In the case of UNIX the Daemon creates a log file named daemon.log in the Service's working directory where it provides some information about why the Daemon could not be started. Under normal circumstances this file will not be created. If the daemon starts successfully, it deletes this file.


OPER: {Service | Daemon} enable_status_file set to dd from console, userid = 'name'

(Clustered Windows systems only) This message indicates that the operator, whose userid is name, has changed the value of the parameter enable_status_file. If this parameter is set to True, the Service maintains a status file, which contains information about the state of the various data sources it controls. This file is named dbstatus.cfg and it resides in the config sub-directory. It is used to restart runs that were active before the Service is restarted. The difference between using this method and setting run_at_startup to True for a data source, is that latter causes the run to always be started, even if it was not active when the Service was taken down.

Note

If you attempt to set this parameter to True on a system that is not clustered and you have not purchased the Databridge Clustering option, the parameter will be ignored.


OPER: {Service | Daemon} listen port set to ddddd from console, userid = 'name'

This message indicates that the operator, whose userid is name, has changed the port number on which the Service listens. The Service starts out by using the port number that is defined at install time, after that you can change it from the Administrative Console. But if you do so, the change will only take effect after you stop and restart the Service.


OPER: {Service | Daemon} log parameters updated from console, userid = 'name'

This message indicates that the operator, whose userid is name, has changed some of the logging parameters for the Service.


OPER: {Service | Daemon} log file switched from console, userid = 'name'

This message indicates that the operator, whose userid is name, has made the Service switch log files. The current log file is closed and a new one with a different name is opened. The new log file will use today’s today date as part of the name, unless the old file was already doing so, in which case it will also add the time to the file name to make it unique.


OPER: {Service | Daemon} n_script_threads set to dd from console, userid = 'name'

This message indicates that the operator, whose userid is name, has changed the number of threads for handling scripts that are launched by the Service. Depending on what you do in scripts launched by the service you need more than one script launcher thread if the scripts involve running a program that could block or take a long time to complete, as this would prevent the service from running any additional scripts until the launched script terminates.


OPER: {Service | Daemon} sess_start_timeout set to dd from console, userid = 'name'

This message indicates that the operator, whose userid is name, has changed the sess_start_timeout parameter in the Service’s configuration file. This parameter specifies the length of time that the service waits for input from a new IPC connection before forcing a disconnect. The reason for doing this is to protect against a flood of rogue connection requests that would otherwise cripple the service.

In some cases, the default value of 2 seconds might be too low. This parameter allows you to adjust the value to best suit your environment.


OPER: {Service | Daemon} startup_delay set to ddd from console, userid = 'name'

This message indicates that the operator, whose userid is name, has changed the startup_delay parameter in the Service’s configuration file. This parameter ensures that process commands for all data sources do not launch simultaneously, which can result in the mainframe failing to start all workers and lead to failed runs. In most cases, the default value of 1 second is adequate.


OPER: {Service | Daemon} trace mask set to dd from console, userid = 'name'

This message indicates that the operator, whose userid is name, has modified the trace mask, which causes tracing of Console and/or IPC traffic to be enabled or disabled, based on the value specified. the following trace mask bits are defined:

Bit Trace target
1 Console traffic
2 IPC traffic
4 Monitor traffic
8 bconsole and BCNOTIFY traffic


OPER: Userid 'name1' added from console, userid = 'name2'

This message indicates that the operator, whose userid is name2, has added userid name1 to the Service’s configuration file.


OPER: Userid 'name1' removed from console, userid = 'name2'

This message indicates that the operator, whose userid is name2, has removed userid name1 from the Service’s configuration file.


OPER: Userid 'name1' switched to 'name1', {role = role | security = 0xhhhhhhhh,0xhhhhhhhh} |

When you run the Administrative Console for the first time, the first user is signed on using the built-in user ID, as there could be no userids defined in the Service's configuration file. This userid is normally used by the monitor session. The console then tries to switch users to the one the user is signed on to the Administrative Console. If this userid exists, no further action is taken. Otherwise, the Administrative Console adds the userid to the Service's configuration file and re-issues the switch userid RPC. The newly created userid will have enough privileges to be able to create additional userids.


OS version: version_string

This line, which is only written to the log file, displays the Operating System version string. For example "OS: Windows Server 2019 Standard".


Process ID pid

The Service writes the process id to the log file when it starts up, or the log file is switched.


read {CNS | IPC} Session nn (len=nnn):
data

This message is written to the log file when tracing is enabled. It shows the Session ID nn, the message length nnn and the raw data sent to the Service. The output is in debug format with both the hexadecimal values of the bytes and their interpretations as ASCII data.


RC_rpc_name

This message, which is logged when the parameter debug is enabled, identifies the RPC being executed. This is intended to be used in conjunction with a Service trace to make it a bit more readable.


Removing data source name

In some cases, the removal of a data source and its directories must be deferred until the spawned DBClntCfgServer run terminates. In those cases, this message appears when the process of removing the data source begins.


Scheduling for data source name delayed by ss seconds due to blackout period

This message indicates that the Service cannot start a scheduled run because here is a blackout period in effect. The Service simply postpones the start time of the run to coincide with the end the blackout period.


Start_of_run: data_source = srcname, process_id = dddd, command = name, originator = who[sched_type)]

This message is logged whenever the Service launches a client run for a data source. The command name is process or clone for DBClient runs and manage, configure, verifysource, redefine or generate for DBClntCfgServer runs.

The launched run can be initiated by any of the following: scheduler, select, console, config, verify, auto-redefine or auto-generate. If the run is started by scheduler, the sched_type value defines the type of scheduling used for the client run. Possible values for sched_type include: daily, fixed delay, err_retry or startup.


Starting scheduled process command for data source name

This message is logged when the Service launches a process command as a result of scheduling.


Starting [{CNS | IPC}] Session dd, socket = nnn, IP address = ipaddr

This message is logged when a connect request is successfully handled. These requests include Administrative Console, Administrative Console Custmonize commands (which use a separate connection) and IPC connections from spawned runs.


Starting verifysource command for data source name

When the Service adds a data source, it launches DBClntCfgServer to execute a verifysource command. This command determines whether the database and server access parameters are valid. If they are invalid, the Administrative Console operator must correct them before the data source is added.


write {CNS | IPC} Session nn (len=nnn):
data

This message is written to the log file when tracing is enabled. It shows the Session ID nn, the message length nnn and the raw data sent by the Service. The output is in debug format with both the hexadecimal values of the bytes and their interpretations as ASII data.