Dashboard updates

This commit is contained in:
Mark Nellemann 2022-08-20 10:02:05 +02:00
parent 0d9dda9a5c
commit 36aadbd5cc
8 changed files with 976 additions and 627 deletions

View file

@ -2,6 +2,8 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
## [0.1.13] - 2022-06-27
## [0.1.11] - 2022-03-02 ## [0.1.11] - 2022-03-02
### Changed ### Changed
- (plugins) Removed groovy dependency from build.gradle (it increased size and was not needed). - (plugins) Removed groovy dependency from build.gradle (it increased size and was not needed).
@ -20,6 +22,7 @@ All notable changes to this project will be documented in this file.
### Changed ### Changed
- Updated 3rd party dependencies. - Updated 3rd party dependencies.
[0.1.13]: https://bitbucket.org/mnellemann/sysmon/branches/compare/v0.1.13%0Dv0.1.11
[0.1.11]: https://bitbucket.org/mnellemann/sysmon/branches/compare/v0.1.11%0Dv0.1.10 [0.1.11]: https://bitbucket.org/mnellemann/sysmon/branches/compare/v0.1.11%0Dv0.1.10
[0.1.10]: https://bitbucket.org/mnellemann/sysmon/branches/compare/v0.1.10%0Dv0.1.9 [0.1.10]: https://bitbucket.org/mnellemann/sysmon/branches/compare/v0.1.10%0Dv0.1.9
[0.1.9]: https://bitbucket.org/mnellemann/sysmon/branches/compare/v0.1.9%0Dv0.1.8 [0.1.9]: https://bitbucket.org/mnellemann/sysmon/branches/compare/v0.1.9%0Dv0.1.8

View file

@ -38,7 +38,7 @@ def projectName = "sysmon-client"
application { application {
// Define the main class for the application. // Define the main class for the application.
mainClass.set('sysmon.client.Application') mainClass.set('sysmon.client.Application')
applicationDefaultJvmArgs = [ "-server", "-Xmx64m", "-XX:+UseG1GC" ] applicationDefaultJvmArgs = [ "-server", "-Xmx64m" ]
} }
run { run {

View file

@ -4,14 +4,14 @@ Works on IBM Power VIO (Virtual IO) servers, as well as regular IBM Power AIX in
## Installation ## Installation
We require Java 8, which should already be installed on AIX, or is available to install. We require Java 8, which should already be installed on AIX, or is available to install.
The RPM packages are *"noarch"* Java bytecode, so we can use the **--ignoreos** option to install: The RPM packages are *"noarch"* Java bytecode, so we can use the **--ignoreos** option to install:
```shell ```shell
rpm -i --ignoreos sysmon-client.rpm sysmon-plugins.rpm rpm -i --ignoreos sysmon-client.rpm sysmon-plugins.rpm
``` ```
## Run automatically at boot ### Run automatically at boot
See the [sysv-init.md](sysv-init.md) file for instructions, or run from inittab: See the [sysv-init.md](sysv-init.md) file for instructions, or run from inittab:
@ -19,3 +19,17 @@ See the [sysv-init.md](sysv-init.md) file for instructions, or run from inittab:
mkitab "sysmon:2:respawn:env JAVA_HOME=/usr/java8_64 /opt/sysmon/client/bin/client -s http://10.x.y.z:9925/metrics" mkitab "sysmon:2:respawn:env JAVA_HOME=/usr/java8_64 /opt/sysmon/client/bin/client -s http://10.x.y.z:9925/metrics"
init q init q
``` ```
## Upgrades
To upgrade the packages:
```shell
rpm -Uvh --ignoreos sysmon-*.noarch.rpm
```
To restart sysmon-client process after upgrade:
```shell
kill -HUP `ps -e -o pid,comm,args | grep sysmon-client | grep java | awk '{print $1}'`
```

View file

@ -9,12 +9,13 @@
"pluginName": "InfluxDB" "pluginName": "InfluxDB"
} }
], ],
"__elements": [],
"__requires": [ "__requires": [
{ {
"type": "grafana", "type": "grafana",
"id": "grafana", "id": "grafana",
"name": "Grafana", "name": "Grafana",
"version": "8.1.4" "version": "8.4.7"
}, },
{ {
"type": "datasource", "type": "datasource",
@ -66,16 +67,16 @@
} }
] ]
}, },
"description": "Metrics from within host / guest / partition.", "description": "https://bitbucket.org/mnellemann/sysmon/ - Metrics from within host / guest / partition.",
"editable": true, "editable": true,
"gnetId": null, "fiscalYearStartMonth": 0,
"graphTooltip": 0, "graphTooltip": 0,
"id": null, "id": null,
"iteration": 1632317604857, "iteration": 1657627348578,
"links": [], "links": [],
"liveNow": false,
"panels": [ "panels": [
{ {
"datasource": null,
"gridPos": { "gridPos": {
"h": 3, "h": 3,
"w": 24, "w": 24,
@ -87,13 +88,12 @@
"content": "## Metrics are collected by an agent running inside of each LPAR / VM / Host.\n \n For more information: [bitbucket.org/mnellemann/sysmon](https://bitbucket.org/mnellemann/sysmon)\n ", "content": "## Metrics are collected by an agent running inside of each LPAR / VM / Host.\n \n For more information: [bitbucket.org/mnellemann/sysmon](https://bitbucket.org/mnellemann/sysmon)\n ",
"mode": "markdown" "mode": "markdown"
}, },
"pluginVersion": "8.1.4", "pluginVersion": "8.4.7",
"transparent": true, "transparent": true,
"type": "text" "type": "text"
}, },
{ {
"collapsed": false, "collapsed": false,
"datasource": null,
"gridPos": { "gridPos": {
"h": 1, "h": 1,
"w": 24, "w": 24,
@ -107,7 +107,10 @@
"type": "row" "type": "row"
}, },
{ {
"datasource": "${DS_INFLUXDB-SYSMON}", "datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"description": "", "description": "",
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
@ -140,10 +143,17 @@
}, },
"id": 16, "id": 16,
"options": { "options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true, "showHeader": true,
"sortBy": [] "sortBy": []
}, },
"pluginVersion": "8.1.4", "pluginVersion": "8.4.7",
"targets": [ "targets": [
{ {
"groupBy": [ "groupBy": [
@ -236,13 +246,14 @@
] ]
} }
], ],
"timeFrom": null,
"timeShift": null,
"title": "Details", "title": "Details",
"type": "table" "type": "table"
}, },
{ {
"datasource": "${DS_INFLUXDB-SYSMON}", "datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
"color": { "color": {
@ -309,9 +320,13 @@
"text": {}, "text": {},
"textMode": "auto" "textMode": "auto"
}, },
"pluginVersion": "8.1.4", "pluginVersion": "8.4.7",
"targets": [ "targets": [
{ {
"datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"groupBy": [ "groupBy": [
{ {
"params": [ "params": [
@ -321,7 +336,7 @@
}, },
{ {
"params": [ "params": [
"linear" "null"
], ],
"type": "fill" "type": "fill"
} }
@ -390,13 +405,14 @@
] ]
} }
], ],
"timeFrom": null,
"timeShift": null,
"title": "Memory Metrics", "title": "Memory Metrics",
"type": "stat" "type": "stat"
}, },
{ {
"datasource": "${DS_INFLUXDB-SYSMON}", "datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
"color": { "color": {
@ -463,9 +479,13 @@
"text": {}, "text": {},
"textMode": "auto" "textMode": "auto"
}, },
"pluginVersion": "8.1.4", "pluginVersion": "8.4.7",
"targets": [ "targets": [
{ {
"datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"groupBy": [ "groupBy": [
{ {
"params": [ "params": [
@ -475,7 +495,7 @@
}, },
{ {
"params": [ "params": [
"previous" "null"
], ],
"type": "fill" "type": "fill"
} }
@ -544,13 +564,14 @@
] ]
} }
], ],
"timeFrom": null,
"timeShift": null,
"title": "Disk Metrics", "title": "Disk Metrics",
"type": "stat" "type": "stat"
}, },
{ {
"datasource": "${DS_INFLUXDB-SYSMON}", "datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"description": "", "description": "",
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
@ -613,7 +634,8 @@
"placement": "bottom" "placement": "bottom"
}, },
"tooltip": { "tooltip": {
"mode": "multi" "mode": "multi",
"sort": "none"
} }
}, },
"pluginVersion": "8.0.6", "pluginVersion": "8.0.6",
@ -718,7 +740,10 @@
"type": "timeseries" "type": "timeseries"
}, },
{ {
"datasource": "${DS_INFLUXDB-SYSMON}", "datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"description": "", "description": "",
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
@ -788,7 +813,8 @@
"placement": "bottom" "placement": "bottom"
}, },
"tooltip": { "tooltip": {
"mode": "multi" "mode": "multi",
"sort": "none"
} }
}, },
"pluginVersion": "8.0.6", "pluginVersion": "8.0.6",
@ -886,18 +912,18 @@
} }
], ],
"refresh": "1m", "refresh": "1m",
"schemaVersion": 30, "schemaVersion": 35,
"style": "dark", "style": "dark",
"tags": [], "tags": [],
"templating": { "templating": {
"list": [ "list": [
{ {
"allValue": null,
"current": {}, "current": {},
"datasource": "${DS_INFLUXDB-SYSMON}", "datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"definition": "SHOW TAG VALUES FROM \"base_memory\" WITH KEY = \"hostname\" WHERE time > now() - 60m", "definition": "SHOW TAG VALUES FROM \"base_memory\" WITH KEY = \"hostname\" WHERE time > now() - 60m",
"description": null,
"error": null,
"hide": 0, "hide": 0,
"includeAll": false, "includeAll": false,
"label": "Host", "label": "Host",
@ -915,12 +941,12 @@
"useTags": false "useTags": false
}, },
{ {
"allValue": null,
"current": {}, "current": {},
"datasource": "${DS_INFLUXDB-SYSMON}", "datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"definition": "SHOW TAG VALUES FROM \"base_process\" WITH KEY = \"name\" WHERE hostname =~ /$hostname/AND time > now() - 60m", "definition": "SHOW TAG VALUES FROM \"base_process\" WITH KEY = \"name\" WHERE hostname =~ /$hostname/AND time > now() - 60m",
"description": null,
"error": null,
"hide": 0, "hide": 0,
"includeAll": false, "includeAll": false,
"label": "Process", "label": "Process",
@ -935,12 +961,12 @@
"type": "query" "type": "query"
}, },
{ {
"allValue": null,
"current": {}, "current": {},
"datasource": "${DS_INFLUXDB-SYSMON}", "datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"definition": "SELECT DISTINCT(\"pid\") FROM (SELECT * FROM \"base_process\" WHERE time > now() - 60m AND \"hostname\" =~ /$hostname/ AND \"name\" =~ /$process/)", "definition": "SELECT DISTINCT(\"pid\") FROM (SELECT * FROM \"base_process\" WHERE time > now() - 60m AND \"hostname\" =~ /$hostname/ AND \"name\" =~ /$process/)",
"description": null,
"error": null,
"hide": 0, "hide": 0,
"includeAll": true, "includeAll": true,
"label": "PID", "label": "PID",
@ -974,7 +1000,8 @@
] ]
}, },
"timezone": "", "timezone": "",
"title": "Sysmon - Process Explorer", "title": "Sysmon Agent - Process Explorer",
"uid": "Vjut5mS7k", "uid": "Vjut5mS7k",
"version": 18 "version": 4,
"weekStart": ""
} }

View file

@ -1,4 +1,4 @@
version = 0.1.14 version = 0.1.15
pf4jVersion = 3.7.0 pf4jVersion = 3.7.0
slf4jVersion = 1.7.36 slf4jVersion = 1.7.36
camelVersion = 3.14.4 camelVersion = 3.14.4

View file

@ -78,6 +78,20 @@ public class TestExtension implements MetricExtension {
return null; return null;
} }
/* const hSql = "select
SERVER_NAME,
HTTP_FUNCTION,
SERVER_NORMAL_CONNECTIONS,
SERVER_ACTIVE_THREADS,
SERVER_IDLE_THREADS,
BYTES_RECEIVED,
BYTES_SENT,
NONCACHE_PROCESSING_TIME,
CACHE_PROCESSING_TIME
from
QSYS2.HTTP_SERVER_INFO";
*/
try { try {
int jobsInSystem = systemStatus.getJobsInSystem(); int jobsInSystem = systemStatus.getJobsInSystem();
log.info("Jobs In System: {}", jobsInSystem); log.info("Jobs In System: {}", jobsInSystem);
@ -94,6 +108,15 @@ public class TestExtension implements MetricExtension {
int onlineUsers = systemStatus.getUsersCurrentSignedOn(); int onlineUsers = systemStatus.getUsersCurrentSignedOn();
log.info("Online Users: {}", onlineUsers); log.info("Online Users: {}", onlineUsers);
// The storage capacity of the system auxiliary storage pool (ASP1) in MBytes.
long systemAsp = systemStatus.getSystemASP();
System.out.println("Current Processing Capacity :" + systemStatus.getCurrentProcessingCapacity());
System.out.println("ASPUsed:" + systemStatus.getPercentSystemASPUsed());
System.out.println("Temp Addresses Used:" + systemStatus.getPercentTemporaryAddresses());
HashMap<String, Object> fieldsMap = new HashMap<String, Object>() {{ HashMap<String, Object> fieldsMap = new HashMap<String, Object>() {{
put("jobs_total", jobsInSystem); put("jobs_total", jobsInSystem);
put("jobs_running", batchJobsRunning); put("jobs_running", batchJobsRunning);

View file

@ -28,7 +28,7 @@ def projectName = "sysmon-server"
application { application {
// Define the main class for the application. // Define the main class for the application.
mainClass.set('sysmon.server.Application') mainClass.set('sysmon.server.Application')
applicationDefaultJvmArgs = [ "-server", "-Xmx128m", "-XX:+UseG1GC" ] applicationDefaultJvmArgs = [ "-server", "-Xmx128m" ]
} }
run { run {