System Monitor (SysMon)

Last change on 2021-05-11 • Created on 2020-05-18

The Hetzner Server Monitoring (System Monitor/SysMon)

Hetzner clients can use the Server Monitoring System to monitor their servers and have an email sent to them when the status of one of the monitored services changes.

You can set this system up on Robot and going to the server's Monitoring tab.

Conditions

Important note: You need to activate both Cookies and JavaScript in your browser for both robot.your-server.de and sysmon.your-server.de for the Server Monitoring system to work.

In addition, the server that you want to monitor needs to allow all access from our Monitoring Systems.

To do this, you can query the IP addresses of our systems via DNS (pool.sysmon.hetzner.com):

$ dig pool.sysmon.hetzner.com

;; ANSWER SECTION:
pool.sysmon.hetzner.com. 6768	IN	A	213.133.113.82
pool.sysmon.hetzner.com. 6768	IN	A	188.40.24.211
pool.sysmon.hetzner.com. 6768	IN	A	213.133.113.86
pool.sysmon.hetzner.com. 6768	IN	A	213.133.113.84
pool.sysmon.hetzner.com. 6768	IN	A	213.133.113.83
...
$ dig pool.sysmon.hetzner.com AAAA

;; ANSWER SECTION:
pool.sysmon.hetzner.com. 6744	IN	AAAA	2a01:4f8:0:a101::6:1
pool.sysmon.hetzner.com. 6744	IN	AAAA	2a01:4f8:0:a101::5:1
pool.sysmon.hetzner.com. 6744	IN	AAAA	2a01:4f8:0:a112::c:1
pool.sysmon.hetzner.com. 6744	IN	AAAA	2a01:4f8:0:a101::6:3
pool.sysmon.hetzner.com. 6744	IN	AAAA	2a01:4f8:0:a101::6:2
...

In scripts on Linux, it's beneficial to use getent(1) instead. Its output is easier to parse. Instead of ahostsv4, use ahostsv6 for IPv6 addresses.

$ getent ahostsv4 pool.sysmon.hetzner.com|awk '{print $1}'|sort -u
188.40.24.211
213.133.113.82
213.133.113.83
213.133.113.84
213.133.113.86

If necessary, we may add more in the future.

Make sure that your firewall allows access to our Monitoring Systems' IP addresses so the Monitoring System can monitor your server.

Overview

If you are using the Server Monitoring System for the first time, you should see the following:

Ueberblick 1

(Note: You will see your own IP addresses here instead.)

At this point, you have not yet configured systems or contacts. You will simply see a list of the available systems and their IP addresses.

Contacts

You can add multiple contacts and assign different systems to them.

To add a contact, you can click on the green plus sign Plus-Zeichen next to the Contacts label. An input form will appear at the bottom of the contacts list, where you can enter a description and address. By clicking on the save button Speichern-Symbol , you will save the contact, and it will be available for the different systems.

Kontakte 1.png

Important note: You need to add the contact needs to a system before you use it. (See the description lower down).

Systems/Server

If you are using the System Monitor for the first time and have not yet configured any systems, at the top of the page, you will see a menu with the IP addresses of systems that are available. (See illustration above).

Select the system you want, and click on the button right next to it. It then appears in the list called Configured Systems.

Konfigurierte systeme 1.png

The new system is initially disabled and has no contacts or checks. You should first add checks and contacts before you activate the system.

Right next to the IP address, there is a small text field. You can click on it and use it to enter a short description for the system; this description will also appear in the email notifications.

Adding checks to a system

First, click on the small black arrow Down.png next to the Checks label of the system that you want to configure. This will show you a list of all the checks that you can add, as well as a green plus sign Plus-Zeichen you can use to add individual checks.

Click on the plus sign, and from the menu that appears, choose the check type you want. When you have selected a check type, you will see different input fields, depending on the check type.

Konfigurierte systeme 3.png

At the moment the following check types and settings are available:

  • ping - no parameters
  • port

    • port: Network port
    • type: TCP or UDP check - Note: A UDP check is not always possible (default=TCP)
  • http

    • port: Network port (standard=80), optional
    • path: Path to the test file, eg. /test/index.php (default=/), optional
    • hostname: Host or Domain name for the Host header, optional
    • user: Username for basic authorization, optional
    • pass: Password for basic authorization, optional
    • ssl: Should SSL/https be used? - Please adjust the port if necessary (443). (default=no)

With the HTTP check, only the status codes 200, 301 and 302 are considered to be successful.

  • ftp

    • port: Network port (default=21), optional
    • user: Username for the FTP server, optional
    • pass: Password, optional
  • pop

    • port: Network port (default=110), optional
    • user: Username for the POP server
    • pass: Password
  • imap

    • port: Network port (default=143), optional
    • user: Username for the IMAP server
    • pass: Password
    • ssl: Should SSL/https be used? - Please adjust the port if necessary (443). (default=no)
  • smtp

    • port: Network port (default=25), optional
    • user: Username for the SMTP server, optional
    • pass: Password, optional
  • `dns

    • port: Network port (default=53), optional
    • type: Query type: ANY A PTR CNAME MX NS SOA HINFO AXFR TXT SPF DNSKEY CERT (default=ANY)
    • zone: Zone/Domain name (default=hetzner.de)

The values ​​in parentheses indicate the default value that is used if you don't specify anything.

For those checks for which you can enter login details (username/password), we recommend that you set up a separate user on the server with as few rights as possible and a secure password, and use it solely for the checks.

Editing checks

You can edit existing checks by clicking on the list of previously configured parameters of the respective checks. An entry form will appear with the existing data. You can edit the data and save the changes by clicking on the save button Speichern-Symbol .

First, click on the small black arrow Down.png next to the Contacts label of the system you want to configure. A list will open with the available contacts. Simply select the contact you want and confirm this by pressing the save button Speichern-Symbol .

Konfigurierte systeme 2.png

If you don't see any contacts, then that means you haven't configured any. If this is the case, then you first need to add contacts as described above.

Setting the check and reminder interval

For each of your systems, you can set specific time intervals for when you want SysMon to check your systems. In addition, you can also set the interval for when you want SysMon to remind you about a faulty system.

To change one of the intervals, click on the currently displayed interval — list of options will pop up. Make your choice and press the "OK" button.

Intervalle 1.png

To apply the settings, click on activate. Important note: In the event of an error during the check (for example, your server can not be reached with a ping check) the System Monitor will only show a failure and send an email at the second consecutive failure. On the one hand, this will protect you from false alarms. (For instance, you could be restarting a service right at the moment that the check happens.) On the other hand, it means that you will be informed of an error only after the second check. So if your check interval is 3 minutes, you will get a notification after 6 minutes.

Check the status

You can check the current status of the configured systems by reloading the page or by clicking on the update button Aktualisieren-Symbol at the top of the page:

Konfigurierte systeme 4.png

Table of Contents