Open source, cross-platform, client/server based systems monitoring solution. Reads the usual metrics such as cpu, disk i/o and network, but also allows for plugins and scripts to extend the functionality. Metrics for shared processor utilization on IBM Power is also measured. The clients need only Java and sends metrics to the server (through HTTP), which stores these in InfluxDB for display through Grafana. https://github.com/mnellemann/sysmon
Go to file
Mark Nellemann fd546f9f52 Merged in development (pull request #10)
Development
2021-09-13 15:16:16 +00:00
client Cleanup and option for debug logging. 2021-09-13 17:13:58 +02:00
doc Support for configuring extensions. 2021-09-10 12:15:33 +02:00
gradle/wrapper Refactored package names. 2021-05-21 11:08:43 +02:00
plugins Cleanup and option for debug logging. 2021-09-13 17:13:58 +02:00
server Cleanup and option for debug logging. 2021-09-13 17:13:58 +02:00
shared Cleanup and option for debug logging. 2021-09-13 17:13:58 +02:00
.gitattributes Initial commit, work in progress 2021-04-25 15:25:20 +02:00
.gitignore Refactoring of component names. 2021-05-07 12:39:55 +02:00
README.md Update documentation and example dashboards. 2021-09-07 13:24:38 +02:00
bitbucket-pipelines.yml Cleanup and initial test of build pipeline. 2021-05-21 17:00:47 +02:00
build.gradle Support for configuring extensions. 2021-09-10 12:15:33 +02:00
gradle.properties Improvements to network and disk, plus some cleanup and refactoring. 2021-09-11 21:55:48 +02:00
gradlew Initial commit, work in progress 2021-04-25 15:25:20 +02:00
gradlew.bat Initial commit, work in progress 2021-04-25 15:25:20 +02:00
settings.gradle Refactoring of component names. 2021-05-07 12:39:55 +02:00

README.md

System Monitor

Java based system monitoring solution with support for plugins.

  • Example dashboards are provided in the doc/ folder, which can be imported into your Grafana installation.
  • Screenshots are available in the downloads section.

Components

Client

Runs on your hosts and collects metrics, which are sent to the central server.

More information.

Server

Receives aggregated metrics from clients and saves these into InfluxDB.

More information.

Plugins

Loaded by the client and provides extensions for doing the actual collecting of metrics.

More information.

Known problems

Correct timezone and clock

  • Ensure you have correct timezone and date/time and NTPd (or similar) running to keep it accurate!

Naming collision

You can't have hosts with the same name, as these cannot be distinguished when metrics are written to InfluxDB (which uses the hostname as key).

Renaming hosts

If you rename a host, the metrics in InfluxDB will still be available by the old hostname, and new metrics will be written with the new hostname. There is no easy way to migrate the old data, but you can delete it easily:

USE sysmon;
DELETE WHERE hostname = 'unknown';