NXLog Legacy Documentation

Debian & Ubuntu

This topic describes the steps to install and upgrade NXLog on Debian GNU/Linux and its derivatives.

Installing

First, download the appropriate NXLog installation file from the NXLog website.

  1. Log in to your account, hover your mouse over your account avatar icon at the top of the page, and click on Downloads.

  2. In the Downloads section:

    1. select your NXLog Enterprise Edition version from the drop-down menu

    2. select your platform by clicking one of the icons

    3. select the files you want to download

  3. Click Download at the bottom.

    Table 1. Available Debian/Ubuntu Archives
    Platform Archive

    Debian 10 (Buster)

    nxlog-6.4.9638_debian10_amd64.tar.bz2
    nxlog-6.4.9638_debian10_arm64.tar.bz2

    Debian 11 (Bullseye)

    nxlog-6.4.9638_debian11_amd64.tar.bz2
    nxlog-6.4.9638_debian11_arm64.tar.bz2

    Ubuntu 16.04 (Xenial Xerus)

    nxlog-6.4.9638_ubuntu16_amd64.tar.bz2

    Ubuntu 18.04 (Bionic Beaver)

    nxlog-6.4.9638_ubuntu18_amd64.tar.bz2

    Ubuntu 20.04 (Focal Fossa)

    nxlog-6.4.9638_ubuntu20_amd64.tar.bz2
    nxlog-6.4.9638_ubuntu20_armhf.tar.bz2
    nxlog-6.4.9638_ubuntu20_arm64.tar.bz2

    Ubuntu 22.04 (Focal Fossa)

    nxlog-6.4.9638_ubuntu22_amd64.tar.bz2
    nxlog-6.4.9638_ubuntu22_armhf.tar.bz2
    nxlog-6.4.9638_ubuntu22_arm64.tar.bz2

    Generic DEB

    nxlog-6.4.9638_generic_deb_amd64.deb

    The NXLog installer packages are digitally signed. For more details about package verification, see the Signature Verification for DEB Packages section in the User Guide.

    The examples in the following sections use the amd64 installer. Replace your exact package name accordingly when using the sample commands listed.

  4. Transfer the file to the target server using SFTP or a similar secure method.

  5. Log in to the target server and extract the contents of the archive (unless you are using the generic package):

    # tar -xvf nxlog-6.4.9638_debian10_amd64.tar.bz2
    Table 2. Packages in a Debian/Ubuntu Archive
    Package Description

    nxlog-6.4.9638_amd64.deb

    The main NXLog package

    nxlog-checkpoint-6.4.9638_amd64.deb

    Provides the im_checkpoint module

    nxlog-dbi-6.4.9638_amd64.deb

    Provides the im_dbi and om_dbi modules

    nxlog-java-6.4.9638_amd64.deb

    Provides the xm_java, im_java, and om_java modules

    nxlog-kafka-6.4.9638_amd64.deb

    Provides the im_kafka and om_kafka modules

    nxlog-odbc-6.4.9638_amd64.deb

    Provides the im_odbc and om_odbc modules

    nxlog-pcap-6.4.9638_amd64.deb

    Provides the im_pcap module

    nxlog-perl-6.4.9638_amd64.deb

    Provides the xm_perl, im_perl, and om_perl modules

    nxlog-python-6.4.9638_amd64.deb

    Provides the xm_python, im_python, and om_python modules

    nxlog-ruby-6.4.9638_amd64.deb

    Provides the xm_ruby, im_ruby, and om_ruby modules

    nxlog-systemd-6.4.9638_amd64.deb

    Provides the im_systemd module

    nxlog-wseventing-6.4.9638_amd64.deb

    Provides the im_wseventing module

    nxlog-zmq-6.4.9638_amd64.deb

    Provides the im_zmq and om_zmq modules

  6. Install the NXLog package(s) and their dependencies.

    1. Optional: To change the NXLog user and group for the installation, set the NXLOG_USER and NXLOG_GROUP environment variables. During installation, a new user and a new group will be created based on these environment variables. They will be used for User and Group directives in nxlog.conf, and for the ownership of some directories under /opt/nxlog. Specifying an already existing user or group is not supported. The created user and group will be deleted on NXLog removal.

      # export NXLOG_USER=nxlog2
      # export NXLOG_GROUP=nxlog2
    2. Use dpkg to install the required NXLog packages (or the generic package, if you are using that).

      # dpkg -i nxlog-6.4.9638_amd64.deb
    3. If dpkg returned errors about uninstalled dependencies, use apt-get to install them and complete the NXLog installation.

      # apt-get -f install
  7. Configure NXLog by editing /opt/nxlog/etc/nxlog.conf. General information about configuring NXLog can be found in Configuration. For more details about configuring NXLog to collect logs on Linux, see the GNU/Linux summary.

  8. Verify the configuration file syntax.

    # /opt/nxlog/bin/nxlog -v
    2017-03-17 08:05:06 INFO configuration OK
  9. Start the service using the service command:

    # service nxlog start
  10. Check that the NXLog service is running with the service command.

    # service nxlog status
    ● nxlog.service - LSB: logging daemon
       Loaded: loaded (/etc/init.d/nxlog)
       Active: active (running) since Wed 2016-10-19 22:21:36 BST; 3h 49min ago
      Process: 518 ExecStart=/etc/init.d/nxlog start (code=exited, status=0/SUCCESS)
       CGroup: /system.slice/nxlog.service
               └─6297 /opt/nxlog/bin/nxlog
    [...]

Upgrading

To upgrade an NXLog installation to the latest release, or to replace a trial installation of NXLog Enterprise Edition with a licensed copy, use dpkg as explained in the installation instructions above. It is recommended to make a backup of the configuration files before starting this process.

# dpkg -i nxlog-6.4.9638_amd64.deb
The same procedure is used to upgrade from NXLog Community Edition to NXLog Enterprise Edition. However, in such case, you will need to manually copy the previous configuration to the new installation.

When upgrading to a licensed copy with additional NXLog trial packages installed, such as nxlog-trial-python, use dpkg -i --auto-configure.

# dpkg -i --auto-configure nxlog-6.4.9638_amd64.deb \
  nxlog-python_6.4.9638_amd64.deb

Make sure to edit this example to include all nxlog-trial packages that are actually installed.

If dpkg returns errors about uninstalled dependencies, resolve with apt-get.

# apt-get -f install
The same user and group will be used for the upgrade as was used for the original installation (see installation user and group above). Changing to a different user and group during upgrade is not supported.

Uninstalling

To uninstall NXLog, use apt-get. To remove any unused dependencies (system-wide), include the --auto-remove option. Verify the operation before confirming!

# apt-get remove '^nxlog*'
Use apt-get purge instead to also remove configuration files. But in either case, this procedure may not remove all files that were created in order to configure NXLog, or that were created as a result of NXLog’s logging operations. To find these files, consult the configuration files that were used with NXLog and check the installation directory (/opt/nxlog).