The Debug Log File

> ## Appendix G

> ## The Debug Log File

> The license server produces both debug log files and report log files. The focus of this appendix is debug log files. For information on report log files see Appendix F, “The Report Log File.”

> A debug log file contains status and error messages useful for debugging the license server. A license server always generates debug log output. Some of the debug log output describes events specific to `lmgrd` and some of the debug log output describes events specific to each vendor daemon.

> ### G.1 Managing Debug Log Output

> As `lmgrd` and its vendor daemons run for a period of time, the volume of this output increases. As it gets older, the value of the debug log output decreases; therefore, it may be necessary for you to separate old debug log output from current output; either archive or delete the old output.

> For performance, it is suggested that each debug log file be a on disk that is local to the machine that is running `lmgrd` and its vendor daemons. However, if the debug log file must be on a remotely-mounted disk and you find that the license server is too slow, start `lmgrd` with the `-nfs_log` option to improve performance.

> See Section G.2, “Debug Log Messages,” for a description of the debug log output format.

> #### G.1.1 Capturing Debug Log Output for a License Server

> By default, `lmgrd` and the vendor daemons it manages write debug log output to standard out. To put this debug log output in a file, either redirect the output of the license server to a file or start `lmgrd` with the `-l` `debug_log_path` option.

> #### G.1.2 Capturing Debug Log Output for a Particular Vendor Daemon

> The debug log output from different vendor daemons controlled by the same license server can be written to their own files (v8.0+ vendor daemon). There are two ways to do this:

> - Add the DEBUGLOG line to the options file for each vendor daemon. See Section 5.2.2, “DEBUGLOG,” for more details.
> - Invoke `lmswitch` on the vendor daemon. See Section 7.13, “lmswitch,” for more details.

> Note that `lmgrd` writes its own debug log output to standard out.

> #### G.1.3 Redirecting Debug Log Output for a Running Vendor Daemon

> It is possible to redirect the debug log output for a particular vendor daemon to a different file. There are two ways to do this:

> - Change the DEBUGLOG line to the options file for the vendor daemon and reread its options file by invoking `lmreread`. See Section 5.2.2, “DEBUGLOG,” for more details.
> - Invoke `lmswitch` on the vendor daemon. See Section 7.13, “lmswitch,” for more details.

> #### G.1.4 Limiting Debug Log Output for a Vendor Daemon

> By default, debug log output contains all events. To limit the events that are logged for a particular vendor daemon, add a NOLOG line to the options file of that vendor daemon. See Section 5.2.16, “NOLOG,” for more details. One of the reasons you may want to limit the events that are logged is to reduce the size of the debug log output.

> ### G.2 Debug Log Messages

> FLEXlm daemons generate debug log files in the following format:

> `hh`:`mm`:`ss` (`daemon`) `message`

> where:

> `hh``:``mm`:`ss` | Time that the message was logged.
> `daemon` | Either `lmgrd` or the vendor daemon name. In the case where a single copy of the daemon cannot handle all of the requested licenses, an optional “_” followed by a number indicates that this message comes from a forked daemon.
> `message` | The text of the message.

> The debug log files can be used to:

> - Diagnose configuration problems
> - Diagnose daemon software errors

> > Note: A debug log file cannot be used for usage reporting with SAMreport.

> #### G.2.1 Informational Messages

> Message | Description
> --- | ---
> Connected to host | This daemon is connected to its peer on `host`.
> CONNECTED, master is host | The license daemons log this message when a quorum is up and everyone has selected a master.
> DENIED: num_lic feature to user | `user` was denied access to `num_lic` licenses of `feature`.
> EXITING DUE TO SIGNAL nnn EXITING with code nnn | All daemons list the reason that the daemon has exited.
> EXPIRED: feature | `feature` has passed its expiration date.
> IN: “feature” user (num_lic licenses) | `user` has checked in `num_lic` licenses of `feature`.
> Lost connection to host | A daemon can no longer communicate with its peer on node `host`, which can cause the clients to have to reconnect, or cause the number of daemons to go below the minimum number, in which case clients may start exiting. If the license daemons lose the connection to the master, they kill all the vendor daemons; vendor daemons shut themselves down.
> Lost quorum | The daemon lost quorum, so it processes only connection requests from other daemons.
> MULTIPLE vendor servers running. Please kill, and restart license daemon. | The license manager daemon, `lmgrd`, has detected that multiple vendor daemons for `vendor` are running. Shutdown `lmgrd` and all `vendor` daemons with the `lmdown` utility and then restart `lmgrd`.
> OUT: “feature” user (num_lic licenses) | `user` has checked out `num_lic` licenses of `feature`.
> RESERVE feature for USER user RESERVE feature for HOST host | A license of `feature` is reserved for either `user` or `host`.
> REStarted vendor (internet port nnn) | Vendor daemon `vendor` was restarted at TCP/IP port `nnn`.
> Retrying socket bind (address in use) | The license servers try to bind their sockets for approximately six minutes if they detect “address in use” errors.
> Selected (EXISTING) master host. | This license daemon has selected an existing master `host` as the master.
> SERVER shutdown requested. | A daemon was requested to shut down via a user-generated `kill` command.
> Server started on host for: “feature_list” | A (possibly new) server was started for the features listed.
> Shutting down vendor | The license manager daemon is shutting down the vendor daemon `vendor`.
> SIGCHLD received. Killing child servers. | A vendor daemon logs this message when a shutdown was requested by the license daemon.
> Started vendor | The license manager daemon logs this message whenever it starts a new vendor daemon.
> Trying to connect to host | The daemon is attempting a connection to `host`.

> ####

> #### G.2.2 Configuration Problem Messages

> Message | Description
> --- | ---
> host: Not a valid server host, exiting | This daemon was run on an invalid host name.
> host: Wrong hostid, exiting | The hostid is wrong for `host`.
> BAD CODE for feature | The specified feature name has a bad license key or signature. It was probably typed in wrong, or modified by the end user.
> CANNOT OPEN options file file | The options file specified in the license file could not be opened.
> Couldn’t find a master | The daemons could not agree on a master.
> License daemon: lost all connections | This message is logged when all the connections to a server are lost, which often indicates a network problem.
> Lost lock, exiting Error closing lock file Unable to re-open lock file | The vendor daemon has a problem with its lock file, usually because of an attempt to run more than one copy of the daemon on a single node. Locate the other daemon that is running via a `ps` command, and kill it with `kill -9`.
> No DAEMON line for vendor | The license file does not contain a DAEMON or VENDOR line for `vendor`.
> No DAEMON lines, exiting | The license daemon logs this message if there are no DAEMON or VENDOR lines in the license file. Because there are no vendor daemons to start, there is nothing for the license daemon to do.
> No features to serve! | A vendor daemon found no features to serve. This could be caused by a corrupted or incorrectly entered license file.
> UNSUPPORTED FEATURE request: feature by user | The user has requested a feature that this vendor daemon does not support. This can happen for a number of reasons: the license file is bad, the feature has expired, or the daemon is accessing the wrong license file.
> Unknown host: host | The host name specified on a SERVER line in the license file does not exist in the network database (probably `/etc/hosts`).

> ####

> #### G.2.3 Daemon Software Error Messages

> Message | Description
> --- | ---
> accept: message | An error was detected in the “accept” system call.
> Can’t allocate server table space | A malloc error. Check swap space.
> Connection to host TIMED OUT | The daemon could not connect to `host`.
> Illegal connection request to vendor | A connection request was made to `vendor`, but this vendor daemon is not `vendor`.
> read: error message | An error in a “read” system call was detected.
> select: message | An error in a “select” system call was detected. This is usually a sign of a system networking failure.
> Server exiting | The server is exiting. This is normally due to an error.

> ####

FLEXlm End Users Guide
July 2003