Skip to content

0.11.6 New release

New check_nsclient client

This new release adds a new check_nsclient client tool. This is a stand-alone application you can use to connect to and interact with NSClient. This new client can:

  • Run queries/checks
  • Change configuration
  • Show logs
  • Load/unload modules

It also have an interactive client you can use which is aimed as a replacement for "test mode".

To connect to NSClient you need to have the web server enabled and then you can login with the same username and password as you use in the web-ui:

$ check_nsclient nsclient auth login --password PASSWORD --ca %LOCALAPPDATA%\mkcert\rootCA.pem
Successfully logged in

Credentials are securely stored in store in credential manager.

The reason there is a nsclient command line option is that soon this will also support NRPE and other protocols as well becoming a universal monitoring tool.

After this you can show logs:

$ check_nsclient nsclient logs list
╭────────┬───────────────────────┬──────────────────────────────────────────────────────────────────╮
│ level │ date                 │ message                                                         │
├────────┼───────────────────────┼──────────────────────────────────────────────────────────────────┤
│ debug │ 2026-Jan-11 12:36:26 │ NSClient++ 0.4.0 2026-01-11 x64 booting...                      │
│ debug │ 2026-Jan-11 12:36:26 │ Booted settings subsystem...                                    │
│ debug │ 2026-Jan-11 12:36:26 │ Archiving crash dumps in: C:\src\build\nscp/crash-dumps         │
│ debug │ 2026-Jan-11 12:36:26 │ Found: CheckExternalScripts                                     │
│ debug │ 2026-Jan-11 12:36:26 │ Found: CheckSystem                                              │
│ debug │ 2026-Jan-11 12:36:26 │ Found: Checkhelpers                                             │
│ debug │ 2026-Jan-11 12:36:26 │ Found: LuaScript                                                │
│ debug │ 2026-Jan-11 12:36:26 │ Found: NRPEServer                                               │
│ debug │ 2026-Jan-11 12:36:26 │ Found: WEBServer                                                │
╰────────┴───────────────────────┴──────────────────────────────────────────────────────────────────╯

Or to load and enable a module you can:

$ check_nsclient nsclient modules use CheckHelpers
Successfully loaded and enable module CheckHelpers

Or you can execute queries:

$ check_nsclient nsclient queries execute-nagios check_cpu
OK: CPU load is ok.|'total 5m'=10%;80;90 'total 1m'=10%;80;90 'total 5s'=7%;80;90

As well as launch the new interactive client:

check_nsclient nsclient client

image

The client is included in the installer or it can be downloaded separately below as check_nsclient

One benefit of this client is that it can output everything as text, json, yaml or csv making it easy too integrate in any system:

$ check_nsclient --output json nsclient queries execute check_cpu
{
  "command": "check_cpu",
  "lines": [
    {
      "message": "OK: CPU load is ok.",
      "perf": {
        "total 1m": {
          "value": 12.0,
          "unit": "%",
          "warning": 80.0,
          "critical": 90.0,
        },
        "total 5s": {
          "value": 21.0,
          "unit": "%",
          "warning": 80.0,
          "critical": 90.0,
        },
        "total 5m": {
          "value": 11.0,
          "unit": "%",
          "warning": 80.0,
          "critical": 90.0,
        }
      }
    }
  ],
  "result": 0
}

You cal also have multiple profiles (foo) and connect to remote systems (--url):

check_nsclient nsclient auth login foo --url https://127.0.0.1:8443 --password PASSWORD --insecure
# ...
check_nsclient --output json nsclient --profile foo queries execute check_cpu

Once your are done you can log out (and remove credentials from credential store);

check_nsclient nsclient auth logout

Download

You can download the new version from GitHub

// Michael Medin