Algorius Net Viewer Manual | Sensors

General Information

Application and server enable various sensors — methods of network devices scanning. Scanning defines devices’ state (active/inactive), measures various data like response time and gathers different detailed information.

Sensors can be assigned to devices ​​by using device editor, the context menu of a device or by using Group Operations. See Sensors settings for more information.

If a device doesn’t contain any sensor, it is displayed as always active. But, if such device is also connected with other devices, then its status depends on them. For example, if there is a switch on the map, which is not scanned, and it is connected to other devices, if one of these devices is active, then the switch will be displayed as active. All connected devices are detected automatically by connection line presence on the map. See Connections for more information.

Configuring

Sensors are set up separately for local maps and for each server. Local sensors are available for local maps. For maps downloaded from a server, server-based sensors are used.

To configure sensors, go to app or server options and select Monitoring:

To configure a sensor, select it in the list and click Edit button. To create new sensor, click Add button. To create new sensor based on the current one, click Duplicate button. To remove the sensor, click Delete button. Copy and Paste makes it easy to transfer sensors between the application and servers.

To group sensors, click the Add Group button. Enter the group name and press Enter. After that, select the required sensors and move them to the group using the mouse or using the Cut / Paste buttons.

If a device is selected on the current map, its first sensor is selected automatically in the list of monitoring settings. Thus you can quickly edit the scanning sensors of a particular device.

Select the plugin for scanning in Sensor window. Enter the unique identifier of the sensor – it will be used to link the sensor with the devices. Specify the sensor name to be displayed. sensor’s name is displayed for selection, you can change it freely any time. Sensor’s identifier is used for internal links and is not recommended to be changed. If identifier is changed, devices may fail to find its sensor and you’ll have to specify it again.

Enter the parameters provided by the plugin and click OK to apply changes.

Plugins

All plugins are located in Plugins folder in application catalog. Each plugin has sensor algorithm and settings editor. You can develop you own plugins, API for that already exists, but it is still evolving.

Please, contact us if you need any additional plugins to be added. We are interested in development of the Algorius Net Viewer, so will try to take into account all your requests and implement them in the next software version (for free).

Such plugins as Ping, TCP, UDP use asynchronous sockets, enabling scanning of many devices in one thread, significantly decreasing the usage of system resources. Other plugins create separate thread for each scanning. Thread pool is used for resource saving in this case.

Common Settings

The following settings are provided for many plugins:

  • Encoding — only for text values — the encoding, in which the text value is received.
  • Prefix — only for text values — the text prefix, after which it is required to search for a number. If the prefix is not set (empty), then the first number in the text is found. If the prefix is specified but not found the text or a number after it is not found, the device will be considered inactive.
  • Regex — only for values from console text — regular expression to search for a specific value in the received text value.
  • Multiplier — the coefficient by which the resulting numerical value will be multiplied.
  • Measure unit — measurement units of the resulting numeric value.
  • Decode values — display specified values instead of received values. It is allowed to specify several values line by line, for example: 1=Open 2=Closed
  • Inactive, if value — if the resulting value meets the specified range, then the device is considered as inactive.
  • Number of checks to change to inactive — when device state changes from ‘active’ to ‘inactive’, application can recheck the state – scan it several times more. It excludes false state changes.
  • Pause between checks — milliseconds between checks, specified above. Application will wait for specified time interval before next scanning.

ARP

'ARP' plugin enables device scanning with the help of ARP Ping. It checks the presence of the device IP in ARP table.

There are following settings along with standard ones:

  • Timeout (sec) — period of waiting for device address in the ARP table. When timeout is expired device enters inactive state.

DNS

'DNS' plugin enables device IP address resolving by specified DNS name or device DNS name resolving by specified IP address. Resolving occurs by DNS request. Resolving time (in milliseconds) is measured. The device is considered as active if resolving is successful.

There are following settings along with standard ones:

  • Timeout (sec) — period of waiting for reply from a device. When timeout is expired device enters inactive state.

DriveFreeSpace

'DriveFreeSpace' plugin measures free space on the hard disk drives of a scanned device. Measurement is done via WMI. Result is displayed in megabytes. Minimal free space on specified drives is measured.

There are following settings along with standard ones:

  • Gather information only from these drives — if this setting is used, then information will be gathered from all specified drives. You should use disk names (labels), all other symbols are ignored. If this setting is not used, then information is gathered from all hard disk drives except external ones and other data carriers.

To enable WMI access, the application should be launched with sufficient rights and RPC service should be started on the remote computer. See Troubleshooting for more information.

External

'External' plugin enables device scanning using external utilities. It significantly expands the application functionality, since you can include any external application with scanning of network devices into Algorius Net Viewer.

If external application is the console application, then you can derive scanning result from console text. The last received console text is displayed in the tooltip when you hover on the device with the mouse.

There are following settings along with standard ones:

  • File — path to executable file.
  • Parameters — parameters to be sent to external utility when it is launched. You can use the following macros for automatic value substitution: %IP%, %IPV4%, %IPV4% — IP, IPv4, IPv6 device address respectively, %HOST% — device host name, %ADDRESS% — device address, %LOGIN_USER% — user name from the login, %LOGIN_PASSWORD% — password from the login.
  • Set inactive state if response code is — if utility’s resulted code (ErrorLevel) meets the specified range, then device is considered as inactive.
  • Measure — the measured value — command execution time (in milliseconds) or value from console text (only for external console commands). If you choose to get the value from the console, then the console text will be analyzed, the number will be searched, and this number will be used as a result of the device scanning.
  • Timeout (sec) — time period to wait for external application completion. When this period is expired, external application is forcibly closed and the device is displayed as inactive.

Files

The ‘Files’ plug-in allows you to determine the number of files in a directory, their size, and read speed. You can filter files by name and by modification date. Search for files is carried out in the specified directory and in all its subdirectories.

The path to the directory is set in the device settings as the address. You can specify the path to both the directory and the file; this allows you to measure the read speed or the size of a specific file. If the specified file or directory is missing or not available, the device will be considered inactive.

In addition to the common settings, the following are provided:

  • Measure — the type of parameter to be measured: number of files, total file size, file read speed.
  • Timeout (sec) — the maximum scanning duration. If the number or size of files is measured, and the calculation is not finished within specified time, the device will be considered inactive. If the read speed is measured, and the reading of all files is not finished within specified time, the reading is interrupted, the device is considered active, and the read rate is calculated based on the amount of files read over a period of time.
  • Mask — if set, only files matching the specified mask are taken into account, for example, *.zip;*.rar
  • Not older — if set, only files created or modified not later than the specified number of days are taken into account. This allows you, for example, to verify that backup information has been created in the last 7 days.

Mail

You can use ‘Mail’ plugin to scan mail servers via POP3/SMTP/IMAP and define the response time, number of mails or number of new messages.

There are following settings along with standard ones:

  • Protocol — data exchange protocol.
  • Port — TCP port to establish connection with. Device can reassign this port in its address, e.g. 192.168.1.1:21. System will use a port from device address in that case.
  • Use SSL — use the secured SSL connection.
  • Measure — measured parameter: response time, number of mails or number of new messages.
  • Timeout (sec) — period of waiting for connection establishment with the server. When timeout is expired device enters inactive state.

MultiPing

'MultiPing' plugin enables device scanning by sending the ICMP queries, just as it does the Ping.exe utility. This sensor is similar to 'Ping' sensor. Difference is that device is scanned several times and average response time is taken. It increases the scanning accuracy. Average response time (in milliseconds) is measured.

There are following settings along with standard ones:

  • Timeout (sec) — period of waiting for response from scanned device during every scan. When timeout is expired device enters inactive state.
  • Number of requests— number of ICMP requests sent to device during awaiting for response.
  • Sufficient response number — number of responses from a device, sufficient to consider this device active.

If the amount of received responses is less than the sufficient response number, then a device is considered inactive. Lost packages are not used for average response time calculation.

Netbios

'Netbios' plugin enables device scanning with the help of Netbios protocol. It sends Netbios request to 137 UDP port of scanned device. The device is considered as active if it reported its Netbios name. Response time (in milliseconds) is measured.

There are following settings along with standard ones:

  • Timeout (sec) — period of waiting for response from scanned device. When timeout is expired device enters inactive state.

Ping

'Ping' plugin enables device scanning by sending the ICMP queries, just as it does the Ping.exe utility. Response time (in milliseconds) is measured.

There are following settings along with standard ones:

  • Timeout (sec) — period of waiting for reply from a device. When timeout is expired device enters inactive state.

PowerShell

PowerShell plugin allows querying computers by running PowerShell commands.

There are following settings along with standard ones:

  • Authorization — a method of authorization on a remote computer. If “None” is selected, authorization is not performed and commands start being run on the current computer. If another method of authorization is selected, a session is created on a remote computer to run commands. In this case, the login specified for the sensor in the device settings is used.
  • Script — the executed script. You can use the following macros for automatic value substitution: %IP% — device IP, %HOST% — device host name, %ADDRESS% — device address, %LOGIN_USER% — user name from the login, %LOGIN_PASSWORD% — password from the login.
  • Measure — a means to obtain the value. If Value from Output is selected, the result will be taken from the console text (the first number displayed). The value can be output to the console using the echo command. If Value from Property is selected, the result will be the value of the specified property from the first record obtained from the latest query executed.
  • Property name — the name of the property whose value has to be obtained. It is available if Value from Property is selected as the measured value.

An example script for obtaining the processor temperature and converting the result to degrees Celsius:

# script for obtaining the processor temperature from MSAcpi_ThermalZoneTemperature

$script = "select CurrentTemperature from MSAcpi_ThermalZoneTemperature"

# execute script

$query = Get-WmiObject -Query $script -Namespace "root/wmi"

# analysis of returned records

foreach ($record in $query)

{

# converting values from tens of Kelvin to degrees Celsius

$value = $record.CurrentTemperature/10-273

# outputting the result

echo "Result: $value"

}

SNMP

'SNMP' plugin enables device scanning using the SNMP (Simple Network Management Protocol). SNMP is used to manage devices in IP networks. Integer value of specified OID is measured. SNMP-enabled devices include many routers, switchboards, servers, workstations, printers etc.

There are following settings along with standard ones:

  • OID — SNMP object identifier. By default: 1.3.6.1.2.1.1.3 — UpTime.
  • SNMP version — SNMP version, supported by device.
  • PDU type — request type: Get (get the value of the specified OID) or GetNext (find the first OID inside the specified one and get its value).
  • Community — password for access to SNMP. Only for SNMP v1, v2.
  • Port — number of SNMP UDP port to send packet to, default is 161.
  • Authentication — encryption algorithm used for user authentication. Only for SNMP v3. By default: None — encryptions isn't required.
  • User name — user name for authentication. Only for SNMP v3.
  • Auth password — password for authentication. Only for SNMP v3.
  • Privacy — data encryption algorithm. Only for SNMP v3 with authentication. By default: None — encryption isn't required.
  • Privacy password — password for data encryption. Only for SNMP v3 with authentication and data encryption.
  • Measure — measures current numeric value, difference between current and previous values, speed of value change. Measure current value defines the current values of various sensors (e.g. sensors of speed, temperature, available space). Measure difference between current and previous values measures the values of various counters (e.g. error counter, counter of sent data). It is supposed that counter value is always increasing, so if the value has decreased then measurement result will be 0, so that the application can analyze counter reset or overflow. Speed measurement makes it possible to calculate the speed of value changes of various counters – e.g. calculate the data transfer speed using the counter of transferred data. Speed is calculated based on the difference between previous and current values, divided by the scanning interval in seconds.
  • Timeout (sec) — period of waiting for reply from a device. When timeout is expired device enters inactive state.

SNMP Trap

‘SNMP Trap’ plugin allows to receive data from devices via SNMP Trap protocol. In general, the SNMP Trap is configured as follows:

  • Add a sensor based on SNMP Trap plugin, specify which OID should be processed to get the value.
  • Assign this sensor to a device.

After that Algorius Net Viewer will open the server UDP port to receive SNMP Trap. As soon as an SNMP Trap with specified OID is received from the device, its value will be processed and stored for the device as a monitoring result.

In addition to the standard settings, the following is provided:

  • Port — port for receiving SNMP Trap, default is 22.

SSH

'SSH' plugin allows to poll devices using SSH – the operating system control protocol. The monitoring is performed by running one or several OS commands and obtaining the result from the console text. The last received console text is displayed in the tooltip when you hover on the device with the mouse.

In addition to the standard settings, the following is provided:

  • Port — port for connection via SSH, default is 22.
  • Authorization — authorization method: by password, or using a private key. For access by password, the login specified for the sensor in the device settings is used.
  • Private key file — path to the file that contains the private key for authorization via SSH.
  • Key passphrase — password to decrypt the file with the private key.
  • Commands — one or more OS commands for execution. You can use the following macros for automatic value substitution: %IP% — device IP, %HOST% — device host name, %ADDRESS% — device address, %LOGIN_USER% — user name from the login, %LOGIN_PASSWORD% — password from the login.
  • Measure — measured value — command execution time (in milliseconds) or value from console text. If you choose to get the value from the console, then the console text will be analyzed, the number will be searched, and this number will be used as a result of the device scanning.
  • Timeout (sec) — waiting time for commands completion. At the end of this time, the connection is forcibly closed and the device is displayed as inactive.

SQL

SQL plugin enables databases scanning by executing the SQL query. Following databases are supported: Oracle, MS SQL, MySQL, PostgreSQL, and also databases with SQL support for which there is an ODBC driver.

There are following settings along with standard ones:

  • Database — database type. There are various database connection settings depending on database type.
  • Port — only for Oracle, MySQL, PostgreSQL databases — network port to connect to database. If no port is defined, default port for selected database is used.
  • Database name — only for MS SQL, MySQL, PostgreSQL databases — name of a database to run SQL query.
  • Service name — only for Oracle database — service name of a database according to Oracle settings, for example: XE
  • Data source — only for MS SQL database — name of a data source for a database according to MS SQL settings.
  • Connection string — only for ODBC databases — DSN to connect to external database via ODBC See more information about ODBC in the Database section.
  • Additional connection string — additional connection string for a database. Parameters above are used to compile the basic connection string. Additional connection string (if any) complements the basic connection string. Full connection string is used to connect to a database. Please check the following website for the detailed info on the connection string settings for various database types: https://www.connectionstrings.com/
  • Query — SQL query to be executed. You can use the following macros for automatic value substitution: %IP% — device IP, %HOST% — device host name, %ADDRESS% — device address, %LOGIN_USER% — user name from the login, %LOGIN_PASSWORD% — password from the login.

All settings for ODBC connection are taken from connection string. For any other database types the address of a computer being scanned is used as a server name. Login from device settings is used as username and password. If there is no username specified, then Windows authorization is used.

Algorius Net Viewer runs SQL query in Scalar mode, i.e. it fetches the value of the first column/first row, returned by a query. This value is used as scanning result. All other columns and rows are ignored.

TCP

'TCP' plugin enables device scanning by establishing TCP connection with a device. Connection time (in milliseconds) is measured.

There are following settings along with standard ones:

  • Port — number of TCP port to establish connection with. Device can redefine this port in its address, e.g. 192.168.1.1:8080. Port in device address will be used in this case.
  • Timeout (sec) — period of waiting for connection establishment with a device. When timeout is expired device enters inactive state.

Temperature

'Temperature' plugin measures a temperature from device’s sensors. Measurement is done via WMI. Maximum temperature is measured from all sensors in Celsius or Fahrenheit.

There are following settings along with standard ones:

  • Show value in — select temperature measurement unit - Celsius or Fahrenheit.
  • Timeout — script waiting period for temperature measurement. When this period is over device is considered as inactive.

To enable WMI access, the application should be launched with sufficient rights and RPC service should be started on the remote computer. See Troubleshooting for more information.

UDP

'UDP' plugin enables device scanning by sending a package to device’s UDP port and waiting for response at the same port. Response time (in milliseconds) is measured.

There are following settings along with standard ones:

  • Message — text of package being sent. You can enter hex-message via ‘%’ sign, e.g. %0D%0A. You can use the following macros for automatic value substitution: %IP% — device IP, %HOST% — device host name, %ADDRESS% — device address, %LOGIN_USER% — user name from the login, %LOGIN_PASSWORD% — password from the login.
  • Port — number of UDP port to send packet to. Device can redefine this port in its address, e.g. 192.168.1.1:8080. Port in device address will be used in this case.
  • Local port — number of UDP port to send packet from. E.g. you can send request from port 7 to port 9 and wait for reply on port 7. If port 0 is specified as local port then operating system will assign first free port in upper range. Thus you’ll avoid conflicts with other applications if port is already assigned.
  • Timeout (sec) — period of waiting for reply from a device. When timeout is expired device enters inactive state.

This plugin uses UDP socket, listening to specified UDP port. Thus port should be free in the system and application should be launched with sufficient rights in order to enable correct work of this plugin.

URI

'URI' plugin enables device scanning using the HTTP, HTTPS, FTP, FTPS, or FILE protocol. Devices of this sensor may have any URI address as address parameter, e.g. a website URL, or a website page URI, or a website file URI; a file or a directory in a local file system, etc. For example:

  • http://www.algorius.com
  • http://www.algoriuscom/index.html
  • ftp://algorius.com/some_file.zip
  • file://computer/share/file.zip

There are following settings along with standard ones:

  • Authorization — authorization method on the specified URI. Basic and By password authorizations use the login assigned to device. Integrated Windows (Kerberos) authorization is provided by OS and is used in corporate networks with domain policy. It uses the user name, password and domain of the current user of the operating system.
  • Measure — the type of the measured value: the duration of the connection with the specified URI, the status code at the specified URI, the content length at the specified URI, or the value from the content at the specified URI.
  • Timeout (sec) — period of waiting for connection establishment with a device. When timeout is expired device enters inactive state.

WMI

'WMI' (Windows Management Instrumentation) plugin enables monitoring of different parameters: hard drives status, network interfaces status, launched processes and lots more. WMI Query Language (WQL) is used to access WMI. This language is a sort of SQL language. Maximum integer value from scanning results is measured.

A lot of other plugins are based on WMI plugin, for example:

  • 'Temperature' plugin executes the following script in 'root\\WMI' namespace: SELECT CurrentTemperature FROM MSAcpi_ThermalZoneTemperature
  • 'DriveFreeSpace' plugin executes the followingscript in 'root\\cimv2' namespace: SELECT DriveLetter, FreeSpace FROM Win32_Volume

There are following settings along with standard ones:

  • Namespace — name space to make a request.
  • Query — executable WQL query. You can use the following macros for automatic value substitution: %IP% — device IP, %HOST% — device host name, %ADDRESS% — device address, %LOGIN_USER% — user name from the login, %LOGIN_PASSWORD% — password from the login.
  • Measure — measures current numeric value, difference between current and previous values, speed of value change. Measure current value defines the current values of various sensors (e.g. sensors of speed, temperature, available space). Measure difference between current and previous values measures the values of various counters (e.g. error counter, counter of sent data). It is supposed that counter value is always increasing, so if the value has decreased then measurement result will be 0, so that the application can analyze counter reset or overflow. Speed measurement makes it possible to calculate the speed of value changes of various counters – e.g. calculate the data transfer speed using the counter of transferred data. Speed is calculated based on the difference between previous and current values, divided by the scanning interval in seconds.
  • Timeout (sec) — time period to wait for script execution completion. When timeout is expired device enters inactive state.

To simplify the configuration you can launch WMI browser to select required namespace and WQL query. See Troubleshooting for more information.

To enable WMI access, the application should be launched with sufficient rights and RPC service should be started on the remote computer.