System

From HSYCO
Revision as of 16:49, 1 October 2020 by Ulde (talk | contribs) (→‎Datapoints)
Jump to navigation Jump to search

The HSYCO System Monitor I/O Server is used to monitor several key hardware and operating system parameters of an HSYCO server:

  • Operating system boot time
  • HSYCO start time
  • Disk space
  • Java memory (used, free and maximum available memory)
  • Java total number of file descriptors currently open and number of threads used
  • Performance (CPU percent busy time, 1 minute load average, 5 minutes load average)
  • Console error messages
  • Internet connection status
  • Cameras status
  • I/O Servers status
  • Database update, backup and de-fragmentation times
  • Clock drift of remote HSYCO servers monitored through the HSYCOREMOTE I/O server.

It also supports the hardware watchdog if available and supported by the Linux operating system.


HSYCO Configuration

You can have only one HSYCO System Monitor I/O Server.

Add a SYSTEM I/O Server in the I/O Servers section of the Settings and set its parameters.

Note that the SYSTEM I/O Server doesn't count in the I/O servers license total, so you don't need an extra I/O Server license to use SYSTEM with HSYCO.


High Availability

  • Shutdown when inactive: defaults to false.

Options

ID Default Values Description
gui true true enable support for the UI object, UISET actions and USER commands
false disable UI support
internetmonitor true true enable internet connection check
false disable internet connection check
pollinterval 30 n ≥ 10 the data acquisition interval, in seconds
watchdog false true enable the Linux hardware watchdog
false disable the Linux hardware watchdog

Datapoints

ID Value R/W Description
time <val> R the system’s timestamp, in milliseconds
W sets the system’s timestamp. Valid formats are: time in milliseconds, "yyyy-mm-dd hh:mm:ss" and "yyyymmddhhmmss"
start.elapsed <val> R number of seconds since HSYCO start-up time
start.time <date> R HSYCO start-up time, formatted as "YYYY-MM- DD hh:mm:ss", for example: "2012-09-29 22:36:43"
boot.elapsed <val> R number of seconds since operating system boot time
boot.time <date> R operating system boot time, formatted as "YYYY-MM-DD hh:mm:ss", for example: "2012-09-29 22:36:43"
cpu.model <val> R CPU model name (may not be available on some hardware platforms)
cpu.revision <val> R CPU revision (may not be available on some hardware platforms)
cpu.usage <val> R CPU percent busy time
load.avg.1 <val> R the system’s load average during the last 60 seconds
load.avg.5 <val> R the system’s load average during the last 5 minutes
load.avg.15 <val> R the system’s load average during the last 15 minutes
process.files <val> R total number of file descriptors currently opened by the JVM process
process.threads <val> R total number of threads used by the JVM process
database.backup.elapsed <val> R number of seconds since last database backup
database.backup.time <val> R amount of time, in seconds, to execute the last database backup
database.backup.consolidation.elapsed <val> R number of seconds since last database backup consolidation
database.backup.consolidation.status <val> R
<val> R
database.backup.consolidation.time <val> R amount of time, in seconds, to execute the last database backup consolidation
database.defrag.elapsed <val> R number of seconds since last database de-fragmentation
database.defrag.time <val> R amount of time, in seconds, to execute the last database de-fragmentation
database.update.elapsed <val> R number of seconds since last database persistent update (data saved to the data/hsyco.data file)
disk.free.percent <val> R the free storage space as a percentage of total available space
disk.free <val> R the free storage space in Mbytes
disk.used <val> R the used storage space in Mbytes
disk.errors <val> R only available when the root filesystem is BTRFS, this is the sum of all error counters as returned by the "btrfs devices stats /" command
hsyco.version <val> R HSYCO version, for example: "3.7.0 Build 0130"
java.version <val> R Java VM version, for example: "Oracle Corporation 1.8.0_112"
os.version <val> R Operating system version, for example: "Linux 4.14.34-v7+ arm"
memory.free <val> R the amount of free run-time memory of the Java virtual machine, in Mbyte
memory.max <val> R the maximum amount of run-time memory that could be used by the Java virtual machine, in Mbyte
memory.used <val> R the amount of run-time memory used by the Java virtual machine, in Mbyte
camera.total <val> R the total number of cameras defined
camera.errors <val> R the number of cameras that HSYCO is unable to access
camera.errors.list <list> R a comma separated list of the cameras having errors, or an empty string if there are no errors
io.total <val> R the total number of I/O servers defined
io.errors <val> R the number of I/O servers that HSYCO is unable to access
io.errors.list <list> R a comma separated list of the I/O servers having errors, or an empty string if there are no errors
internet.connection online R Internet access from HSYCO is working properly
offline HSYCO is unable to access the Internet
console.errors 0 R the console.log file contains no new errors
1 the console.log file contains new errors
watchdog active R watchdog is enabled and active
error watchdog is enabled but failed to update the watchdog device (/dev/watchdog)

User Interface

Hsycomonitor Object

A panel that monitors the system. These parameters are displayed:

  • system boot time
  • HSYCO start time
  • disk free space
  • memory in MBs: used, free, max
  • CPU usage in %: busy, load 1m, load 5m
  • faults: console, internet, cameras, I/O servers
  • error messages

UI Object hsycomonitor.png

Parameters

  • server ID: the ID of the server as specified in hsyco.ini
  • label: the text label on the panel. Can contain HTML tags
  • position: the object's position. Use the pixels or rows and columns coordinates format

Syntax

(hsycomonitor <server ID>; <label>; <position>)

E.g.

(hsycomonitor system; System; x10y20)

UISET Actions

ID Attribute Set to
boot.time value operating system boot time
start.time value HSYCO start-up time
cpu.usage value CPU percent busy time
load.avg.1 value the system’s load average during the last 60 seconds
load.avg.5 value the system’s load average during the last 5 minutes
disk.free.percent value the free storage space as a percentage of total available space
blink true when the free storage space is below 10%
false when the free storage space is equal or above 10%
disk.errors value only available when the root filesystem is BTRFS, this is the sum of all error counters as returned by the "btrfs devices stats /" command
visible true the root filesystem is BTRFS
false the root filesystem is not BTRFS
memory.free value the amount of free run-time memory of the Java virtual machine, in Mbyte
memory.max value the maximum amount of run-time memory that could be used by the Java virtual machine, in Mbyte
memory.used value the amount of run-time memory used by the Java virtual machine, in Mbyte
camera.errors value ERROR when HSYCO cannot access one or more cameras
blink true
value OK when all cameras are connected
blink false
io.errors value ERROR when HSYCO cannot access one or more I/O servers
blink true
value OK when all I/O servers are connected
blink false
internet.connection value ERROR when HSYCO is unable to access the Internet
blink true
value OK when Internet access from HSYCO is working properly
blink false
console.errors value ERROR when the console.log file contains new error messages
blink true
value OK when the console.log file contains no new errors
blink false
messages value the list of cameras and I/O servers with errors

Release Notes

3.7.0

  • new data points:
    • cpu.model
    • cpu.revision
    • database.backup.time
    • database.backup.elapsed
    • database.backup.consolidation.time
    • database.backup.consolidation.elapsed
    • database.backup.consolidation.status
    • database.defrag.time
    • database.defrag.elapsed
    • database.update.elapsed
    • hsyco.version
    • java.version
    • os.version

3.6.0

  • new "process.files" data point returns the total number of file descriptors currently opened by the JVM process
  • new "process.threads" data point returns the total number of threads used by the JVM process
  • new "watchdog" option: when true, enables the hardware watchdog on Linux servers
  • the "time" data point can now be written to set the system's clock

3.5.1

  • support for BTRFS root file system errors monitor

3.5.0

  • new "internetmonitor" option. Set to "false" to disable Internet connection check

3.2.1

  • the (hsycomonitor) object displayed an error on cameras if there were no cameras defined

3.2.0

  • initial release