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
Inferoxy is a service for quick deploying and using dockerized Computer Vision models.

Inferoxy is a service for quick deploying and using dockerized Computer Vision models. It's a core of EORA's Computer Vision platform Vision Hub that runs on top of AWS EKS.

94 Oct 10, 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
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
Hatch plugin for Docker containers

hatch-containers CI/CD Package Meta This provides a plugin for Hatch that allows

Ofek Lev 11 Dec 30, 2022
Emissary - open source Kubernetes-native API gateway for microservices built on the Envoy Proxy

Emissary-ingress Emissary-Ingress is an open-source Kubernetes-native API Gateway + Layer 7 load balancer + Kubernetes Ingress built on Envoy Proxy. E

Emissary Ingress 4k Dec 31, 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
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
Coding For Entrepreneurs 100 Jan 01, 2023
Let's learn how to build, release and operate your containerized applications to Amazon ECS and AWS Fargate using AWS Copilot.

🚀 Welcome to AWS Copilot Workshop In this workshop, you'll learn how to build, release and operate your containerised applications to Amazon ECS and

Donnie Prakoso 15 Jul 14, 2022
Automate SSH in python easily!

RedExpect RedExpect makes automating remote machines over SSH very easy to do and is very fast in doing exactly what you ask of it. Based on ssh2-pyth

Red_M 19 Dec 17, 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
Learning and experimenting with Kubernetes

Kubernetes Experiments This repository contains code that I'm using to learn and experiment with Kubernetes. 1. Environment setup minikube kubectl doc

Richard To 10 Dec 02, 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
Tiny Git is a simplified version of Git with only the basic functionalities to gain better understanding of git internals.

Tiny Git is a simplified version of Git with only the basic functionalities to gain better understanding of git internals. Implemented Functi

Ahmed Ayman 2 Oct 15, 2021
A system for managing CI data for Mozilla projects

Treeherder Description Treeherder is a reporting dashboard for Mozilla checkins. It allows users to see the results of automatic builds and their resp

Mozilla 235 Dec 22, 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
Define and run multi-container applications with Docker

Docker Compose Docker Compose is a tool for running multi-container applications on Docker defined using the Compose file format. A Compose file is us

Docker 28.2k Jan 08, 2023
Utilitaire de contrôle de Kubernetes

Utilitaire de contrôle de Kubernetes ** What is this ??? ** Every time we use a word in English our manager tells us to use the French translation of

Théophane Vié 9 Dec 03, 2022