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

@ -11,7 +11,7 @@ The RPM packages are *"noarch"* Java bytecode, so we can use the **--ignoreos**
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 {