Unpacking Software Livestream

Join our monthly Unpacking Software livestream to hear about the latest news, chat and opinion on packaging, software deployment and lifecycle management!

Learn More

Chocolatey Product Spotlight

Join the Chocolatey Team on our regular monthly stream where we put a spotlight on the most recent Chocolatey product releases. You'll have a chance to have your questions answered in a live Ask Me Anything format.

Learn More

Chocolatey Coding Livestream

Join us for the Chocolatey Coding Livestream, where members of our team dive into the heart of open source development by coding live on various Chocolatey projects. Tune in to witness real-time coding, ask questions, and gain insights into the world of package management. Don't miss this opportunity to engage with our team and contribute to the future of Chocolatey!

Learn More

Calling All Chocolatiers! Whipping Up Windows Automation with Chocolatey Central Management

Webinar from
Wednesday, 17 January 2024

We are delighted to announce the release of Chocolatey Central Management v0.12.0, featuring seamless Deployment Plan creation, time-saving duplications, insightful Group Details, an upgraded Dashboard, bug fixes, user interface polishing, and refined documentation. As an added bonus we'll have members of our Solutions Engineering team on-hand to dive into some interesting ways you can leverage the new features available!

Watch On-Demand
Chocolatey Community Coffee Break

Join the Chocolatey Team as we discuss all things Community, what we do, how you can get involved and answer your Chocolatey questions.

Watch The Replays
Chocolatey and Intune Overview

Webinar Replay from
Wednesday, 30 March 2022

At Chocolatey Software we strive for simple, and teaching others. Let us teach you just how simple it could be to keep your 3rd party applications updated across your devices, all with Intune!

Watch On-Demand
Chocolatey For Business. In Azure. In One Click.

Livestream from
Thursday, 9 June 2022

Join James and Josh to show you how you can get the Chocolatey For Business recommended infrastructure and workflow, created, in Azure, in around 20 minutes.

Watch On-Demand
The Future of Chocolatey CLI

Livestream from
Thursday, 04 August 2022

Join Paul and Gary to hear more about the plans for the Chocolatey CLI in the not so distant future. We'll talk about some cool new features, long term asks from Customers and Community and how you can get involved!

Watch On-Demand
Hacktoberfest Tuesdays 2022

Livestreams from
October 2022

For Hacktoberfest, Chocolatey ran a livestream every Tuesday! Re-watch Cory, James, Gary, and Rain as they share knowledge on how to contribute to open-source projects such as Chocolatey CLI.

Watch On-Demand

Downloads:

612,373

Downloads of v 0.7.0:

15

Last Update:

31 Mar 2025

Package Maintainer(s):

Software Author(s):

  • Michael Medin

Tags:

nsclient nagios admin monitoring

NSClient++

This is not the latest version of NSClient++ available.

  • 1
  • 2
  • 3

0.7.0 | Updated: 31 Mar 2025

Downloads:

612,373

Downloads of v 0.7.0:

15

Maintainer(s):

Software Author(s):

  • Michael Medin

NSClient++ 0.7.0

This is not the latest version of NSClient++ available.

Legal Disclaimer: Neither this package nor Chocolatey Software, Inc. are affiliated with or endorsed by Michael Medin. The inclusion of Michael Medin trademark(s), if any, upon this webpage is solely to identify Michael Medin goods or services and not for commercial purposes.

  • 1
  • 2
  • 3

All Checks are Passing

3 Passing Tests


Validation Testing Passed


Verification Testing Passed

Details

Scan Testing Successful:

No detections found in any package files

Details
Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install NSClient++, run the following command from the command line or from PowerShell:

>

To upgrade NSClient++, run the following command from the command line or from PowerShell:

>

To uninstall NSClient++, run the following command from the command line or from PowerShell:

>

Deployment Method:

NOTE

This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to https://community.chocolatey.org/api/v2/)


2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade nscp -y --source="'INTERNAL REPO URL'" --version="'0.7.0'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:


choco upgrade nscp -y --source="'INTERNAL REPO URL'" --version="'0.7.0'" 
$exitCode = $LASTEXITCODE

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0
}

Exit $exitCode

- name: Install nscp
  win_chocolatey:
    name: nscp
    version: '0.7.0'
    source: INTERNAL REPO URL
    state: present

See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.


chocolatey_package 'nscp' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '0.7.0'
end

See docs at https://docs.chef.io/resource_chocolatey_package.html.


cChocoPackageInstaller nscp
{
    Name     = "nscp"
    Version  = "0.7.0"
    Source   = "INTERNAL REPO URL"
}

Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.


package { 'nscp':
  ensure   => '0.7.0',
  provider => 'chocolatey',
  source   => 'INTERNAL REPO URL',
}

Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.


4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

Package Approved

This package was approved by moderator Windos on 14 Apr 2025.

Description

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


tools\chocolateyInstall.ps1
$packageName = 'NSClient++'
$url32 = 'https://github.com/mickem/nscp/releases/download/0.7.0/NSCP-0.7.0-Win32.msi'
$url64 = 'https://github.com/mickem/nscp/releases/download/0.7.0/NSCP-0.7.0-x64.msi'

$packageArgs = @{
  PackageName    = $packageName
  FileType       = 'msi'
  Url            = $url32
  Url64bit       = $url64
  SilentArgs     = "/quiet"
  ValidExitCodes = @(0)
  Checksum       = '17c67b2134178df7cfeaba1e991e8d114398a144b281aae8ab98d4ce650b1b36'
  ChecksumType   = 'sha256'
  Checksum64     = 'e8849a170fd73c8c2469e29747f2fc4a26b119b0e2448eebe7396ac3a0b45270'
  ChecksumType64 = 'sha256'
}

Install-ChocolateyPackage @packageArgs

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status
NSClient++ 0.8.1-beta 15 Saturday, April 26, 2025 Approved
NSClient++ 0.7.0 15 Monday, March 31, 2025 Approved
NSClient++ 0.6.15-beta 119 Tuesday, March 25, 2025 Exempted
NSClient++ 0.6.14-beta 25 Sunday, March 23, 2025 Exempted
NSClient++ 0.6.13-beta 20 Sunday, March 23, 2025 Exempted
NSClient++ 0.6.12-beta 16 Sunday, March 23, 2025 Exempted
NSClient++ 0.6.11-beta 196 Friday, February 21, 2025 Exempted
NSClient++ 0.6.10-beta 13 Friday, February 21, 2025 Exempted
NSClient++ 0.6.9 4296 Sunday, February 23, 2025 Approved
NSClient++ 0.6.8-beta 11 Friday, February 21, 2025 Exempted
NSClient++ 0.6.7 23 Sunday, February 23, 2025 Approved
NSClient++ 0.6.6 16 Sunday, February 23, 2025 Approved
NSClient++ 0.6.5 13 Sunday, February 23, 2025 Approved
NSClient++ 0.6.4 21 Sunday, February 23, 2025 Approved
NSClient++ 0.6.2.1-beta 16 Friday, February 21, 2025 Exempted
NSClient++ 0.6.2.0-beta 12 Friday, February 21, 2025 Exempted
NSClient++ 0.6.1.0-beta 12 Friday, February 21, 2025 Exempted
NSClient++ 0.6.0.1-beta 17 Friday, February 21, 2025 Exempted
NSClient++ 0.6.0.0-beta 12 Friday, February 21, 2025 Exempted
NSClient++ 0.5.3.4-beta 12 Friday, February 21, 2025 Exempted
NSClient++ 0.5.3.3-beta 11 Friday, February 21, 2025 Exempted
NSClient++ 0.5.3.2-beta 11 Friday, February 21, 2025 Exempted
NSClient++ 0.5.2.41 53 Friday, February 21, 2025 Approved
NSClient++ 0.5.2.40-beta 15 Friday, February 21, 2025 Exempted
NSClient++ 0.5.2.39 288316 Friday, February 8, 2019 Approved
NSClient++ 0.5.2.35 2323 Wednesday, January 30, 2019 Approved
NSClient++ 0.5.0.62 22884 Wednesday, May 10, 2017 Approved
NSClient++ 0.4.4.19 8407 Thursday, February 18, 2016 Approved
NSClient++ 0.4.1.103 871 Tuesday, January 6, 2015 Approved

0.7.0 (2025-03-30)

What's Changed

Here I list all changes since 0.6.9 which is the previous release (there have been experiemental builds which includes below feature since then).

Os detection for check_os_version

This use the build number to detect OS versions above Windows 10 so if you want to check version you need to include build number in your check.

Enhancements and experimental support for Pdh based check_cpu.

This version has some PDH (Performance data Helpers) fixes and improved error handling and introduces an experimental new option to switch check_cpu to use PDH instead of APIs.

This is experimental and intended to solve the issue with incorrect, negative or zero values on some machines with more than 12 cores.

The main issue is that PDH is messy. It is localized and has historically been prone to strange issues and errors such as counter index getting corrupted and similar issues so lets ee how this works before making it the default.

To switch change the following configuration:


[/settings/system/windows]

use pdh for cpu=true

Check CPU load values now uses more standard keywords:

  • idle

  • user

  • system

Old keywords are still retained for compatibility, so this is a non-breaking change.

Lua

The biggest new change here is the re-added Lua support.

The Lua support has been changed a bit so it might not be 100% compatible with old scripts.

As there is not much documentation for Lua scripting, I plan to add that soon.

And doing that I will highlight the main differences.

> One thing still missing in Lua is protocol buffer support

> This means you can only create "simple function" is returning code, string and performance data. But given the nature of Lua I think this is acceptable for the time being.

But in general "optional parameters" to functions are no longer optional.

So for instance:


local reg = Registry()

reg:simple_function('lua_test', test_func_query)



local settings = Settings()

str = settings:get_string('/settings/lua/scripts', 'testar')



local core = Core()

code, msg, perf = core:simple_query('lua_test')

Will now require to be written as:


local reg = Registry()

reg:simple_function('lua_test', test_func_query, '')



local settings = Settings()

str = settings:get_string('/settings/lua/scripts', 'testar', '')



local core = Core()

code, msg, perf = core:simple_query('lua_test', {})

The other change is that construction object is now generally done with new where before it was done with various functions like Core() here however I have retained backwards compatibility so both should be possible.

But in general the quality of error handling and such is much better and I will as I said expand the documentation and add some more examples and such.

check_mk

As a side note experimental check_mk support was also added back.

This is experimental in so far as I have only verified it with NSClient++ not actual check_mk so will need to look into that next.

Also note that check_mk is experimental currently it only provides the version and agent name.

If there is genuin interest this could easily be extended so please do let me know...

The way check_mk works is that the module only provides the communication layer and the data provided is provided by a Lua script (hence requiring Lua support).

So the current script looks like so:


function server_process(packet)

	s = section.new()

	s:set_title("check_mk")

	s:add_line("Version: 0.0.1")

	s:add_line("Agent: nsclient++")

	s:add_line("AgentOS: Windows")

	packet:add_section(s)

end



reg = mk.new()

reg:server_callback(server_process)

So here we need to extend the packet to include more data and other sections for proper check_mk support.

Installer:

  • Removed padded version numbers from installer (this caused issues with upgrade)

  • Installer is now built with openssl presumably fixing remote config via https (have not verified this yet)

  • Enabled WebUI by default in installer (open can still be used to disable)

  • Added option to disable installing the service in installer

Security:

  • Added option to configure ciphers in the web server (default is TLS 1.2 but now you can set 1.3 if you prefer)

  • Default TLS (NRPE et al.) is now 1.2+ instead of only 1.2

  • Improved some options and added docs for using NRPE with certificates and Nagios…

  • Installer now installs the NRPE 2048 bit DH key

Other changes

  • Fixed check_nscp_verison parsing new semantic version

  • Added error messages for login failure via web browser

  • Updated build instructions

  • Fixed integer overflow in check_files.vbs script

  • Fixed status in summary text not matching actual summary when no results were found in filters (see UNKNOWN: OK in this example)


check_drivesize "filter=drive='foobar'"

L        cli UNKNOWN: OK: No drives found

L        cli  Performance data:

  • Fixed numerous spelling and grammar issue in the documentation.

  • Removed breakpad (replaced by restart watchdog and log files, but wont create and submit crash dumps (instead windows creates dumps which can be used))

  • Bumped dependencies

Dependencies

| Library | Version |

| --- | --- |

| Boost | 1.82.0 |

| Cryptopp | 8.9.0 |

| Lua | 5.4.7 |

| OpenSSL | 1.1.1w |

| Protobuf | 21.12 |

| TinyXml2 | 10.1.0 |

Full Changelog: https://github.com/mickem/nscp/compare/0.6.15...0.7.0

Release notes sourced from https://github.com/mickem/nscp/releases/tag/0.7.0


Discussion for the NSClient++ Package

Ground Rules:

  • This discussion is only about NSClient++ and the NSClient++ package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or NSClient++, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus