Nagios status monitor for your desktop.

Overview

Nagstamon

Nagstamon is a status monitor for the desktop. It connects to multiple Nagios, Icinga, Opsview, Centreon, Op5 Monitor/Ninja, Checkmk Multisite, Thruk and monitos monitoring servers. Experimental support is provided for Zabbix, Zenoss and Livestatus monitors. It resides in systray, as a floating statusbar or fullscreen at the desktop showing a brief summary of critical, warning, unknown, unreachable and down hosts and services. It pops up a detailed status overview when being touched by the mouse pointer. Connections to displayed hosts and services are easily established by context menu via SSH, RDP, VNC or any self defined actions. Users can be notified by sound. Hosts and services can be filtered by category and regular expressions.

It is inspired by Nagios Checker for Firefox – just without an open Firefox window all the time to monitor the network.

Nagstamon is released under the GPLv2 and free to use and modify.

Nagstamon is written in Python 3 and uses the Qt 5 GUI toolkit which makes it very portable. It has been tested successfully on latest Ubuntu, Debian, Windows, NetBSD, OpenBSD, FreeBSD and MacOS X. It works with GNOME, KDE, Windows and macOS desktops.

Successfully tested monitors include:

  • Nagios 1.x, 2.x, 3.x and 4.x
  • Icinga 1.2+ and 2.3+
  • Opsview 5+
  • Centreon 2.3+
  • Op5 Monitor 7+
  • Checkmk/Multisite 1.1.10+
  • Thruk 1.5.0+
  • monitos 4.4+
  • Livestatus – experimental
  • Zabbix 2.2+ – experimental
  • Zenoss – experimental
  • monitos 3 - experimental
  • SNAG-View3 - experimental
  • Prometheus - experimental
  • Alertmanager - experimental

See https://nagstamon.ifw-dresden.de for further information.

Comments
  • Initial implementation for IcingaWeb2 server class

    Initial implementation for IcingaWeb2 server class

    The IcingaWeb2 REST API is not (fully) implemented yet, so currently this implementation is limited to "view only". Once https://dev.icinga.org/issues/9606 and/or https://dev.icinga.org/issues/7300 get implemented, the action part(schedule downtime, acknowledge, etc.) can be implemented in this class.

    Most changes are in the new server class file Nagstamon/Servers/IcingaWeb2.py.

    I've also changed Nagstamon/QUI/init.py so that it only the context menu elements are shown that are set in server.MENU_ACTIONS. This might need checking if the variable is set correctly in all other server classes.

    opened by ghost 68
  • Nagstamon  3.8 /3.9 and  Centreon 22.04.0

    Nagstamon 3.8 /3.9 and Centreon 22.04.0

    Hello,

    We have a problem in the interaction of Nagstamon 3.8 or 3.9 and the new Centreon version 22.04.0. Nagstamom only shows the message "Empty host XML result" We have already tried everything possible to solve this problem, but we are not getting any further. Jumping from Nagstamon to Monitor, Host etc. works without errors. Does anyone have an idea how we can solve this problem or is the Centreon version too new and everything is different there? We would be very grateful for any tips!

    opened by RAICO-IT 62
  • Error on critical.wav resource

    Error on critical.wav resource

    It seems that the critical.wav is sometimes missing in the resources directory.

    Screenshot 2019-06-11 at 10 19 22

    Solution suggestion always copy the default in place when resource is not found.

    opened by mariusvw 51
  • ImportError: No module named 'nagstacli'

    ImportError: No module named 'nagstacli'

    Hi,

    I installed 2.0-beta-20160513 and when I try to run nagstamon, I get this:

    Traceback (most recent call last):
      File "/usr/bin/nagstamon", line 24, in <module>
        import nagstacli
    ImportError: No module named 'nagstacli'
    
    opened by micah 48
  • Nagstamon and centreon 2.7

    Nagstamon and centreon 2.7

    Good day, After upgrading my centreon to the version 2.7, Nagstamon stopped working. The issue is linked to some change that centreon made on their website.

    They change the location of 1 XML file -serviceXML.php old location: /include/monitoring/status/Services/xml/broker/serviceXML.php? new location: /include/monitoring/status/Services/xml/serviceXML.php?

    After changing the line 336 in the file Nagstamon\Nagstamon\Server\centreon.py from: nagcgiurl_services = self.monitor_cgi_url + "/include/monitoring/status/Services/" + self.XML_NDO + "/serviceXML.php?" + urllib.urlencode({"num":0, "limit":999, "o":"svcpb", "sort_type":"status", "sid":self.SID}) to: nagcgiurl_services = self.monitor_cgi_url + "/include/monitoring/status/Services/xml/serviceXML.php?" + urllib.urlencode({"num":0, "limit":999, "o":"svcpb", "sort_type":"status", "sid":self.SID}) Nagstamon is working with centreon 2.7

    I hope this information will help you.

    opened by Thiefoumongars 47
  • Direct crash after clicking on OK from Create new server

    Direct crash after clicking on OK from Create new server

    - <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
    - <System>
      <Provider Name="Application Error" /> 
      <EventID Qualifiers="0">1000</EventID> 
      <Level>2</Level> 
      <Task>100</Task> 
      <Keywords>0x80000000000000</Keywords> 
      <TimeCreated SystemTime="2018-10-24T07:40:29.000000000Z" /> 
      <EventRecordID>76853</EventRecordID> 
      <Channel>Application</Channel> 
      <Computer></Computer> 
      <Security /> 
      </System>
    - <EventData>
      <Data>Nagstamon.exe</Data> 
      <Data>0.0.0.0</Data> 
      <Data>00000000</Data> 
      <Data>ucrtbase.DLL</Data> 
      <Data>10.0.10586.1171</Data> 
      <Data>59ae5010</Data> 
      <Data>40000015</Data> 
      <Data>00000000000699df</Data> 
      <Data>10ac</Data> 
      <Data>01d46b6cbc9bf015</Data> 
      <Data>C:\temp\Nagstamon-3.0.1-win64\Nagstamon.exe</Data> 
      <Data>C:\windows\system32\ucrtbase.DLL</Data> 
      <Data>13f5f823-d760-11e8-863c-d8d385764f4d</Data> 
      </EventData>
      </Event>
    
    opened by bphd 44
  • Nagstamon crashes when sorting by time

    Nagstamon crashes when sorting by time

    I am using nagstamon on Windows 10 x64 machine. I have nagstamon 2.1.0 version installed, but issue is also reproducible at nagstamon 2.0.1.

    Nagstamon crashes when I change default settings of Statusbar details popup: Default sort filed: Status Default sofr order: Descending

    to

    Default sort filed: Duration Default sofr order: Ascending

    Nagstamon runs for aproximately 45 minutes and then it crashes. Please let me know if I can provide more info (logs, dumps, etc.) and where to find this info.

    opened by FeatherBoy 38
  • KDE 5.21

    KDE 5.21

    Hello, I'm on Archlinux last update: nagstamon 3.4.1-2 plasma-desktop 5.21.0-2 linux 5.10.16.arch1-1

    Since the plasma update when I'm launching Nagstamon the widget appears .5 seconds and disappear, application is still running and not crashing. Using X, it works on Wayland

    opened by sachaz 33
  • Nagstamon2 not 'always on top'

    Nagstamon2 not 'always on top'

    I have issues with the new nagstamon build often falling behind other windows. Sometimes it can be rectified by just re-gaining focus on nagstamon, other times I have to restart the application.

    Using version Nagstamon-2.0-alpha-20160307-win64 on Windows 7

    opened by alekksi 33
  • Adding a server crashes Nagstamon, probably keystore problems

    Adding a server crashes Nagstamon, probably keystore problems

    As soon as I click OK after adding an op5 Monitor server, the application crashes. This is 1.0 on Windows, against an op5 Monitor 6.3 machine.

    If I kill the server add dialog that pops up on first start, enable debug mode, and then add the server, no debug log is created, and Nagstamon still crashes.

    Can I debug this in some other way?

    opened by fnordpojk 33
  • nagstamon 2.0 crashes with dbus exception

    nagstamon 2.0 crashes with dbus exception

    nagstamon 2.0 crashes after a few minutes running. this is what I get if I start it via my terminal:

    $ nagstamon 
    QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
    QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
    QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
    QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
    QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
    QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
    QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
    /usr/lib/python3/dist-packages/urllib3/connectionpool.py:794: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html
      InsecureRequestWarning)
    Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/Nagstamon/QUI/__init__.py", line 1836, in desktop_notification
        dbus_connection.show(AppInfo.NAME, message)
      File "/usr/lib/python3/dist-packages/Nagstamon/QUI/__init__.py", line 6112, in show
        self.timeout)
      File "/usr/lib/python3/dist-packages/dbus/proxies.py", line 145, in __call__
        **keywords)
      File "/usr/lib/python3/dist-packages/dbus/connection.py", line 651, in call_blocking
        message, timeout)
    dbus.exceptions.DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The name :1.370 was not provided by any .service files
    Aborted
    

    this happens on Linux Mint 18 MATE Edition

    $ inxi -Fxz
    System:    Host: noname Kernel: 4.7.4-040704-generic x86_64 (64 bit gcc: 6.2.0)
               Desktop: MATE 1.14.1 (Gtk 3.18.9-1ubuntu3.1) Distro: Linux Mint 18 Sarah
    Machine:   Mobo: Motherboard by ZOTAC model: ZBOX- EN979 v: Rev.00
               Bios: American Megatrends v: B286Z009 date: 06/28/2016
    CPU:       Quad core Intel Core i5-6400T (-MCP-) cache: 6144 KB
               flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx) bmips: 17663
               clock speeds: max: 2800 MHz 1: 800 MHz 2: 800 MHz 3: 800 MHz 4: 799 MHz
    Graphics:  Card: NVIDIA GM204M [GeForce GTX 970M] bus-ID: 01:00.0
               Display Server: X.Org 1.18.3 drivers: nvidia (unloaded: fbdev,vesa)
               Resolution: [email protected], [email protected]
               GLX Renderer: GeForce GTX 960/PCIe/SSE2 GLX Version: 4.5.0 NVIDIA 367.44 Direct Rendering: Yes
    Audio:     Card-1 NVIDIA GM204 High Definition Audio Controller driver: snd_hda_intel bus-ID: 01:00.1
               Card-2 Intel Sunrise Point-H HD Audio driver: snd_hda_intel bus-ID: 00:1f.3
               Card-3 Logitech Webcam C200 driver: USB Audio usb-ID: 001-004
               Sound: Advanced Linux Sound Architecture v: k4.7.4-040704-generic
    Network:   Card-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
               driver: r8169 v: 2.3LK-NAPI port: d000 bus-ID: 02:00.0
               IF: enp2s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
               Card-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
               driver: r8169 v: 2.3LK-NAPI port: c000 bus-ID: 03:00.0
               IF: enp3s0 state: down mac: <filter>
               Card-3: Intel Wireless 3165 driver: iwlwifi bus-ID: 04:00.0
               IF: wlp4s0 state: down mac: <filter>
    Drives:    HDD Total Size: 480.1GB (15.5% used) ID-1: /dev/sda model: SAMSUNG_MZ7LM480 size: 480.1GB temp: 0C
    Partition: ID-1: / size: 424G used: 55G (14%) fs: ext4 dev: /dev/dm-1
               ID-2: /boot size: 473M used: 193M (43%) fs: ext2 dev: /dev/sda2
               ID-3: swap-1 size: 17.14GB used: 0.00GB (0%) fs: swap dev: /dev/dm-2
    Sensors:   System Temperatures: cpu: 29.8C mobo: 27.8C gpu: 0.0:47C
               Fan Speeds (in rpm): cpu: N/A
    Info:      Processes: 300 Uptime: 1 day Memory: 5100.2/16013.4MB Init: systemd runlevel: 5 Gcc sys: 5.4.0
               Client: Shell (bash 4.3.421) inxi: 2.2.35 
    
    opened by magenbrot 32
  • [Nagstamon 3.10.1] add filter by poller

    [Nagstamon 3.10.1] add filter by poller

    Hi everyone, that is not really an issue but a feature request.

    i would like to know if we can more filter on nagstamon, like we can filtering on centreon interface. In my case, i would like to filter on a specific poller or hostgroup to see only my hosts and not the others. That's can be possible ?

    Thank you in advance,

    Best regards,

    opened by ASLLR 0
  • crash: AttributeError: 'NoneType' object has no attribute 'find'

    crash: AttributeError: 'NoneType' object has no attribute 'find'

    3.10.1 sometimes (when there's an authentication problem with an already configured source) crashes on start with

    Traceback (most recent call last):
    File "/usr/local/lib/python3.9/site-packages/Nagstamon/QUI/__init__.py", line 4015, in get_status
    status = self.server.GetStatus()
    File "/usr/local/lib/python3.9/site-packages/Nagstamon/Servers/Generic.py", line 897, in GetStatus
    self.init_HTTP()
    File "/usr/local/lib/python3.9/site-packages/Nagstamon/Servers/IcingaWeb2.py", line 107, in init_HTTP
    if not form.find('input', {'name': form_input}) is None:
    AttributeError: 'NoneType' object has no attribute 'find'
    zsh: abort (core dumped)  nagstamon.py
    

    This can be easy fixed by changing line 107 in Nagstamon/Servers/IcingaWeb2.py from

    if not form.find('input', {'name': form_input}) is None:
    

    to

    if form is not None and not form.find('input', {'name': form_input}) is None:
    
    opened by drook 0
  • Nagstamon 3.10.1 doesnt work with Centreon version 21.x

    Nagstamon 3.10.1 doesnt work with Centreon version 21.x

    Hi all, someone solve the problem with Centreon versione 21.x ? Other versions work fine.

    "Unknown Error" is given with the 21.x version as imagine: image

    Can someone help us? Or if the problem is known, can you please give me the link of the thread? Danke

    opened by Leon30071980 4
  • Feature Request - Client Certificate

    Feature Request - Client Certificate

    First of all, thank you for an awsome product.

    We use a CheckMK server that forces the use of client side certificate and only then we are presented with login prompt. Is that feature possible to be implemented?

    opened by nunoseita 2
  • Nagstamon 3.10 and 3.10.1 showing rough numbers and not % from Zabbix

    Nagstamon 3.10 and 3.10.1 showing rough numbers and not % from Zabbix

    Hello,

    I just updated to newest Nagstamon and I get rough float numbers not % of my checks.

    Checked both versions and it seems like it is not working for both. Our monitoring Zabbix 6.0

    Anyone with Zabbix 6.2 can confirm that Nagstamon is working fine with it?

    TIA

    opened by Shwele 11
Releases(latest)
Owner
Henri Wahl
Henri Wahl
Chef-like functionality for Fabric

/ / ___ ___ ___ ___ | | )| |___ | | )|___) |__ |__/ | __/ | | / |__ -- Chef-like functionality for Fabric About Fabric i

Sébastien Pierre 1.3k Dec 21, 2022
Pulumi - Developer-First Infrastructure as Code. Your Cloud, Your Language, Your Way 🚀

Pulumi's Infrastructure as Code SDK is the easiest way to create and deploy cloud software that use containers, serverless functions, hosted services,

Pulumi 14.7k Jan 08, 2023
A repository containing a short tutorial for Docker (with Python).

Docker Tutorial for IFT 6758 Lab In this repository, we examine the advtanges of virtualization, what Docker is and how we can deploy simple programs

Arka Mukherjee 0 Dec 14, 2021
Caboto, the Kubernetes semantic analysis tool

Caboto Caboto, the Kubernetes semantic analysis toolkit. It contains a lightweight Python library for semantic analysis of plain Kubernetes manifests

Michael Schilonka 8 Nov 26, 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
Docker Container wallstreetbets-sentiment-analysis

Docker Container wallstreetbets-sentiment-analysis A docker container using restful endpoints exposed on port 5000 "/analyze" to gather sentiment anal

145 Nov 22, 2022
Tencent Yun tools with python

Tencent_Yun_tools 使用 python3.9 + 腾讯云 AccessKey 利用工具 使用之前请先填写config.ini配置文件 Usage python3 Tencent_rce.py -h Scanner python3 Tencent_rce.py -s 生成CSV

<img src="> 13 Dec 20, 2022
A little script and trick to make your heroku app run forever without being concerned about dyno hours.

A little script and trick to make your heroku app run forever without being concerned about dyno hours.

Tiararose Biezetta 152 Dec 25, 2022
a CLI that provides a generic automation layer for assessing the security of ML models

Counterfit About | Getting Started | Learn More | Acknowledgments | Contributing | Trademarks | Contact Us -------------------------------------------

Microsoft Azure 575 Jan 02, 2023
RMRK spy bot for RMRK hackathon

rmrk_spy_bot RMRK spy bot https://t.me/RMRKspyBot for rmrk hacktoberfest https://rmrk.devpost.com/ Birds and items price and rarity estimation Reports

Victor Ryabinin 2 Sep 06, 2022
A tool to clone efficiently all the repos in an organization

cloner A tool to clone efficiently all the repos in an organization Installation MacOS (not yet tested) python3 -m venv .venv pip3 install virtualenv

Ramon 6 Apr 15, 2022
HB Case Study

HB Case Study Envoy Proxy It is a modern Layer7(App) and Layer3(TCP) proxy Incredibly modernized version of reverse proxies like NGINX, HAProxy It is

Ilker Ispir 1 Oct 22, 2021
Software to automate the management and configuration of any infrastructure or application at scale. Get access to the Salt software package repository here:

Latest Salt Documentation Open an issue (bug report, feature request, etc.) Salt is the world’s fastest, most intelligent and scalable automation engi

SaltStack 12.9k Jan 04, 2023
Dynamic DNS service

About nsupdate.info https://nsupdate.info is a free dynamic DNS service. nsupdate.info is also the name of the software used to implement it. If you l

nsupdate.info development 880 Jan 04, 2023
Convenient tool to manage multiple VMs at once using libvirt

Convenient tool to manage multiple VMs at once using libvirt Installing To install the tool and its dependencies: pip install -e . Getting completion

Cedric Bosdonnat 13 Nov 11, 2022
Build Netbox as a Docker container

netbox-docker The Github repository houses the components needed to build Netbox as a Docker container. Images are built using this code and are relea

Farshad Nick 1 Dec 18, 2021
Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

Arie Bregman 35.1k Jan 02, 2023
Ingress patch example by Kustomize

Ingress patch example by Kustomize

Jinu 10 Nov 14, 2022
Lima is an alternative to using Docker Desktop on your Mac.

lima-xbar-plugin Table of Contents Description Installation Dependencies Lima is an alternative to using Docker Desktop on your Mac. Description This

Joe Block 68 Dec 22, 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