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.
## [0.1.13] - 2022-06-27
## [0.1.11] - 2022-03-02
### Changed
- (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
- 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.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

View file

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

View file

@ -4,14 +4,14 @@ Works on IBM Power VIO (Virtual IO) servers, as well as regular IBM Power AIX in
## 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:
```shell
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:
@ -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"
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"
}
],
"__elements": [],
"__requires": [
{
"type": "grafana",
"id": "grafana",
"name": "Grafana",
"version": "8.1.4"
"version": "8.4.7"
},
{
"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,
"gnetId": null,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": null,
"iteration": 1632317604857,
"iteration": 1657627348578,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": null,
"gridPos": {
"h": 3,
"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 ",
"mode": "markdown"
},
"pluginVersion": "8.1.4",
"pluginVersion": "8.4.7",
"transparent": true,
"type": "text"
},
{
"collapsed": false,
"datasource": null,
"gridPos": {
"h": 1,
"w": 24,
@ -107,7 +107,10 @@
"type": "row"
},
{
"datasource": "${DS_INFLUXDB-SYSMON}",
"datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"description": "",
"fieldConfig": {
"defaults": {
@ -140,10 +143,17 @@
},
"id": 16,
"options": {
"footer": {
"fields": "",
"reducer": [
"sum"
],
"show": false
},
"showHeader": true,
"sortBy": []
},
"pluginVersion": "8.1.4",
"pluginVersion": "8.4.7",
"targets": [
{
"groupBy": [
@ -236,13 +246,14 @@
]
}
],
"timeFrom": null,
"timeShift": null,
"title": "Details",
"type": "table"
},
{
"datasource": "${DS_INFLUXDB-SYSMON}",
"datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"fieldConfig": {
"defaults": {
"color": {
@ -309,9 +320,13 @@
"text": {},
"textMode": "auto"
},
"pluginVersion": "8.1.4",
"pluginVersion": "8.4.7",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"groupBy": [
{
"params": [
@ -321,7 +336,7 @@
},
{
"params": [
"linear"
"null"
],
"type": "fill"
}
@ -390,13 +405,14 @@
]
}
],
"timeFrom": null,
"timeShift": null,
"title": "Memory Metrics",
"type": "stat"
},
{
"datasource": "${DS_INFLUXDB-SYSMON}",
"datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"fieldConfig": {
"defaults": {
"color": {
@ -463,9 +479,13 @@
"text": {},
"textMode": "auto"
},
"pluginVersion": "8.1.4",
"pluginVersion": "8.4.7",
"targets": [
{
"datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"groupBy": [
{
"params": [
@ -475,7 +495,7 @@
},
{
"params": [
"previous"
"null"
],
"type": "fill"
}
@ -544,13 +564,14 @@
]
}
],
"timeFrom": null,
"timeShift": null,
"title": "Disk Metrics",
"type": "stat"
},
{
"datasource": "${DS_INFLUXDB-SYSMON}",
"datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"description": "",
"fieldConfig": {
"defaults": {
@ -613,7 +634,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "multi"
"mode": "multi",
"sort": "none"
}
},
"pluginVersion": "8.0.6",
@ -718,7 +740,10 @@
"type": "timeseries"
},
{
"datasource": "${DS_INFLUXDB-SYSMON}",
"datasource": {
"type": "influxdb",
"uid": "${DS_INFLUXDB-SYSMON}"
},
"description": "",
"fieldConfig": {
"defaults": {
@ -788,7 +813,8 @@
"placement": "bottom"
},
"tooltip": {
"mode": "multi"
"mode": "multi",
"sort": "none"
}
},
"pluginVersion": "8.0.6",
@ -886,18 +912,18 @@
}
],
"refresh": "1m",
"schemaVersion": 30,
"schemaVersion": 35,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"allValue": null,
"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",
"description": null,
"error": null,
"hide": 0,
"includeAll": false,
"label": "Host",
@ -915,12 +941,12 @@
"useTags": false
},
{
"allValue": null,
"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",
"description": null,
"error": null,
"hide": 0,
"includeAll": false,
"label": "Process",
@ -935,12 +961,12 @@
"type": "query"
},
{
"allValue": null,
"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/)",
"description": null,
"error": null,
"hide": 0,
"includeAll": true,
"label": "PID",
@ -974,7 +1000,8 @@
]
},
"timezone": "",
"title": "Sysmon - Process Explorer",
"title": "Sysmon Agent - Process Explorer",
"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
slf4jVersion = 1.7.36
camelVersion = 3.14.4

View file

@ -78,6 +78,20 @@ public class TestExtension implements MetricExtension {
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 {
int jobsInSystem = systemStatus.getJobsInSystem();
log.info("Jobs In System: {}", jobsInSystem);
@ -94,6 +108,15 @@ public class TestExtension implements MetricExtension {
int onlineUsers = systemStatus.getUsersCurrentSignedOn();
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>() {{
put("jobs_total", jobsInSystem);
put("jobs_running", batchJobsRunning);

View file

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