More than 130 check plugins for Icinga and other Nagios-compatible monitoring applications. Each plugin is a standalone command line tool (written in Python) that provides a specific type of check.

Overview

Python-based Monitoring Check Plugins Collection

image

This Enterprise Class Check Plugin Collection offers a package of more than 130 Python-based, Nagios-compatible check plugins for Icinga, Naemon, Nagios, OP5, Shinken, Sensu and other monitoring applications. Each plugin is a stand-alone command line tool that provides a specific type of check. Typically, your monitoring software will run these check plugins to determine the current status of hosts and services on your network.

The check plugins run on

  • Linux - Tested on RHEL 7+, Fedora 30+, Ubuntu Server 16+, Debian 9+, SLES 15+
  • Windows - Tested on Windows 10+ and Windows Server 2019+

All plugins are written in Python and licensed under the UNLICENSE, which is a license with no conditions whatsoever that dedicates works to the public domain. The plugins are fast, reliable and use as few system resources as possible. They uniformly and consistently report the same metrics briefly and precisely on all platforms (for example, always "used" instead of a mixture of "used" and "free"). Automatic detection and Auto-Discovery mechanisms are built-in where possible. Using meaningful default settings, the plugins trigger WARNs and CRITs only where absolutely necessary. In addition they provide information for troubleshooting. We try to avoid dependencies on 3rd party system libraries where possible.

Support, Feedback

The source code is published here without support, but Enterprise Support can be obtained via a Service Contract.

In order to keep improving the Monitoring Plugins and better answer your needs, we would like to ask for your help:

Running the Check Plugins on Linux

Requirements

Install Python 3 (or Python 2, if needed) on the remote host.

Virtual Environment

If you want to use a virtual environment for Python (optional, but recommended), you could create one in the same directory as the check-plugins.

cd /usr/lib64/nagios/plugins

# Python 3
python3 -m venv --system-site-packages monitoring-plugins-venv3

# Python 2
python2 -m virtualenv --system-site-packages monitoring-plugins-venv2

If you prefer to place the virtual environment somewhere else, you can point the MONITORING_PLUGINS_VENV2 or MONITORING_PLUGINS_VENV3 environment variable to your virtual environment. This takes precedence over the virtual environment above.

Caution

Make sure the bin/activate_this.py file is owned by root and not writeable by any other user, as it is executed by the check plugins (where some are executed using sudo).

Installation

Get the monitoring check plugins from our Git repository to your local machine or deployment host, using git clone [email protected]:Linuxfabrik/monitoring-plugins.git, or by downloading the tar.gz using curl:

REPO='linuxfabrik/monitoring-plugins'
curl --output monitoring-plugins.tar.gz https://codeload.github.com/${REPO}/tar.gz/refs/tags/$(curl --silent https://api.github.com/repos/${REPO}/releases/latest | jq -r '.name')

The check plugins require our Python libraries. The libraries are in a separate Git repository, as we also use them in other projects. Use git clone [email protected]:Linuxfabrik/lib.git, or by downloading the tar.gz using curl:

REPO='linuxfabrik/lib'
curl --output lib.tar.gz https://codeload.github.com/${REPO}/tar.gz/refs/tags/$(curl --silent https://api.github.com/repos/${REPO}/releases/latest | jq -r '.name')

Extract:

tar xf lib.tar.gz
tar xf monitoring-plugins.tar.gz

Copy the libraries onto the remote host to /usr/lib64/nagios/plugins/lib, and copy some or all Python check plugins to /usr/lib64/nagios/plugins while removing the Python version suffix, for example by doing the following:

REMOTE_USER=root
REMOTE_HOST=192.0.2.74
PYVER=3
SOURCE_LIBS=/path/to/lib
SOURCE_PLUGINS=/path/to/monitoring-plugins/check-plugins
TARGET_DIR=/usr/lib64/nagios/plugins

ssh $REMOTE_USER@$REMOTE_HOST 'mkdir -p $TARGET_DIR/lib'
scp $SOURCE_LIBS/* $REMOTE_HOST:$TARGET_DIR/lib/
for f in $(find $SOURCE_PLUGINS -maxdepth 1 -type d); do f=$(basename $f); scp $SOURCE_PLUGINS/$f/$f$PYVER $REMOTE_HOST:$TARGET_DIR/$f; done

We try to avoid dependencies on 3rd party OS- or Python-libraries wherever possible. If we need to use additional libraries for various reasons (for example psutil), we stick with official versions. Some plugins use the following 3rd-party python libraries, so the easiest way is to install them as well:

  • BeautifulSoup4
  • lxml
  • mysql.connector
  • psutil

That's it. After that your directory on the remote host should look like this:

/usr/lib64/nagios/plugins/
|-- about-me
|-- disk-smart
|-- ...
|-- lib
|   |-- base2.py
|   |-- base3.py
|   |-- globals2.py
|   |-- ...
|-- ...

Tipp

We also provide an Ansible "monitoring-plugins" role. This role deploys the Linuxfabik Monitoring Plugins and the corresponding Monitoring Plugin Library to /usr/lib64/nagios/plugins/ and /usr/lib64/nagios/plugins/lib respectively, allowing them to be easily executed by a monitoring system.

sudoers

Some check plugins require sudo-permissions to run. To do this, we provide a sudoers file for your operating system in monitoring-plugins/assets/sudoers, for example CentOS8.sudoers. You need to place this file in /etc/sudoers.d/ on the client.

Note

We are always using the path /usr/lib64/nagios/plugins/ on all Linux OS, even if nagios-plugins-all installs itself to /usr/lib/nagios/plugins/ there. This is because adding a command with sudo in Icinga Director, one needs to use the full path of the plugin. See the following GitHub issue.

Upgrade

  • Overwrite /usr/lib64/nagios/plugins/lib with the new libraries.
  • Overwrite /usr/lib64/nagios/plugins with the new plugins.
  • Copy the new sudoers file to /etc/sudoers.d/
  • Delete all SQLite database files (*.db) in /tmp.

Running the Check Plugins on Windows

Installation

Simply download the latest zip file containing all plugins from https://download.linuxfabrik.ch/monitoring-plugins/windows/latest.zip.

Upgrade

Simply download the latest zip file containing all plugins from https://download.linuxfabrik.ch/monitoring-plugins/windows/latest.zip and overwrite your installation directory.

Check Plugin Poster

See most of our check plugins at a glance on an Icinga server:

image

If you zoom in, for example on CPU Usage:

image

Feedback from our Community

A few comments on our monitoring plugins:

A well engineered, regularly updated and maintained collection of plugins. Specially focused on Linux servers/VMs and used at large scale by the company developing it.

-- straessler

Hello, I stumbled across your collection and am thrilled! Especially the extensive documentary and the Director Baskets are a dream.

-- Stefan Beining

Human Readable Numbers

Regarding the check plugin output, this is how we convert and append symbols to large numbers in a human-readable format (according to Wikipedia Names of large numbers, and other). The plugins display byte sizes in powers of 2 (KiB, MiB, GiB etc.).

Value Symbol Origin Type Description
1000^1 K Number Thousand
1000^2 M SI Symbol Number Million ^1^, Million ^2^
1000^3 G SI Symbol Number Milliard ^1^, Billion ^2^
1000^4 T SI Symbol Number Billion ^1^, Trillion ^2^
1000^5 P SI Symbol Number Billiard ^1^, Quadrillion ^2^
1000^6 E SI Symbol Number Trillion ^1^, Quintillion ^2^
1000^7 Z SI Symbol Number Trilliard ^1^, Sextillion ^2^
1000^8 Y SI Symbol Number Quadrillion ^1^, Septillion ^2^
1024^0 B Bytes Bytes
1024^1 KiB ISQ Symbol Bytes Kibibytes
1024^2 MiB ISQ Symbol Bytes Mebibytes
1024^3 GiB ISQ Symbol Bytes Gibibytes
1024^4 TiB ISQ Symbol Bytes Tebibytes
1024^5 PiB ISQ Symbol Bytes Pebibytes
1024^6 EiB ISQ Symbol Bytes Exbibytes
1024^7 ZiB ISQ Symbol Bytes Zebibytes
1024^8 YiB ISQ Symbol Bytes Yobibytes
1000^1 KB Bytes Kilobytes
1000^2 MB Bytes Megabytes
1000^3 GB Bytes Gigabytes
1000^4 TB Bytes Terrabytes
1000^5 PB Bytes Petabytes
1000^6 EB Bytes Exabytes
1000^7 ZB Bytes Zetabytes
1000^8 YB Bytes Yottabytes
1000^1 Kbps Bits per Second Kilobits
1000^2 Mbps Bits per Second Megabits
1000^3 Gbps Bits per Second Gigabits
1000^4 Tbps Bits per Second Terrabits
1000^5 Pbps Bits per Second Petabits
1000^6 Ebps Bits per Second Exabits
1000^7 Zbps Bits per Second Zetabits
1000^8 Ybps Bits per Second Yottabits
1..59 s Time Seconds
60 m Time Minutes
60*60 h Time Hours
60*60*24 D Time Days
60*60*24*7 W Time Weeks
60*60*24*30 M Time Months
60*60*24*365 Y Time Years
  • 1: Traditional European (Peletier, long scale)
  • 2: US, Canada and modern British (short scale)

Threshold and Ranges

If a check supports ranges, they can be used as follows:

  • Simple value: A range from 0 up to and including the value
  • A "Range" is the same as on nagios-plugins.org: ... defined as a start and end point (inclusive) on a numeric scale (possibly negative or positive infinity)., in the format start:end
  • Empty value after :: positive infinity
  • ~: negative infinity
  • @: if range starts with @, then alert if inside this range (including endpoints)

Examples:

-w, -c OK if result is WARN/CRIT if
10 in (0..10) not in (0..10)
-10 in (-10..0) not in (-10..0)
10: in (10..inf) not in (10..inf)
: in (0..inf) not in (0..inf)
~:10 in (-inf..10) not in (-inf..10)
10:20 in (10..20) not in (10..20)
@10:20 not in (10..20) in 10..20
@~:20 not in (-inf..20) in (-inf..20)
@ not in (0..inf) in (0..inf)

Command, Parameters and Arguments

Shell commands like ./file-age --filename='/tmp/*' have two basic parts:

  • Command name of the program to run (./file-age). May be followed by one or more options, which adjust the behavior of the command or what it will do.
  • Options/Parameters normally start with one or two dashes to distinguish them from arguments (parameter --filename, value '/tmp/*'). They adjust the behavior of the command. Parameters may be short (-w) or long (--warning). We prefer and often offer only the long version.

Many shell commands may also be followed by one or more arguments, which often indicate a target that the command should operate upon (useradd linus for example) . This does not apply to the check-plugins.

To avoid problems when passing parameter values that start with a -, the command line call must look like this:

  • Long parameters: ./file-age --warning=-60:3600 (use --param=value instead of --param value).
  • Short parameters: ./file-age -w-60:3600 (so simply not putting any space nor escaping it in any special way).

Python 3 vs Python 2

All check plugins are available for Python 3.6+, and most of them also for Python 2.7. The Python 2 check plugins have the suffix "2" (for example cpu-usage2), the Python 3 plugins have the suffix "3" (for example cpu-usage3).

The Python 3-based check plugins use #!/usr/bin/env python3, while the Python 2-based check plugins use #!/usr/bin/env python2 explicitly.

We stopped maintaining the Python 2-based plugins on 2021-12-31.

Icinga Director

For a single Plugin

For each check, we provide an Icinga Director Basket that contains at least the Command definition and a matching Service Template (for example, check-plugins/cpu-usage/icingaweb2-module-director/cpu-usage.json). Import this via the WebGUI using Icinga Director > Configuration Baskets > Upload, select the latest entry in the Snapshots tab and restore it.

Alternatively, you can manually configure the plugin as follows.

Create a command for "cpu-usage" in Icinga Director > Commands > Commands:

  • Click "+Add", choose Command type: Plugin Check Command
  • Command name: cmd-check-cpu-usage
  • Command: /usr/lib64/nagios/plugins/cpu-usage
  • Timeout: set it according to hints in the check's README (usually 10 seconds)
  • Click the "Add" button

Tab "Arguments":

  • Run /usr/lib64/nagios/plugins/cpu-usage --help to get a list of all arguments.
  • Create those you want to be customizable:
    • Argument name --always-ok, Value type: String, Condition (set_if): $cpu_usage_always_ok$
    • Argument name --count, Value type: String, Value: $cpu_usage_count$
    • Argument name --critical, Value type: String, Value: `$cpu_usage_critical$
    • Argument name --warning, Value type: String, Value: `$cpu_usage_warning$

Tab "Fields":

  • Label "CPU Usage: Count", Field name "cpu_usage_count", Mandatory "n"
  • Label "CPU Usage: Critical", Field name "cpu_usage_critical", Mandatory "n"
  • Label "CPU Usage: Warning", Field name "cpu_usage_warning", Mandatory "n"

Now use this command within a Service Template, a Service Set and/or a Single Service.

Linuxfabrik's Director Configuration

To use our Icinga Director Configuration including Host Templates, Notifcation Templates and Service Sets, you can generate a single Basket file.

If you are using our Fork of the Icinga Director, you can use the following command:

./tools/basket-join

If not, generate a Basket without guids:

./tools/basket-join --without-guids

Import the resulting icingaweb2-module-director-basket.json via the WebGUI using Icinga Director > Configuration Baskets > Upload, select the latest entry in the Snapshots tab and restore it.

Grafana

There are two options to import the Grafana dashboards. You can either import them via the WebGUI or use provisioning.

When importing via the WebGUI simply import the plugin-name.grafana-external.json file.

If you want to use provisioning, take a look at Grafana Provisioning. Beware that you also need to provision the datasources if you want to use provisioning for the dashboards.

If you want to create a custom dashboards that contains a different selection of panels, you can do so using the tools/grafana-tool utility.

# interactive usage
./tools/grafana-tool assets/grafana/all-panels-external.json
./tools/grafana-tool assets/grafana/all-panels-provisioning.json

# for more options, see
./tools/grafana-tool --help

Reporting Issues

For now, there are two ways:

  1. Submit an issue (preferred).
  2. Contact us by email or web form and describe your problem.
Comments
  • Edit the TODOs in these README.rst files

    Edit the TODOs in these README.rst files

    In GitLab by @markuslf on Jun 3, 2021, 16:20

    According to the example/README.rst:

    • [x] file-count
    • [x] file-size
    • [x] fortios-cpu-usage (100)
    • [x] fortios-firewall-stats (100)
    • [x] fortios-ha-stats (100)
    • [x] fortios-memory-usage (100)
    • [x] fortios-network-io (100)
    • [x] fortios-sensor (100)
    • [x] fortios-version (100)
    • [x] json-values
    • [x] kemp-services
    • [x] logfile
    • [x] scheduled-task
    • [x] service
    • [x] updates
    documentation 
    opened by NavidSassan 20
  • Improve README.rst

    Improve README.rst

    In GitLab by @markuslf on Feb 17, 2022, 14:32

    • [x] The installation section is one of the most important, so move the paragraph to the top part of the readme.
    • [x] mention that python should be installed beforehand
    • [x] maybe a list with our top-used python libraries, and that those should also be installed. or mention that the individual requirements are in the check's readme
    • [x] More elegant shell script for copying the checks to the remote system
    • [x] Convert back to Markdown due to lack of rst-capability of https://exchange.icinga.com
    • What else?
    documentation question 
    opened by NavidSassan 13
  • procs: on Windows, Traceback

    procs: on Windows, Traceback "AttributeError: 'module' object has no attribute 'STATUS_PARKED'"

    In GitLab by @sandrolf on Nov 4, 2021, 12:20

    Traceback (most recent call last):
    File "/usr/lib64/nagios/plugins/procs", line 421, in 'module'
        main()
      File "/usr/lib64/nagios/plugins/procs", line 304, in main
        elif process_info['status'] == psutil.STATUS_PARKED:
    AttributeError: 'module' object has no attribute 'STATUS_PARKED'
    
    bug 
    opened by NavidSassan 11
  • Basket restore in Icinga Director fails

    Basket restore in Icinga Director fails "Trying to set invalid key "guid" (DbObject.php:350)"

    In GitLab by @fesch on Jan 12, 2022, 10:48

    If I try to restore the imported Basket in Icinga Director I get the following error "Trying to set invalid key "guid" (DbObject.php:350)". The file "icingaweb2-module-director-basket.json" was created with the command "./tools/basket-join --without-guids".

    question 
    opened by NavidSassan 10
  • disk-smart3: Some issue detecting disk behind a

    disk-smart3: Some issue detecting disk behind a "DELL" raid card

    Hi,

    The plugin is unable to detect drive behind a DELL Raid BUT the smartctl daemon is running perfectly and able to detect as we are receiving email from the smartd daemon!

    For example:

    The following warning/error was logged by the smartd daemon:
    
    Device: /dev/bus/2 [megaraid_disk_03], SMART Failure: DATA CHANNEL IMPENDING FAILURE DATA ERROR RATE TOO HIGH
    
    Device info:
    [HP       DG146ABAB4       HPD5], lu id: 0x5000c5000517eb53, S/N: 3NM1QWK600009742E1XH, 146 GB
    
    

    And unable to get data from the boot disk too!

    smartctl failed with exit status "Device open failed, device did not return an IDENTIFY DEVICE structure, or device is in a low-power mode."

    bug 
    opened by PointPubMedia 8
  • check-plugins/snmp - filtered pattern for the output

    check-plugins/snmp - filtered pattern for the output

    hello Team,

    Is any option to filer some patterns from the plugin output? maybe it could be easily implemented and could give some hint on how to improve it.

    Im having this ugly output ... image

    Marcin

    enhancement 
    opened by haytxy 7
  • Some compiled Windows-Plugins are shipped without required 3rd Party Python Modules

    Some compiled Windows-Plugins are shipped without required 3rd Party Python Modules

    In GitLab by @markuslf on Jan 25, 2022, 17:11

    For example: mysql-stats needs the 3rd party module mysql-connector, but the module is missing in the Nuitka-compiled exe file. @NavidSassan and @philipp-zollinger could you please prepare the Windows build host correctly? Should be done before the next release.

    bug 
    opened by NavidSassan 7
  • Able to choose a single or some DS in cmd-check-wildfly-non-xa-datasource-stats

    Able to choose a single or some DS in cmd-check-wildfly-non-xa-datasource-stats

    In GitLab by @chradja on Jan 17, 2022, 09:27

    I have a Wildfly server with different applications, so it would be nice to be able to create different services depending on a particular set of datasources and not all. This would be particularly useful when using the Business Process module, as not all datasources defined belong to the same Business Process. It would allow also to notify the right set of users.

    opened by NavidSassan 7
  • file-count: Unknown NtStatus error returned 'STATUS_PATH_NOT_COVERED'

    file-count: Unknown NtStatus error returned 'STATUS_PATH_NOT_COVERED'" while opening or reading \\server\path

    Describe the bug

    '/usr/lib64/nagios/plugins/file-count' '--always-ok' '--password' 'PW' '--pattern' '*' '--timeout' '3' '--url' 'smb://\\server\path' '--username' 'USER'

    returns

    I/O error "Unknown NtStatus error returned 'STATUS_PATH_NOT_COVERED'" while opening or reading smb://\\server\path

    bug 
    opened by markuslf 6
  • Redis ServiceSet in all-the-rest.json is wrong

    Redis ServiceSet in all-the-rest.json is wrong

    In GitLab by @markuslf on Oct 17, 2021, 19:44

    • [x] The Redis Service Set appears twice, once with the Systemd-Service, once with redis-status. This should be one service set.
    • [x] Redis can be removed from the OpenVAS Service Set, as it has its own tag now.
    opened by NavidSassan 6
  • all-the-rest.json: Re-define Windows Basic Service Set

    all-the-rest.json: Re-define Windows Basic Service Set

    In GitLab by @markuslf on Oct 18, 2021, 21:54

    We have to re-define/rewrite all "Service - ..." definitions in (all?) "OS - Windows Basic Service Set"s.

    What we have to check according to https://docs.microsoft.com/en-us/windows-server/security/windows-services/security-guidelines-for-disabling-system-services-in-windows-server are:

    • Services that are common on Windows Server 2016, Windows Server 2019 and Windows 10
    • Only services that are always installed
    • Only services with Startup type "Automatic"
    • Only services where the recommendation is "Do not disable"
    • Only services that are allowed to run according to CIS

    I checked everything. The result is the following list. Please implement:

    • BFE (Base Filtering Engine)
    • BrokerInfrastructure (Background Tasks Infrastructure Service)
    • CDPSvc (Connected Devices Platform Service)
    • CoreMessagingRegistrar (CoreMessaging)
    • CryptSvc (Cryptographic Services)
    • DcomLaunch (DCOM Server Process Launcher)
    • Dhcp (DHCP Client)
    • DiagTrack (Connected User Experiences and Telemetry)
    • Dnscache (DNS Client)
    • DPS (Diagnostic Policy Service)
    • EventLog (Windows Event Log)
    • EventSystem (COM+ Event System)
    • FontCache (Windows Font Cache Service)
    • gpsvc (Group Policy Client)
    • iphlpsvc (IP Helper)
    • LanmanWorkstation (Workstation)
    • LSM (Local Session Manager)
    • mpssvc (Windows Defender Firewall)
    • MSDTC (Distributed Transaction Coordinator)
    • NlaSvc (Network Location Awareness)
    • nsi (Network Store Interface Service)
    • Power (Power)
    • ProfSvc (User Profile Service)
    • RpcEptMapper (RPC Endpoint Mapper)
    • RpcSs (Remote Procedure Call (RPC)
    • SamSs (Security Accounts Manager)
    • Schedule (Task Scheduler)
    • SENS (System Event Notification Service)
    • SysMain (SysMain)
    • SystemEventsBroker (System Events Broker)
    • Themes (Themes)
    • TimeBrokerSvc (Time Broker)
    • UserManager (User Manager)
    • W32Time (Windows Time)
    • Winmgmt (Windows Management Instrumentation)
    enhancement 
    opened by NavidSassan 6
  • CERTIFICATE_VERIFY_FAILED - even on official signed certificates

    CERTIFICATE_VERIFY_FAILED - even on official signed certificates

    Hi, using nextcloud-security-scan and other plugins, I see "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate". On self signed I could accept that. But I even get it von scan.nextcloud.com Is that a bug? Im using linuxfabrik-monitoring-plugins-2022072001

    Is there a way to fix that? Does python not using the ca certs of debian? Can I disable the ssl verify for self signed certs?

    opened by marcelfischer 5
  • updates: on host with closed firewall a PowerShell error is returned

    updates: on host with closed firewall a PowerShell error is returned

    This issue respects the following points:

    • [X] This is a bug, not a question or a setup/configuration issue.
    • [X] This issue is not already reported on Github (I've searched it).
    • [X] I use the latest release of the Monitoring Plugins (https://github.com/Linuxfabrik/monitoring-plugins/releases).
    • [X] I agree to follow Monitoring Plugins's Code of Conduct.

    Bug description

    see title

    Steps to reproduce - Plugin call

    'C:\ProgramData\icinga2\usr\lib64\nagios\plugins\updates.exe' '--critical' '50' '--warning' '2'
    

    Steps to reproduce - Plugin Version

    v2022021501

    Steps to reproduce - Data

    Exception from HRESULT: 0x80072EE2
    At line:4 char:5
    +     $Pending = $SearchIndex.Search('IsInstalled=0');
    +     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : OperationStopped: (:) [], COMException
        + FullyQualifiedErrorId : System.Runtime.InteropServices.COMException
    

    Python version

    No response

    Environment

    Windows

    Application

    No response

    Python modules

    No response

    Additional info

    No response

    bug 
    opened by slalomsk8er 0
  • disk-usage: ignore type CDFS by default

    disk-usage: ignore type CDFS by default

    This issue respects the following points:

    • [X] This is a bug, not a question or a setup/configuration issue.
    • [X] This issue is not already reported on Github (I've searched it).
    • [X] I use the latest release of the Monitoring Plugins (https://github.com/Linuxfabrik/monitoring-plugins/releases).
    • [X] I agree to follow Monitoring Plugins's Code of Conduct.

    Bug description

    E:\ [CRITICAL] ! CDFS ! 3.4GiB ! 3.4GiB ! 100.0% isn't necessary and detracts from real disk usage problems as CD-ROMs are always 100% full.

    Steps to reproduce - Plugin call

    'C:\ProgramData\icinga2\usr\lib64\nagios\plugins\disk-usage.exe' '--critical' '95' '--ignore' 'Y:' '--warning' '90'
    

    Steps to reproduce - Plugin Version

    disk-usage.exe: v2022021501 by Linuxfabrik GmbH, Zurich/Switzerland

    Steps to reproduce - Data

    Microsoft Windows [Version 10.0.14393]

    Python version

    Other

    Environment

    Microsoft Windows [Version 10.0.14393]

    Application

    No response

    Python modules

    No response

    Additional info

    No response

    bug 
    opened by slalomsk8er 0
  • veeam-status    add an option switch to

    veeam-status add an option switch to "WarningVmLastestState" for an integer value of tolerated VM warnings

    Is your feature request related to a problem? Please describe.

    We have 2 blackbox appliance VM that always quit the backupjob with an warning. But the backup is without anny issuses.

    The warnige by this Icinga plugin is with evry check. We don't wan to use the --always ok switch because we dont see other issues in the monitoring.

    I have changed : " val = result['overview']['WarningVmLastestStates'] if val > 2: " in the code.

    So the check runs perfect:-)

    It would be nice when there would be a switch like "--ignore_VM_WARNINGS_count" or similar.

    Thank you

    Describe the solution you'd like

    "--ignore_VM_WARNINGS_count" or similar name.

    Alternatives

    i have to hack the code by my self evry update ...

    Additional context

    No response

    enhancement 
    opened by asltbbg 1
  • Feature request: NTP check for Windows

    Feature request: NTP check for Windows

    Is your feature request related to a problem? Please describe.

    We have to use different plugins, one per platform, to check NTP. We would enjoy a Python plugin that could be used on any underlying platform: Linux, Windows, or even others...

    Describe the solution you'd like

    The check we want to achieve is just making sure the server is synchronised with a given NTP server, with the stratum level being returned - critical if 0, warning if above a certain provided number.

    Alternatives

    No response

    Additional context

    No response

    enhancement 
    opened by michaje-gsc 2
  • cpu-usage: wrong values on Windows with 64 cores

    cpu-usage: wrong values on Windows with 64 cores

    Reporting a mean 65% CPU usage per hour

    image

    actual mean CPU usage about 8%

    image

    I don't see any peaks at all in the combined view but there are per core peaks.

    opened by slalomsk8er 4
Releases(2022072001)
Owner
Linuxfabrik
Your Service Provider for Linux and Open Source
Linuxfabrik
Helperpod - A CLI tool to run a Kubernetes utility pod with pre-installed tools that can be used for debugging/testing purposes inside a Kubernetes cluster

Helperpod is a CLI tool to run a Kubernetes utility pod with pre-installed tools that can be used for debugging/testing purposes inside a Kubernetes cluster.

Atakan Tatlı 2 Feb 05, 2022
Remote Desktop Protocol in Twisted Python

RDPY Remote Desktop Protocol in twisted python. RDPY is a pure Python implementation of the Microsoft RDP (Remote Desktop Protocol) protocol (client a

Sylvain Peyrefitte 1.6k Dec 30, 2022
Cado Response Integration with Amazon GuardDuty using AWS Lambda

Cado Response Integration with Amazon GuardDuty using AWS Lambda This repository contains a simple example where: An alert is triggered by GuardDuty T

Cado Security 4 Mar 02, 2022
sysctl/sysfs settings on a fly for Kubernetes Cluster. No restarts are required for clusters and nodes.

SysBindings Daemon Little toolkit for control the sysctl/sysfs bindings on Kubernetes Cluster on the fly and without unnecessary restarts of cluster o

Wallarm 19 May 06, 2022
The low-level, core functionality of boto 3.

botocore A low-level interface to a growing number of Amazon Web Services. The botocore package is the foundation for the AWS CLI as well as boto3. On

the boto project 1.2k Jan 03, 2023
Simple ssh overlay for easy, remote server management written in Python GTK with paramiko

Simple "ssh" overlay for easy, remote server management written in Python GTK with paramiko

kłapouch 3 May 01, 2022
Micro Data Lake based on Docker Compose

Micro Data Lake based on Docker Compose This is the implementation of a Minimum Data Lake

Abel Coronado 15 Jan 07, 2023
Supervisor process control system for UNIX

Supervisor Supervisor is a client/server system that allows its users to control a number of processes on UNIX-like operating systems. Supported Platf

Supervisor 7.6k Dec 31, 2022
Copy a Kubernetes pod and run commands in its environment

copypod Utility for copying a running Kubernetes pod so you can run commands in a copy of its environment, without worrying about it the pod potential

Memrise 4 Apr 08, 2022
A lobby boy will create a VPS server when you need one, and destroy it after using it.

Lobbyboy What is a lobby boy? A lobby boy is completely invisible, yet always in sight. A lobby boy remembers what people hate. A lobby boy anticipate

226 Dec 29, 2022
Manage your SSH like a boss.

--- storm is a command line tool to manage your ssh connections. features adding, editing, deleting, listing, searching across your SSHConfig. command

Emre Yılmaz 3.9k Jan 03, 2023
This project shows how to serve an TF based image classification model as a web service with TFServing, Docker, and Kubernetes(GKE).

Deploying ML models with CPU based TFServing, Docker, and Kubernetes By: Chansung Park and Sayak Paul This project shows how to serve a TensorFlow ima

Chansung Park 104 Dec 28, 2022
Organizing ssh servers in one shell.

NeZha (哪吒) NeZha is a famous chinese deity who can have three heads and six arms if he wants. And my NeZha tool is hoping to bring developer such mult

Zilin Zhu 8 Dec 20, 2021
Travis CI testing a Dockerfile based on Palantir's remix of Apache Cassandra, testing IaC, and testing integration health of Debian

Testing Palantir's remix of Apache Cassandra with Snyk & Travis CI This repository is to show Travis CI testing a Dockerfile based on Palantir's remix

Montana Mendy 1 Dec 20, 2021
A basic instruction for Kubernetes setup and understanding.

A basic instruction for Kubernetes setup and understanding Module ID Module Guide - Install Kubernetes Cluster k8s-install 3 Docker Core Technology mo

648 Jan 02, 2023
Tools and Docker images to make a fast Ruby on Rails development environment

Tools and Docker images to make a fast Ruby on Rails development environment. With the production templates, moving from development to production will be seamless.

1 Nov 13, 2022
IP address management (IPAM) and data center infrastructure management (DCIM) tool.

NetBox is an IP address management (IPAM) and data center infrastructure management (DCIM) tool. Initially conceived by the network engineering team a

NetBox Community 11.8k Jan 07, 2023
Rancher Kubernetes API compatible with RKE, RKE2 and maybe others?

kctl Rancher Kubernetes API compatible with RKE, RKE2 and maybe others? Documentation is WIP. Quickstart pip install --upgrade kctl Usage from lazycls

1 Dec 02, 2021
strava-offline is a tool to keep a local mirror of Strava activities for further analysis/processing:

strava-offline Overview strava-offline is a tool to keep a local mirror of Strava activities for further analysis/processing: synchronizes metadata ab

Tomáš Janoušek 29 Dec 14, 2022
🎡 Build Python wheels for all the platforms on CI with minimal configuration.

cibuildwheel Documentation Python wheels are great. Building them across Mac, Linux, Windows, on multiple versions of Python, is not. cibuildwheel is

Python Packaging Authority 1.3k Jan 02, 2023