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
Get Response Of Container Deployment Kube with python

get-response-of-container-deployment-kube 概要 get-response-of-container-deployment-kube は、例えばエッジコンピューティング環境のコンテナデプロイメントシステムにおいて、デプロイ元の端末がデプロイ先のコンテナデプロイ

Latona, Inc. 3 Nov 05, 2021
Some automation scripts to setup a deployable development database server (with docker).

Postgres-Docker Database Initializer This is a simple automation script that will create a Docker Postgres database with a custom username, password,

Pysogge 1 Nov 11, 2021
Knock your images before these make you painful.

image-knocker Knock your images before these make you painful. Background One day, I had run my deep learning model training program and got off work

Yonghye Kwon 9 Jul 25, 2022
Glances an Eye on your system. A top/htop alternative for GNU/Linux, BSD, Mac OS and Windows operating systems.

Glances - An eye on your system Summary Glances is a cross-platform monitoring tool which aims to present a large amount of monitoring information thr

Nicolas Hennion 22k Jan 08, 2023
Containerize a python web application

containerize a python web application introduction this document is part of GDSC at the university of bahrain you don't need to follow along, fell fre

abdullah mosibah 1 Oct 19, 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
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
pyinfra automates infrastructure super fast at massive scale. It can be used for ad-hoc command execution, service deployment, configuration management and more.

pyinfra automates/provisions/manages/deploys infrastructure super fast at massive scale. It can be used for ad-hoc command execution, service deployme

Nick Barrett 2.1k Dec 29, 2022
Webinar oficial Zabbix Brasil. Uma série de 4 aulas sobre API do Zabbix.

Repositório de scripts do Webinar de API do Zabbix Webinar oficial Zabbix Brasil. Uma série de 4 aulas sobre API do Zabbix. Nossos encontros [x] 04/11

Robert Silva 7 Mar 31, 2022
Python utility function to communicate with a subprocess using iterables: for when data is too big to fit in memory and has to be streamed

iterable-subprocess Python utility function to communicate with a subprocess using iterables: for when data is too big to fit in memory and has to be

Department for International Trade 5 Jul 10, 2022
framework providing automatic constructions of vulnerable infrastructures

中文 | English 1 Introduction Metarget = meta- + target, a framework providing automatic constructions of vulnerable infrastructures, used to deploy sim

rambolized 685 Dec 28, 2022
Wubes is like Qubes but for Windows.

Qubes containerization on Windows. The idea is to leverage the Windows Sandbox technology to spawn applications in isolation.

NCC Group Plc 124 Dec 16, 2022
Phonebook application to manage phone numbers

PhoneBook Phonebook application to manage phone numbers. How to Use run main.py python file. python3 main.py Links Download Source Code: Click Here M

Mohammad Dori 3 Jul 15, 2022
Oracle Cloud Infrastructure Object Storage fsspec implementation

Oracle Cloud Infrastructure Object Storage fsspec implementation The Oracle Cloud Infrastructure Object Storage service is an internet-scale, high-per

Oracle 9 Dec 18, 2022
NixOps is a tool for deploying to NixOS machines in a network or cloud.

NixOps NixOps is a tool for deploying to NixOS machines in a network or the cloud. Key features include: Declarative: NixOps determines and carries ou

Nix/Nixpkgs/NixOS 1.2k Jan 02, 2023
DAMPP (gui) is a Python based program to run simple webservers using MySQL, Php, Apache and PhpMyAdmin inside of Docker containers.

DAMPP (gui) is a Python based program to run simple webservers using MySQL, Php, Apache and PhpMyAdmin inside of Docker containers.

Sehan Weerasekara 1 Feb 19, 2022
docker-compose工程部署时的辅助脚本

okta-cmd Introduction docker-compose 辅助脚本

完美风暴666 4 Dec 09, 2021
Checkmk kube agent - Checkmk Kubernetes Cluster and Node Collectors

Checkmk Kubernetes Cluster and Node Collectors Checkmk cluster and node collecto

tribe29 GmbH 15 Dec 26, 2022
A Python library for the Docker Engine API

Docker SDK for Python A Python library for the Docker Engine API. It lets you do anything the docker command does, but from within Python apps – run c

Docker 6.1k Dec 31, 2022
Blazingly-fast :rocket:, rock-solid, local application development :arrow_right: with Kubernetes.

Gefyra Gefyra gives Kubernetes-("cloud-native")-developers a completely new way of writing and testing their applications. Over are the times of custo

Michael Schilonka 352 Dec 26, 2022