nolstoy-packages - Nabbix 0.2.1

This package contains a lightweight, embeddable C# Zabbix Agent that responds to Zabbix Passive Checks.

PM> Install-Package Nabbix -Version 0.2.1 -Source https://www.myget.org/F/nolstoy-packages/api/v3/index.json

Copy to clipboard

> nuget.exe install Nabbix -Version 0.2.1 -Source https://www.myget.org/F/nolstoy-packages/api/v3/index.json

Copy to clipboard

> dotnet add package Nabbix --version 0.2.1 --source https://www.myget.org/F/nolstoy-packages/api/v3/index.json

Copy to clipboard
<PackageReference Include="Nabbix" Version="0.2.1" />
Copy to clipboard
source https://www.myget.org/F/nolstoy-packages/api/v3/index.json

nuget Nabbix  ~> 0.2.1
Copy to clipboard

> choco install Nabbix --version 0.2.1 --source https://www.myget.org/F/nolstoy-packages/api/v2

Copy to clipboard
Import-Module PowerShellGet
Register-PSRepository -Name "nolstoy-packages" -SourceLocation "https://www.myget.org/F/nolstoy-packages/api/v2"
Install-Module -Name "Nabbix" -RequiredVersion "0.2.1" -Repository "nolstoy-packages" 
Copy to clipboard

nolstoy-packages MyGet Build StatusNuget download Nuget download

What?

A lightweight Zabbix Agent that can be embedded in any .Net program ~ ASP.Net, Windows Service or Console Applications.

Why?

Zabbix does have a Windows Agent. It's largely limited to Performance Counters, Log Files and the Windows Event Log. When monitoring a .Net application, it's a non trivial task to install the agent and register custom performance counters.

With Nabbix, monitoring a .Net program only requires referencing a NuGet package and adding a few lines of code.

How?

1. Add nabbix NuGet Package

Install-Package Nabbix

2. Create class(es) with the counter(s)


// Class containing a single Zabbix Item 'long_example'
private class MyCounter
{
	private long _incrementing;
    internal void Increment()
	{
		Interlocked.Increment(ref _incrementing);
	}

	[NabbixItem("long_example")]
    public long Incrementing => Interlocked.Read(ref _incrementing);
}

3. Create a Nabbix Agent and register instances of the counter classes.

private static void Main()
{
	// Create the instance of the counter class with a single Zabbix Item
    var counters = new MyCounter();
            
    // Start the agent.
    var agent = new NabbixAgent(10052, counters);

    // Increment the counter. Normally done on API or method call.
    counters.Increment();

    // Shutdown
	Console.ReadKey();
    agent.Stop();
}

More information?

https://github.com/nolstoy/nabbix/wiki

  • .NETFramework 4.5
    • Common.Logging (>= 3.4.1)
    • Fasterflect.Netstandard (>= 1.0.8)
  • .NETStandard 2.0
    • Common.Logging (>= 3.4.1)
    • Fasterflect.Netstandard (>= 1.0.8)
  • .NETFramework 4.5: 4.5.0.0
  • .NETStandard 2.0: 2.0.0.0

Owners

nolstoy

Authors

Nabbix

Project URL

https://github.com/nolstoy/nabbix

License

MIT

Info

45 total downloads
6 downloads for version 0.2.1
Download (17.1 KB)
Found on the current feed only

Package history

Version Size Last updated Downloads Mirrored?
0.2.5 17.17 KB Mon, 06 Aug 2018 03:29:09 GMT 11
0.2.4 17.16 KB Sun, 05 Aug 2018 21:23:38 GMT 7
0.2.3 17.28 KB Sun, 05 Aug 2018 20:15:14 GMT 11
0.2.2 17.1 KB Sun, 05 Aug 2018 04:07:51 GMT 10
0.2.1 17.1 KB Sun, 05 Aug 2018 04:01:14 GMT 6