Compare commits

...

1 Commits
c8 ... c10

Author SHA1 Message Date
3cd6b55e3f import OL grafana-pcp-5.2.2-3.el10_0 2025-07-04 08:27:23 +00:00
7 changed files with 217 additions and 292 deletions

6
.gitignore vendored
View File

@ -1,3 +1,3 @@
SOURCES/grafana-pcp-5.1.1.tar.gz
SOURCES/grafana-pcp-vendor-5.1.1-8.tar.xz
SOURCES/grafana-pcp-webpack-5.1.1-8.tar.gz
SOURCES/grafana-pcp-5.2.2.tar.gz
SOURCES/grafana-pcp-vendor-5.2.2-2.tar.xz
SOURCES/grafana-pcp-webpack-5.2.2-2.tar.gz

View File

@ -1,3 +1,3 @@
3b2c6875861e93eade0ab4321a49dfd6c692ca7a SOURCES/grafana-pcp-5.1.1.tar.gz
0da8deb75d3eefa38949925375c8097671174586 SOURCES/grafana-pcp-vendor-5.1.1-8.tar.xz
f09017e8136fae1182ec8df6c76d2bac92733869 SOURCES/grafana-pcp-webpack-5.1.1-8.tar.gz
56170911f29a83a47b4f404f473dc7884c8310b5 SOURCES/grafana-pcp-5.2.2.tar.gz
8e94b68de6694410fe13dc58b291a9f184df2cbd SOURCES/grafana-pcp-vendor-5.2.2-2.tar.xz
f2529081227b5542900213fd47a2f75bbfb89f09 SOURCES/grafana-pcp-webpack-5.2.2-2.tar.gz

View File

@ -1,4 +1,4 @@
From 7ed5650dc812fcbfcda7162845c4e6ea73a239a6 Mon Sep 17 00:00:00 2001
From e8db8e1d940d41ae46d9db41e4bd4d304b39b589 Mon Sep 17 00:00:00 2001
From: Andreas Gerstmayr <agerstmayr@redhat.com>
Date: Thu, 7 Jul 2022 15:38:28 +0200
Subject: [PATCH] remove unused frontend crypto
@ -7,25 +7,25 @@ update `package.json` and then run `yarn install` to update the
`yarn.lock` lockfile
diff --git a/package.json b/package.json
index 14c2960..db6858a 100644
index deb0f84..6515d9c 100644
--- a/package.json
+++ b/package.json
@@ -63,6 +63,10 @@
"redux-persist": "^6.0.0",
"redux-thunk": "^2.3.0"
},
+ "resolutions": {
@@ -89,7 +89,9 @@
"path-to-regexp": "^1.9.0",
"uplot": "^1.6.31",
"@sentry/browser": "^7.119.1",
- "http-proxy-middleware": "^2.0.7"
+ "http-proxy-middleware": "^2.0.7",
+ "crypto-browserify": "https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.1.1.tgz",
+ "http-signature": "https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.1.1.tgz"
+ },
},
"engines": {
"node": ">=14"
}
diff --git a/yarn.lock b/yarn.lock
index 44bcec7..c2a86be 100644
index 757627a..3fc50ac 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -4067,18 +4067,6 @@ array.prototype.flatmap@^1.2.5:
@@ -4156,18 +4156,6 @@ array.prototype.flatmap@^1.2.5:
es-abstract "^1.19.2"
es-shim-unscopables "^1.0.0"
@ -44,7 +44,7 @@ index 44bcec7..c2a86be 100644
astral-regex@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31"
@@ -4321,13 +4309,6 @@ base64-js@^1.3.1:
@@ -4412,13 +4400,6 @@ base64-js@^1.3.1:
resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
@ -58,7 +58,7 @@ index 44bcec7..c2a86be 100644
big.js@^5.2.2:
version "5.2.2"
resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
@@ -4839,11 +4820,6 @@ core-js@^3.6.5:
@@ -4956,11 +4937,6 @@ core-js@^3.6.5:
resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.26.0.tgz#a516db0ed0811be10eac5d94f3b8463d03faccfe"
integrity sha512-+DkDrhoR4Y0PxDz6rurahuB+I45OsEUv8E1maPTB6OuHRohMMcznBq9TMpdpDMm/hUPob/mJJS3PqgbHpMTQgw==
@ -70,18 +70,18 @@ index 44bcec7..c2a86be 100644
cosmiconfig@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982"
@@ -4890,6 +4866,10 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3:
@@ -5007,6 +4983,10 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3, cross-spawn@^7.0.5:
shebang-command "^2.0.0"
which "^2.0.1"
+"crypto-browserify@https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.1.1.tgz", "http-signature@https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.1.1.tgz", http-signature@~1.3.6:
+"crypto-browserify@https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.1.1.tgz", "http-signature@https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.1.1.tgz", http-signature@~1.4.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@favware/skip-dependency/-/skip-dependency-1.1.1.tgz#f8cae15d883ffc0abc663b5eaaa711fcc64bb5c2"
+
css-animation@^1.3.2:
version "1.6.1"
resolved "https://registry.yarnpkg.com/css-animation/-/css-animation-1.6.1.tgz#162064a3b0d51f958b7ff37b3d6d4de18e17039e"
@@ -5469,13 +5449,6 @@ d3@5.15.0:
@@ -5581,13 +5561,6 @@ d3@5.15.0:
d3-voronoi "1"
d3-zoom "1"
@ -95,7 +95,7 @@ index 44bcec7..c2a86be 100644
data-urls@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b"
@@ -5722,14 +5695,6 @@ duplexer@^0.1.2:
@@ -5850,14 +5823,6 @@ duplexer@^0.1.2:
resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6"
integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
@ -110,7 +110,7 @@ index 44bcec7..c2a86be 100644
electron-to-chromium@^1.4.172:
version "1.4.264"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.264.tgz#2f68a062c38b7a04bf57f3e6954b868672fbdcd3"
@@ -6336,16 +6301,6 @@ extract-zip@2.0.1:
@@ -6494,16 +6459,6 @@ extract-zip@2.0.1:
optionalDependencies:
"@types/yauzl" "^2.9.1"
@ -127,7 +127,7 @@ index 44bcec7..c2a86be 100644
fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
version "3.1.3"
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
@@ -6746,13 +6701,6 @@ getos@^3.2.1:
@@ -6915,13 +6870,6 @@ getos@^3.2.1:
dependencies:
async "^3.2.0"
@ -141,23 +141,23 @@ index 44bcec7..c2a86be 100644
glob-parent@^5.1.2, glob-parent@~5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
@@ -7011,15 +6959,6 @@ http-proxy@^1.18.1:
@@ -7211,15 +7159,6 @@ http-proxy@^1.18.1:
follow-redirects "^1.0.0"
requires-port "^1.0.0"
-http-signature@~1.3.6:
- version "1.3.6"
- resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.6.tgz#cb6fbfdf86d1c974f343be94e87f7fc128662cf9"
- integrity sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==
-http-signature@~1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.4.0.tgz#dee5a9ba2bf49416abc544abd6d967f6a94c8c3f"
- integrity sha512-G5akfn7eKbpDN+8nPS/cb57YeA1jLTVxjpCj7tmm3QKPdyDy7T+qSC40e9ptydSWvkwjSXw1VbkpyEm39ukeAg==
- dependencies:
- assert-plus "^1.0.0"
- jsprim "^2.0.2"
- sshpk "^1.14.1"
- sshpk "^1.18.0"
-
https-proxy-agent@^5.0.0:
version "5.0.1"
resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6"
@@ -7990,11 +7929,6 @@ js-yaml@^4.1.0:
@@ -8195,11 +8134,6 @@ js-yaml@^4.1.0:
dependencies:
argparse "^2.0.1"
@ -169,7 +169,7 @@ index 44bcec7..c2a86be 100644
jsdoc-type-pratt-parser@~2.2.5:
version "2.2.5"
resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.5.tgz#c9f93afac7ee4b5ed4432fe3f09f7d36b05ed0ff"
@@ -8058,11 +7992,6 @@ json-schema-traverse@^1.0.0:
@@ -8268,11 +8202,6 @@ json-schema-traverse@^1.0.0:
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2"
integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==
@ -181,7 +181,7 @@ index 44bcec7..c2a86be 100644
json-stable-stringify-without-jsonify@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
@@ -8092,16 +8021,6 @@ jsonfile@^6.0.1:
@@ -8302,16 +8231,6 @@ jsonfile@^6.0.1:
optionalDependencies:
graceful-fs "^4.1.6"
@ -198,7 +198,7 @@ index 44bcec7..c2a86be 100644
"jsx-ast-utils@^2.4.1 || ^3.0.0":
version "3.3.1"
resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.1.tgz#a3e0f1cb7e230954eab4dcbce9f6288a78f8ba44"
@@ -10611,7 +10530,7 @@ safe-buffer@~5.1.1:
@@ -10831,7 +10750,7 @@ safe-buffer@~5.1.1:
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
@ -207,14 +207,14 @@ index 44bcec7..c2a86be 100644
version "2.1.2"
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
@@ -10989,21 +10908,6 @@ sprintf-js@~1.0.2:
@@ -11233,21 +11152,6 @@ sprintf-js@~1.0.2:
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
-sshpk@^1.14.1:
- version "1.17.0"
- resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5"
- integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==
-sshpk@^1.18.0:
- version "1.18.0"
- resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.18.0.tgz#1663e55cddf4d688b86a46b77f0d5fe363aba028"
- integrity sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==
- dependencies:
- asn1 "~0.2.3"
- assert-plus "^1.0.0"
@ -229,7 +229,7 @@ index 44bcec7..c2a86be 100644
stable@^0.1.8:
version "0.1.8"
resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf"
@@ -11459,11 +11363,6 @@ tunnel-agent@^0.6.0:
@@ -11717,11 +11621,6 @@ tunnel-agent@^0.6.0:
dependencies:
safe-buffer "^5.0.1"
@ -241,7 +241,7 @@ index 44bcec7..c2a86be 100644
type-check@^0.4.0, type-check@~0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
@@ -11649,15 +11548,6 @@ value-equal@^1.0.1:
@@ -11923,15 +11822,6 @@ value-equal@^1.0.1:
resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c"
integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==

View File

@ -1,197 +0,0 @@
From e27f6d2954201734d30713a870d279de87fadd2d Mon Sep 17 00:00:00 2001
From: Sam Feifer <sfeifer@redhat.com>
Date: Tue, 2 Jul 2024 12:01:39 -0400
Subject: [PATCH] uwsgi dashboard patch
---
.../pcp-vector-uwsgi-overview.jsonnet | 160 ++++++++++++++++++
src/datasources/vector/plugin.json | 5 +
2 files changed, 165 insertions(+)
create mode 100644 src/datasources/vector/dashboards/pcp-vector-uwsgi-overview.jsonnet
diff --git a/src/datasources/vector/dashboards/pcp-vector-uwsgi-overview.jsonnet b/src/datasources/vector/dashboards/pcp-vector-uwsgi-overview.jsonnet
new file mode 100644
index 0000000..2c9d2a4
--- /dev/null
+++ b/src/datasources/vector/dashboards/pcp-vector-uwsgi-overview.jsonnet
@@ -0,0 +1,160 @@
+local grafana = import 'grafonnet/grafana.libsonnet';
+
+grafana.dashboard.new(
+ 'PCP Vector: UWSGI Overview',
+ tags=['pcp-vector', 'uwsgi'],
+ time_from='now-5m',
+ time_to='now',
+ refresh='5s',
+)
+.addTemplate(
+ grafana.template.datasource(
+ 'datasource',
+ 'performancecopilot-vector-datasource',
+ 'PCP Vector',
+ )
+)
+.addPanel(
+ grafana.graphPanel.new(
+ 'Total Worker Count',
+ datasource='$datasource',
+ decimals=0,
+ min=0
+ )
+ .addTargets([
+ { expr: 'uwsgi.summary.total_workers', format: 'time_series', legendFormat: '$metric' },
+ ]), gridPos={
+ x: 0,
+ y: 0,
+ w: 12,
+ h: 8,
+ }
+)
+.addPanel(
+ grafana.graphPanel.new(
+ 'Pause Worker Count',
+ datasource='$datasource',
+ decimals=0,
+ min=0,
+ )
+ .addTargets([
+ { expr: 'uwsgi.summary.total_pause_worker_count', format: 'time_series', legendFormat: '$metric' },
+ ]), gridPos={
+ x: 12,
+ y: 0,
+ w: 12,
+ h: 8,
+ }
+)
+.addPanel(
+ grafana.graphPanel.new(
+ 'Idle Worker Count',
+ datasource='$datasource',
+ decimals=0,
+ min=0,
+ )
+ .addTargets([
+ { expr: 'uwsgi.summary.total_idle_worker_count', format: 'time_series', legendFormat: '$metric' },
+ ]), gridPos={
+ x: 0,
+ y: 8,
+ w: 12,
+ h: 8,
+ }
+)
+.addPanel(
+ grafana.graphPanel.new(
+ 'Busy Worker Count',
+ datasource='$datasource',
+ decimals=0,
+ min=0,
+ )
+ .addTargets([
+ { expr: 'uwsgi.summary.total_busy_worker_count', format: 'time_series', legendFormat: '$metric' },
+ ]), gridPos={
+ x: 12,
+ y: 8,
+ w: 12,
+ h: 8,
+ }
+)
+.addPanel(
+ grafana.graphPanel.new(
+ 'Harakiri Count',
+ datasource='$datasource',
+ decimals=0,
+ min=0,
+ )
+ .addTargets([
+ { expr: 'uwsgi.summary.total_harakiri_count', format: 'time_series', legendFormat: '$metric' },
+ ]), gridPos={
+ x: 0,
+ y: 16,
+ w: 12,
+ h: 8,
+ }
+)
+.addPanel(
+ grafana.graphPanel.new(
+ 'Total Exceptions',
+ datasource='$datasource',
+ decimals=0,
+ min=0,
+ )
+ .addTargets([
+ { expr: 'uwsgi.summary.total_exceptions', format: 'time_series', legendFormat: '$metric' },
+ ]), gridPos={
+ x: 12,
+ y: 16,
+ w: 12,
+ h: 8,
+ }
+)
+.addPanel(
+ grafana.graphPanel.new(
+ 'Total Workers Acceptions Requests',
+ datasource='$datasource',
+ decimals=0,
+ min=0,
+ )
+ .addTargets([
+ { expr: 'uwsgi.summary.total_workers_accepting_requests', format: 'time_series', legendFormat: '$metric' },
+ ]), gridPos={
+ x: 0,
+ y: 24,
+ w: 12,
+ h: 8,
+ }
+)
+.addPanel(
+ grafana.graphPanel.new(
+ 'Total Requests Served',
+ datasource='$datasource',
+ decimals=0,
+ min=0,
+ )
+ .addTargets([
+ { expr: 'uwsgi.summary.total_requests_served', format: 'time_series', legendFormat: '$metric' },
+ ]), gridPos={
+ x: 12,
+ y: 24,
+ w: 12,
+ h: 8,
+ }
+)
+.addPanel(
+ grafana.graphPanel.new(
+ 'Average Response Time (msec)',
+ datasource='$datasource',
+ decimals=0,
+ min=0,
+ )
+ .addTargets([
+ { expr: 'uwsgi.summary.avg_response_time_msec', format: 'time_series', legendFormat: '$metric' },
+ ]), gridPos={
+ x: 0,
+ y: 32,
+ w: 12,
+ h: 8,
+ }
+)
\ No newline at end of file
diff --git a/src/datasources/vector/plugin.json b/src/datasources/vector/plugin.json
index a28e3f4..277c8c9 100644
--- a/src/datasources/vector/plugin.json
+++ b/src/datasources/vector/plugin.json
@@ -45,6 +45,11 @@
"type": "dashboard",
"name": "PCP Vector: Microsoft SQL Server",
"path": "dashboards/pcp-vector-mssql-server.json"
+ },
+ {
+ "type": "dashboard",
+ "name": "PCP Vector: UWSGI Overview",
+ "path": "dashboards/pcp-vector-uwsgi-overview.json"
}
]
}
--
2.45.2

View File

@ -0,0 +1,49 @@
diff --git a/src/datasources/vector/dashboards/pcp-vector-top-consumers.jsonnet b/src/datasources/vector/dashboards/pcp-vector-top-consumers.jsonnet
index cef1a0e..c9f9f5d 100644
--- a/src/datasources/vector/dashboards/pcp-vector-top-consumers.jsonnet
+++ b/src/datasources/vector/dashboards/pcp-vector-top-consumers.jsonnet
@@ -18,7 +18,7 @@ grafana.dashboard.new(
grafana.text.new(
'Configuration Instructions',
mode='markdown',
- content='This dashboard requires [authentication](https://grafana-pcp.readthedocs.io/en/latest/datasources/authentication.html) to be set up for the PCP Vector datasource. The "Top Network Consumers" table requires the [bcc PMDA](https://man7.org/linux/man-pages/man1/pmdabcc.1.html) to be installed and configured with the netproc module.',
+ content='This dashboard requires [authentication](https://grafana-pcp.readthedocs.io/en/latest/datasources/authentication.html) to be set up for the PCP Vector datasource.',
), gridPos={
x: 0,
y: 0,
@@ -55,34 +55,4 @@ grafana.dashboard.new(
w: 12,
h: 8,
}
-)
-.addPanel(
- grafana.tablePanel.new(
- 'Top Disk Consumers',
- datasource='$datasource',
- styles=null,
- )
- .addTargets([
- { expr: 'proc.hog.disk', format: 'metrics_table', legendFormat: '$metric' },
- ]) + { options+: {sortBy: [{desc: true, displayName: 'proc.hog.disk'}]}}, gridPos={
- x: 0,
- y: 10,
- w: 12,
- h: 8,
- }
-)
-.addPanel(
- grafana.tablePanel.new(
- 'Top Network Consumers',
- datasource='$datasource',
- styles=null,
- )
- .addTargets([
- { expr: 'proc.hog.net', format: 'metrics_table', legendFormat: '$metric' },
- ]) + { options+: {sortBy: [{desc: true, displayName: 'proc.hog.net'}]}}, gridPos={
- x: 12,
- y: 10,
- w: 12,
- h: 8,
- }
)
\ No newline at end of file

View File

@ -26,8 +26,8 @@ go mod vendor
awk '$2 ~ /^v/ && $4 != "indirect" {print "Provides: bundled(golang(" $1 ")) = " substr($2, 2)}' go.mod | \
sed -E 's/=(.*)-(.*)-(.*)/=\1-\2.\3/g' > "../${VENDOR_TAR}.manifest"
# patch in uwsgi dashboard before webpack compilation
patch -p1 --fuzz=0 < ../0002-add-uwsgi-dashboard.patch
# patch the top consumers dashboard to remove tables visualizing faulty metrics
patch -p1 --fuzz=0 < ../0002-remove-faulty-metric-tables.patch
# Vendor Node.js dependencies
patch -p1 --fuzz=0 < ../0001-remove-unused-frontend-crypto.patch

View File

@ -15,21 +15,21 @@ end}
%global gomodulesmode GO111MODULE=auto
Name: grafana-pcp
Version: 5.1.1
Release: 10%{?dist}
Version: 5.2.2
Release: 3%{?dist}
Summary: Performance Co-Pilot Grafana Plugin
License: ASL 2.0
License: Apache-2.0
URL: https://github.com/performancecopilot/grafana-pcp
Source0: https://github.com/performancecopilot/grafana-pcp/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: grafana-pcp-vendor-%{version}-8.tar.xz
Source1: grafana-pcp-vendor-%{version}-2.tar.xz
# Note: In case there were no changes to this tarball, the NVR of this tarball
# lags behind the NVR of this package.
%if %{compile_frontend} == 0
# Source2 contains the precompiled frontend and dashboards
# Note: In case there were no changes to this tarball, the NVR of this tarball
# lags behind the NVR of this package.
Source2: grafana-pcp-webpack-%{version}-8.tar.gz
Source2: grafana-pcp-webpack-%{version}-2.tar.gz
%endif
Source3: create_bundles.sh
Source4: build_frontend.sh
@ -37,31 +37,32 @@ Source5: list_bundled_nodejs_packages.py
Source6: create_bundles_in_container.sh
Patch1: 0001-remove-unused-frontend-crypto.patch
Patch2: 0002-add-uwsgi-dashboard.patch
Patch2: 0002-remove-faulty-metric-tables.patch
# Intersection of go_arches and nodejs_arches
ExclusiveArch: %{grafanapcp_arches}
ExclusiveArch: %{grafanapcp_arches}
BuildRequires: systemd-rpm-macros
BuildRequires: golang
BuildRequires: go-srpm-macros
%if 0%{?rhel} >= 9
BuildRequires: go-rpm-macros
%endif
%if %{compile_frontend}
BuildRequires: make, nodejs >= 1:14, yarnpkg, golang-github-google-jsonnet
%endif
%global plugin_dir %{_sharedstatedir}/grafana/plugins/performancecopilot-pcp-app
%global install_dir %{_datadir}/performancecopilot-pcp-app
%global install_dir %{_libexecdir}/grafana-pcp
# grafana-pcp requires systemd-tmpfiles
%{?systemd_requires}
Requires: grafana >= 9.0.9
Suggests: pcp >= 5.2.2
%if 0%{?rhel} > 9 || 0%{?fedora} > 39
Suggests: valkey
%else
Suggests: redis >= 5.0.0
%endif
Suggests: bpftrace >= 0.9.2
# Obsolete old webapps
@ -75,9 +76,9 @@ Obsoletes: pcp-webapp-vector <= 4.3.4
# this is for security purposes, if nodejs-foo ever needs an update,
# affected packages can be easily identified.
# Note: generated by the Makefile (see README.md)
Provides: bundled(golang(github.com/grafana/grafana-plugin-sdk-go)) = 0.141.0
Provides: bundled(golang(github.com/hashicorp/golang-lru)) = 0.5.4
Provides: bundled(golang(github.com/stretchr/testify)) = 1.8.0
Provides: bundled(golang(github.com/grafana/grafana-plugin-sdk-go)) = 0.250.0
Provides: bundled(golang(github.com/hashicorp/golang-lru)) = 1.0.2
Provides: bundled(golang(github.com/stretchr/testify)) = 1.9.0
Provides: bundled(npm(@babel/plugin-transform-modules-commonjs)) = 7.18.6
Provides: bundled(npm(@grafana/data)) = 9.1.6
Provides: bundled(npm(@grafana/runtime)) = 9.1.6
@ -124,7 +125,7 @@ Provides: bundled(npm(utility-types)) = 3.10.0
%description
This Grafana plugin for Performance Co-Pilot includes data sources for
scalable time series from pmseries(1) and Redis, live PCP metrics and
scalable time series from pmseries(1) and Valkey, live PCP metrics and
bpftrace scripts from pmdabpftrace(1), as well as several dashboards.
%prep
@ -137,6 +138,7 @@ bpftrace scripts from pmdabpftrace(1), as well as several dashboards.
%patch -P 1 -p1
%patch -P 2 -p1
%build
# Build frontend data sources
%if %{compile_frontend}
@ -144,7 +146,7 @@ bpftrace scripts from pmdabpftrace(1), as well as several dashboards.
%endif
# Build backend data source
%gobuild -o dist/datasources/redis/pcp_redis_datasource_$(go env GOOS)_$(go env GOARCH) ./pkg
%gobuild -o dist/datasources/valkey/pcp_valkey_datasource_$(go env GOOS)_$(go env GOARCH) ./pkg
%install
@ -194,39 +196,97 @@ yarn test
%changelog
* Wed Jun 4 2025 Sam Feifer <sfeifer@redhat.com> - 5.1.1-10
- Resolves RHEL-89274: CVE-2025-22871
* Tue Jun 10 2025 Sam Feifer <sfeifer@redhat.org> - 5.2.2-3
- Resolves RHEL-89218: CVE-2025-22871
* Thu Oct 10 2024 Sam Feifer <sfeifer@redhat.com> - 5.1.1-9
- Resolves RHEL-61780: CVE-2024-9355
* Tue Dec 3 2024 Sam Feifer <sfeifer@redhat.org> - 5.2.2-2
- Remove visualizations for proc.hog.net and proc.hog.disk while they do not work via pmproxy
* Mon Jul 8 2024 Sam Feifer <sfeifer@redhat.com> - 5.1.1-8
- Add a premade uwsgi dashboard for the vector datasource
* Tue Nov 26 2024 Sam Feifer <sfeifer@redhat.com> - 5.2.2-1
- Resolves RHEL-67043: update to 5.2.2 tagged upstream community sources, see CHANGELOG
* Tue Apr 16 2024 Sam Feifer <sfeifer@redhat.com> 5.1.1-2
- fix CVE-2024-1394
* Mon Nov 11 2024 Sam Feifer <sfeifer@redhat.com> - 5.2.1-1
- Resolves RHEL-67043: update to 5.2.0/1 tagged upstream community sources, see CHANGELOG
- Resolves RHEL-16337: added PCP Vector Top Consumers dashboard in new release
* Thu Apr 20 2023 Stan Cox <scox@redhat.com> 5.1.1-1
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 5.1.1-12
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Tue Oct 8 2024 Sam Feifer <sfeifer@redhat.com> - 5.1.1-11
- Resolves: RHEL-57875
* Tue Jul 2 2024 Joe Orton <jorton@redhat.com> - 5.1.1-10
- switch Suggests: redis to valkey (RHEL-45646)
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 5.1.1-9
- Bump release for June 2024 mass rebuild
* Tue Jun 18 2024 Sam Feifer <sfeifer@redhat.com> - 5.1.1-8
- bump release for c10s rebuild
* Sun Feb 11 2024 Maxwell G <maxwell@gtmx.me> - 5.1.1-7
- Rebuild for golang 1.22.0
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.1.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jan 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.1.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Sep 13 2023 Sam Feifer <sfeifer@redhat.com> 5.1.1-4
- Move location of plugin from /usr/share/... to /usr/libexec/... because there is a binary executable
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.1.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.1.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Oct 27 2022 Andreas Gerstmayr <agerstmayr@redhat.com> 5.1.1-1
- update to 5.1.1 tagged upstream community sources, see CHANGELOG
- resolve CVE-2022-27664 golang: net/http: handle server errors after sending GOAWAY
* Tue Nov 01 2022 Stan Cox <scox@redhat.com> 3.2.0-3
- resolve CVE-2022-27664 grafana-pcp: golang: net/http: handle server errors after sending GOAWAY
* Mon Sep 19 2022 Andreas Gerstmayr <agerstmayr@redhat.com> 5.0.0-4
- install plugin in /usr/share and create symlink from /var using
systemd-tmpfiles to work on rpm-ostree based distributions
- drop makefile in favor of create_bundles.sh script
- replace plugin id patch with sed to catch future usages of the new
upstream plugin ids
* Wed Aug 10 2022 Andreas Gerstmayr <agerstmayr@redhat.com> 3.2.0-2
- resolve CVE-2022-1705 golang: net/http: improper sanitization of Transfer-Encoding header
- resolve CVE-2022-32148 golang: net/http/httputil: NewSingleHostReverseProxy - omit X-Forwarded-For not working
- resolve CVE-2022-30631 golang: compress/gzip: stack exhaustion in Reader.Read
- resolve CVE-2022-30630 golang: io/fs: stack exhaustion in Glob
- resolve CVE-2022-30632 golang: path/filepath: stack exhaustion in Glob
- resolve CVE-2022-30635 golang: encoding/gob: stack exhaustion in Decoder.Decode
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jul 08 2022 Andreas Gerstmayr <agerstmayr@redhat.com> 5.0.0-2
- bump required Grafana version to 8.5.6
* Thu Jul 07 2022 Andreas Gerstmayr <agerstmayr@redhat.com> 5.0.0-1
- update to 5.0.0 tagged upstream community sources, see CHANGELOG
- reverted the breaking change (change of internal plugin IDs) of upstream v5.0.0,
i.e. there are no breaking changes when performing this upgrade
- enable Go modules in build process
- make vendor and webpack tarballs reproducible
* Sat Jun 18 2022 Robert-André Mauchin <zebob.m@gmail.com> - 3.2.0-3
- Rebuilt for CVE-2022-1996, CVE-2022-24675, CVE-2022-28327, CVE-2022-27191,
CVE-2022-29526, CVE-2022-30629
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Nov 12 2021 Andreas Gerstmayr <agerstmayr@redhat.com> 3.2.0-1
- update to 3.2.0 tagged upstream community sources, see CHANGELOG
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 25 2021 Andreas Gerstmayr <agerstmayr@redhat.com> 3.1.0-1
- update to 3.1.0 tagged upstream community sources, see CHANGELOG
- remove unused cryptographic implementations
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Jan 22 2021 Andreas Gerstmayr <agerstmayr@redhat.com> 3.0.2-1
- update to 3.0.2 tagged upstream community sources, see CHANGELOG
@ -237,31 +297,44 @@ yarn test
- update to 3.0.0 tagged upstream community sources, see CHANGELOG
- bundle golang dependencies and (optionally) node.js dependencies
* Fri Aug 07 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 2.0.2-3
- bpftrace: show process name and PID in flame graphs
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 24 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 2.0.2-2
- vector: do not show all cgroups in the container overview dashboard in case no containers are present on the system
* Tue Feb 25 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 2.0.2-1
- vector, redis: remove autocompletion cache (PCP metrics can be added and removed dynamically)
* Mon May 11 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 2.0.2-1
- update to upstream version 2.0.2, see CHANGELOG
* Thu Feb 20 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 2.0.1-1
- support for Grafana 6.6+, drop support for Grafana < 6.6
- vector, bpftrace: fix version checks on dashboard load (prevent multiple pmcd.version checks on dashboard load)
- vector, bpftrace: change datasource check box to red if URL is inaccessible
- redis: add tests
- flame graphs: support multidimensional eBPF maps (required to display e.g. the process name)
- dashboards: remove BCC metrics from Vector host overview (because the BCC PMDA is not installed by default)
- misc: update dependencies
- build: fix production build (implement workaround for https://github.com/systemjs/systemjs/issues/2117, https://github.com/grafana/grafana/issues/21785)
* Tue Jan 28 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.5-3
- redis: pass correct timespec to pmproxy (fixes empty graphs for large time ranges)
* Wed Jan 29 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.7-1
- redis: fix timespec (fixes empty graphs for large time ranges)
* Tue Jan 07 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.5-2
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Jan 07 2020 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.6-1
- redis: support wildcards in metric names
- redis: fix legend and label support
- redis: fix label support
- redis: fix legends
- redis: set default sample interval to 60s (fixes empty graph borders)
- build: upgrade copy-webpack-plugin to mitigate XSS vulnerability in the serialize-javascript transitive dependency
- build: remove deprecated uglify-webpack-plugin
* Mon Dec 16 2019 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.5-1
- upgrade to upstream 1.0.5
* Thu Dec 12 2019 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.4-2
- remove node_modules/node-notifier directory from webpack (due to licensing issues)
* Wed Dec 11 2019 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.4-1
- flame graphs: clean flame graph stacks every 5s (reduces CPU load)
- general: implement PCP version checks
- redis: set default sample interval to 60s (fixes empty graph borders)
* Mon Dec 16 2019 Andreas Gerstmayr <agerstmayr@redhat.com> 1.0.3-2
- remove node_modules/node-notifier directory from webpack (due to licensing issues)
- upgrade copy-webpack-plugin, terser-webpack-plugin and remove uglifyjs-webpack-plugin to mitigate XSS vulnerability in serialize-javascript dependency
- build: remove weak dependency (doesn't work with Node.js 12)
- build: upgrade terser-webpack-plugin to mitigate XSS vulnerability in the serialize-javascript transitive dependency
* Tue Nov 26 2019 Nathan Scott <nathans@redhat.com> 1.0.3-1
- fix flame graph dependency (flamegraph.destroy error in javascript console)