March 2018 (5.1 build 13063)

March 2018 (5.1 build 13063)

This is a major release, with new features introduced, and bugs fixed.


  • Security settings of software components used by IPHost Network Monitor have been tightened in order to mitigate potential security vulnerabilities:

    • TLS 1.2 is enforced on a communication link between Monitoring Service and Remote Agents; medium and weak strength ciphers are prohibited
    • Apache Web server configuration has been changed: TRACE / TRACK methods prohibited, most statistics from status module are no longer published. Minimum necessary statistics are collected and presented by the IPHost web module itself


  • Added three templates to monitor Xen Server:
    • XenServer Host
    • XenServer Virtual Machine
    • XenServer Storage Repository
  • Added the template to monitor services of MS Sharepoint Server 2016.
  • Added the template to monitor services of Active Directory Domain Controller on MS Windows Server 2016
  • A template “Apache Web Server used by IPHost” has been updated to fetch basic statistics from IPHost web module rather than from standard status module that has been disabled.


  • SNMP Custom monitor now supports counting values of OCTET STRING or floating point number types if they can be converted to integer. You can scale such values using the “Divide returned value by…” setting. For example, you can divide by 0.01 to convert fractions of a whole to percents.
  • Two new monitor types have been added:

    Python script monitor

    Executes a Python script given a script file name and optional command-line parameters. Besides, you can supply input data to the script. If monitor returns zero, its stdout is interpreted as a numeric performance value; otherwise its stderr or stdout (whichever is non-empty) is interpreted as an error message.

    You can indicate which Python interpreter to use with the help of a global setting defined in Settings > Monitoring. By default, a built-in Python 3.6.4 interpreter is used (also known as “embedded Python”). You need to indicate a custom interpreter if you are still using Windows XP; our built-in Python does not support it.

    Email Round-Trip monitor

    This monitor sends an e-mail message to given address using SMTP, checks that it has been delivered using either POP3 or IMAP, and then deletes the message. This way it makes sure that e-mail servers work correctly from user point of view. The monitor returns operation time in milliseconds. For slow servers you might want to extend timeout value for this monitor to 1 minute or more (see State Conditions tab).

    Email Round-Trip monitor uses Python under the hood, and it is affected by the Python interpreter global setting changes. The script source is under $IphostInstallDir/scripts/email_round_trip; you can adapt it to your needs or implement your own monitors in a similar way.

  • Added new types of monitor dependencies. Now you can configure monitor to be stopped by dependency if other monitor is in the one of the following states:

    • Down
    • Warning
    • Ok
    • Not in Down
    • Not in Warning
    • Not in Ok
  • Support for SOA (Start of Authority) serial number monitoring has been added to DNS monitor. Use DNS Response Validation state condition section to make sure that it matches some “known good” serial number. This way you get notified when someone changes any DNS information for a particular domain.
  • A new “Reverse monitor” option was added to PING, TCP, and HTTP monitors. This option “reverses” the meaning of the monitor. I.e., if this option is set, the monitor is considered OK if the monitor has not received the proper reply during the specified time (the performance value is set to a fake value of 1 ms in that case). If the monitor has received the needed reply, it is considered DOWN. Reversed PING monitors are not taken into account when considering the “Depends on PING on this host” monitor options.

  • HTTP/FTP Return Code Validation section (previously “Accepted Return Codes“) dialog is changed. Now you can use a notation like 4xx in that dialog to specify any return code that starts with digit 4. Besides that, you can also specify a set of exceptional return codes that are NOT accepted.

  • HTTP and FTP Return Code Validation section are now considered distinct sections. This allows to specify different requirements on return codes for HTTP monitors and FTP monitors at the host or a higher level.

  • SNMP custom monitor now displays current value in the monitor tree in the following cases:

    • counter type is “Value Change”
    • there are SNMP Response Validation state conditions for “Current Value” counter type

State Conditions

  • Now state changes that took place while the monitor was Stopped are detected and reported. For example, if you stop some monitor that was in Down state, correct the problem with corresponding resource, and start the monitor, then the state change from Down to OK will be detected and corresponding alerts will be performed, if any. The rationale for this change is to always perform recovery alerts, even if exact moment of state change is hidden by stopping the monitor. Otherwise it is hard to say whether the problem is still in place.

Alerting and Actions

  • A new action type has been added:

    Python script action

    Executes a Python script similarly to the Python script monitor. For example, you can send an e-mail using Python smtplib.

  • Support for the new variables – $LastResult and $LastResultTime – has been added. The variables are available for use in actions.

    $LastResult – the result of the last poll of a monitor (as in the Last Result column in the tree view tab). If the monitor is DOWN or has never been called, the variable is set to ‘N/A’.

    $LastResultTime – the time moment of the last poll of a monitor. If the monitor has never been called, the variable has the value of ‘N/A’.

  • HTTPS URL is used when expanding variables for alerts, when HTTPS is available

Client Application and Monitoring Service

  • When a monitor is in the DOWN state, earlier versions of the IPHost Network Monitor considered the
    performance value for that monitor to be equal to 0 when calculating averages and plotting data.
    That is not always true in reality, because the DOWN state can be resulted from a failure to satisfy
    one of imposed state conditions. Now performance values returned by a monitor are taken into account
    even the monitor is in the DOWN state. Besides, such performance values are displayed:

    • in a tree in monitoring client
    • in summary / trends reports in web interface.
  • Support for nested host groups has been added. New Host Group dialog allows to create a host group either as a top-level group for a local or remote agent, or as a sub-group of another group.

    New Move context menu option has been added. It allows moving hosts and host groups in the main tree. Same action is available in Name and Grouping section of Main Parameters tab. During the creation of a new host you can also select or create a group to place the host into.

    Reports in IPHost Monitor Web interface can also be structured and viewed by (sub)groups. Only monitors pertaining to a particular group or any of its nested subgroups are shown when you navigate to that group in a tree.

  • View “By dependency” has been added in the IPHost Network Monitor client application and web interface. Now you can view monitor dependency tree with icons indicating dependency type of each dependent monitor.
  • Fixed compatibility issues for Remote Agents released before the beginning of 2017 that might cause Monitoring Service crash or instability.
  • Removed outdated feature that sets the limit of maximum half-opened TCP connections. Old agents are sent a number of 1000 connections for compatibility reasons.

Software Components

  • Third party tools such as Apache HTTP server, OpenSSL, curl and other libraries have been updated to their latest stable released versions.


  • The user can now control by the “Settings > Reporting” dialog whether the reports generated by the IPHost Network Monitor should contain stopped monitors or monitors that have been discovered but not yet started. The analogous settings are provided also in the web-interface.