Menu

Tree [989c32] master /
 History

HTTPS access


File Date Author Commit
 build 2014-09-11 Michael Medin Michael Medin [989c32] * More build tweaks (does it ever end?)
 clients 2014-09-06 Michael Medin Michael Medin [8b85eb] 2014-09-06 MickeM
 docs 2014-09-08 Michael Medin Michael Medin [ffeee9] * Added SSL support for mongoose and WEBServer
 ext 2014-09-11 Michael Medin Michael Medin [989c32] * More build tweaks (does it ever end?)
 files 2014-07-05 Michael Medin Michael Medin [3b5834] Moved documentation to a separate repository an...
 include 2014-09-11 Michael Medin Michael Medin [989c32] * More build tweaks (does it ever end?)
 installers 2014-09-06 Michael Medin Michael Medin [8b85eb] 2014-09-06 MickeM
 libs 2014-09-11 Michael Medin Michael Medin [989c32] * More build tweaks (does it ever end?)
 modules 2014-09-08 Michael Medin Michael Medin [ffeee9] * Added SSL support for mongoose and WEBServer
 patches 2013-01-15 Michael Medin Michael Medin [5de642] * x64 build fixes as well as improvments to bu...
 resources 2013-05-21 Michael Medin Michael Medin [d9318f] Updated documentation and added make.bat to eas...
 scripts 2014-09-08 Michael Medin Michael Medin [ffeee9] * Added SSL support for mongoose and WEBServer
 service 2014-09-11 Michael Medin Michael Medin [989c32] * More build tweaks (does it ever end?)
 tools 2014-07-10 Michael Medin Michael Medin [5c94c7] removed all precompiled headers (since they wer...
 vagrant 2014-09-06 Michael Medin Michael Medin [8b85eb] 2014-09-06 MickeM
 web 2014-08-02 Michael Medin Michael Medin [12d16e] * Major refactoring of json handling
 .gitignore 2014-05-18 Michael Medin Michael Medin [5bbc87] Added first web server prototype and REST support
 .gitmodules 2014-08-02 Michael Medin Michael Medin [12d16e] * Major refactoring of json handling
 .travis.yml 2014-01-04 Michael Medin Michael Medin [a7e2a4] 2014-01-04 MickeM
 CMakeLists.txt 2014-09-11 Michael Medin Michael Medin [989c32] * More build tweaks (does it ever end?)
 README.md 2013-11-04 Pall Sigurdsson Pall Sigurdsson [bef0ba] Show travis build status in README.md
 changelog 2014-09-11 Michael Medin Michael Medin [989c32] * More build tweaks (does it ever end?)
 check_deps.cmake 2012-08-14 Michael Medin Michael Medin [0845bc] * New experimental way to build things automag...
 nscp.spec 2013-10-16 Pall Sigurdsson Pall Sigurdsson [d05954] RPM Spec file added for nscp
 version.txt 2014-09-11 Michael Medin Michael Medin [989c32] * More build tweaks (does it ever end?)

Read Me

NSClient++

Build Status

NSClient++ (nscp) aims to be a simple yet powerful and secure monitoring daemon.
It was built for Nagios/Icinga, but nothing in the daemon is Nagios/Icinga specific and it can be used in many other scenarios where you want to receive/distribute check metrics.

The deamon has 3 main functions:

  • Allow a remote machine (monitoring server) to request commands to be run on this machine (the monitored machine) which return the status of the machine.
  • Submit the same results to a remote (monitoring server).
  • Take action and perform tasks.

NSClient++ can be found at: http://nsclient.org

Documentation can be found at: http://docs.nsclient.org

Extending NSClient++

NSClient++ is designed to be open ended and allow you to customize it in any way you design thus extensibility is a core feature.

  • ExternalScripts responds to queries and are executed by the operating system and the results are returned as-is.
    This is generally the simplest way to extend NSClient++ as you can utilize whatever infrastructure or skill set you already have.
  • LuaScripts are internal scripts which runs inside NSClient++ and performs various tasks and/or responds to queries.
    This is the best option if you want to allow the script to run on any platform with as little infrastructure as possible.
  • PythonScripts are internal scripts which runs inside NSClient++ and performs various tasks and/or responds to queries.
    Python is an easy and powerful language but it requires you to also install python which is often not possible on server hardware.
  • .Net modules similar to Native modules below but written on the dot-net platform.
    This allows you to write components on top of the large dot-net ecosystem.
  • Modules are native plugins which can extend NSClient++ in pretty much any way possible.
    This is probably the most complicated way but gives you the most power and control.

Talking to NSClient++

Since NSClient++ is meaningless by itself it also supports a lot of protocols to allow it to be used by a lot of monitoring solutions.

  • NRPE (Nagios Remote plugin Executor) is a Nagios centric protocol to collect remote metrics.
  • NSCA (Nagios Service Check Acceptor) is a Nagios centric protocol for submitting results.
  • NSCP is the native NSClient++ protocol (still under development)
  • dNSCP is a high performance distributed version of NSCP for high volume traffic.
  • NRDP is a replacement for NSCA.
  • check_mk is a protocol utilized by the check_mk monitoring system.
  • Syslog is a protocol primarily designed for submitting log records.
  • Graphite allows you do real-time graphing.
  • SMTP is more of a toy currently.

Supported OS/Platform

NSClient++ should run on the following operating systems:
* Windows: From NT4 SP5 up to Windows 2008 and Windows 7
* Linux: Debian, Centos and Ubuntu (and possibly others as well)
* Win32, x64 as well as various Linux hardware as well.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.