How to generate error logs for NX 3.5.0 software

Added on: 2012-08-21 Last Modified: 2012-08-21
ID: AR08J00651 Applies To: NX Software

The Server Side

  • Login as user 'root' to the NX Server host.
  • Ensure that the shutdown procedure does not delete the temporary NX directory at the end of the session. To do that edit the node configuration file:

    /usr/NX/etc/node.cfg 
    and uncomment the following line:

    SessionLogClean = "0" 
  • Increase the logging facility level of NX node by modifying the SessionLogLevel key in the node.cfg file to have:
    SessionLogLevel = "7" 
  • Also increase the logging facility level of NX server by editing the server configuration file:

     /usr/NX/etc/server.cfg 
    and modifying the SessionLogLevel key to have:
    SessionLogLevel = "7" 
  • Run your tests by running a new session.
  • When the session terminates, either because of normal shutdown or because of an error, locate the NX session directory on your system. You can find the NX session directory under the directory .nx. The .nx directory is created by default in the user's home, or in the directory specified by the UserNXDirectoryPath node configuration key, when enabled.

    Session directories are named according to the following standard:

    ~/.nx/C-(Server Name)-(Display ID)-(Session ID) 
    When a session is terminated correctly, the session directory is renamed as:

    ~/.nx/T-C-(Server Name)-(Display ID)-(Session ID) 
    When a session is terminated because of an error, the session directory is renamed as:

    ~/.nx/F-C-(Server Name)-(Display ID)-(Session ID) 
    In the NX session directory there are three log files that can be relevant for you. The file 'session' contains the stderr stream of NX Proxy and NX Agents. The file 'session' will usually contain the information that is most relevant for you. The file 'errors' is an additional logging facility useful for tracing the internal operation of NX Proxy. The file 'clients' will contain the stderr of the X applications run by the user if the ClientLog key is not disabled in the NX node configuration file.
  • A  typical failed session might look like the following:
    #> F-C-tahoe.nomachine.com-
    1050-0D03F09DF3A3B0756511509305D47E7C
  • Now extract from the syslog file the lines generated by NX Server and NX node:

    #> grep NX /var/log/messages > syslog.extract 

    In case of multi-node support enabled, you need to:

    - Login to the NX Node host and execute the operations described above to retrieve both the session log files and the lines generated by NX Node in the syslog file:

    #> tar -cvpf failed.session.tar $HOME/.nx/
    (session directory) #> grep NX /var/log/messages >
    node-syslog.extract

    - Login to the NX Server host to extract from the syslog file the lines generated by NX Server:

    #> grep NX /var/log/messages > server-syslog.extract 

    Important Note for Solaris users:

    depending on the system configuration it could be required to modify the settings of the syslog daemon. Please make sure that a line similar to the following is present in the configuration file:

    *.err;user.debug;kern.debug;daemon.notice;mail.crit 
    /var/adm/messages

    Then restart the daemon for the changes you have made to take effect.

  • Add the new file to the archive and compress it:

    #> tar -rvpf failed.session.tar syslog.extract 
  • And:

    #> gzip failed.session.tar  
  • For valid subscription users, be sure you include the generated archive in the support request in the form of an e-mail attachment.


The Client Side

On the client side the logs are available in the  '.nx' user's directory and send to us. On our request you can submit them by doing the following:

  • on Linux and Solaris:

    tar -cvp --exclude 'cache*' --exclude 'images' 
    \ -f - $HOME/.nx | gzip -c >nxdir.tar.gz
  • on Windows you can use the WinZip utility to generate a zip file of the directory:
    %userprofile%\.nx [Windows 2000/2003/XP/Vista] 
    excluding the 'cache' and 'images' subdirectories.