Categorygithub.com/consol-monitoring/snclient
repository
0.0.0-20241025192035-35206c729f8d
Repository: https://github.com/consol-monitoring/snclient.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author
No description provided by the author

# README

SNClient+

CICD Pipeline Go Report Card Latest Release License IRC

SNClient+ (Secure Naemon Client) is a general purpose monitoring agent designed as replacement for NRPE and NSClient++.

Contact

Documentation

All documentation is under docs/

Supported Operating Systems

i386x64arm64
LinuxXXX
Windows *XXX
FreeBSDXXX
MacOSXXX

* Only Windows 10 / Windows Server 2016 or newer.

A more detailed list of supported operating systems.

Supported Protocols

  • Prometheus HTTP(s)
  • NRPE (v2/v4)
  • NSCP Rest API via HTTP(s) (checks only)

Installation

There are pre-build binaries and packages for the all supported systems (see above) on the release page.

Further details are covered in the documentation.

Check Plugin Status

WindowsLinuxOSXBSD
check_aliasXXXX
check_connectionsXXXX
check_cpu_utilizationXXXX
check_cpuXXXX
check_dnsXXXX
check_drivesizeXXXX
check_dummyXXXX
check_eventlogX
check_filesXXXX
check_httpXXXX
check_indexXXXX
check_kernel_statsX
check_loadXXXX
check_mailqXXX
check_memoryXXXX
check_mountXXXX
check_networkXXXX
check_nsc_webXXXX
check_ntp_offsetXXXX
check_omdX
check_os_updatesXXX
check_os_versionXXXX
check_pagefileX
check_pingXXXX
check_processXXXX
check_serviceXX
check_snclient_versionXXXX
check_taskschedX
check_tcpXXXX
check_temperatureX
check_uptimeXXXX
check_wmiX
check_wrap / external scriptsXXXX

Roadmap

Find a brief overview of what is planned and what is done already:

Stage 1

  • support NRPE clients
  • support NSCP rest api clients
  • support basic Prometheus metrics
  • implement reading nsclient.ini files
  • implement ssl/tls support
  • implement authenticaton / authorization
    • basic auth
    • client certificates
    • allowed hosts
    • allow arguments
    • allow nasty characters
  • add build pipeline
    • build windows msi packages
    • build debian/ubuntu .deb packages
    • build rhel/sles .rpm packages
    • build osx .pkg packages
  • implement log rotation for file logger
  • self update (from configurable url)
  • implement perf-config
  • implement help with examples and filters
  • review check plugin status

Stage 2

  • add basic prometheus exporters
    • exporter_exporter
    • windows_exporter
    • node_exporter
    • add time support in threshold, ex.: warn=time > 18:00 && load > 10
  • add config include folder
  • add check_ping plugin
  • add ntp check
  • check usr signal handler
  • manage certificate via rest api
  • add https config includes

Stage 3

  • self update from github
  • open telemetry
  • improve configuration
    • add config validator
    • use strong typed config items
  • osx
    • check pkg uninstall
  • rename packages to avoid confusion: amd64 -> x86-64, 386 -> i386, amd64 -> aarch64

Not gonna happen

The following things will most likely not be part of snclient any time:

  • CheckMK support
  • Embedded LUA support
  • Embedded Python support
  • Graphite support
  • NRDP support
  • NSCA support
  • SMTP support
  • Website/Rest API (except doing checks)
  • check_nt support