diff --git a/fix-out-of-range-mpstat.patch b/fix-out-of-range-mpstat.patch deleted file mode 100644 index d2426ad8e92a2cd2a9b83df10f7bc3a646e439f8..0000000000000000000000000000000000000000 --- a/fix-out-of-range-mpstat.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 9e7d6b2796f669a5e41f5e4fb5ea349a39d8795b Mon Sep 17 00:00:00 2001 -From: caodongxia <315816521@qq.com> -Date: Thu, 14 Jul 2022 15:16:42 +0800 -Subject: [PATCH] fix out of range - ---- - src/pcp/mpstat/pcp-mpstat.py | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/pcp/mpstat/pcp-mpstat.py b/src/pcp/mpstat/pcp-mpstat.py -index fefb6aa..17da944 100755 ---- a/src/pcp/mpstat/pcp-mpstat.py -+++ b/src/pcp/mpstat/pcp-mpstat.py -@@ -602,6 +602,9 @@ class MpstatReport(pmcc.MetricGroupPrinter): - # need two fetches to report rate converted counter metrics - return - -+ if not group['hinv.ncpu'].netValues or not group['kernel.uname.sysname'].netValues: -+ return -+ - if self.Machine_info_count == 0: - self.print_machine_info(group, manager) - self.Machine_info_count = 1 --- -2.23.0 - diff --git a/5.3.7.tar.gz b/pcp-6.1.1.src.tar.gz similarity index 76% rename from 5.3.7.tar.gz rename to pcp-6.1.1.src.tar.gz index 93288bd50da65f7733e5b61fac7017507dcf6ff0..67327c779cb81e5e180ef57585fce9d954763342 100644 Binary files a/5.3.7.tar.gz and b/pcp-6.1.1.src.tar.gz differ diff --git a/pcp.spec b/pcp.spec index 2c37807e6946ed6b3d4e466feea9cf0d14680eb3..a42cce6c4fb7e81fa02681fd18dc55b5e2454783 100644 --- a/pcp.spec +++ b/pcp.spec @@ -1,114 +1,248 @@ -%ifarch aarch64 -%global disable_bcc 1 -%global _with_bcc --with-pmdabcc=no -%global disable_mssql 1 +Name: pcp +Version: 6.1.1 +Release: 1 +Summary: System-level performance monitoring and performance management +License: GPL-2.0-or-later AND LGPL-2.1-or-later AND CC-BY-3.0 +URL: https://pcp.io + +Source0: https://github.com/performancecopilot/pcp/releases/pcp-%{version}.src.tar.gz + +# The additional linker flags break out-of-tree PMDAs. +# https://bugzilla.redhat.com/show_bug.cgi?id=2043092 +%undefine _package_note_flags + + +%global _hostname_executable /usr/bin/hostname + +%global disable_perl 0 + +%global disable_selinux 0 + +%global disable_snmp 0 + +%global disable_perfevent 0 + +# Resource Control kernel feature is on recent Intel/AMD processors only +%ifarch x86_64 +%global disable_resctrl 0 %else +%global disable_resctrl 1 +%endif + +# libchan, libhdr_histogram and pmdastatsd +%global disable_statsd 1 + +%global _with_python2 --with-python=no + +%global disable_python3 0 +%global default_python 3 + +%global perl_interpreter perl-interpreter + +# support for pmdabcc, check bcc.spec for supported architectures of bcc %global disable_bcc 0 -%global _with_bcc --with-pmdabcc=yes + +# support for pmdabpf, check bcc.spec for supported architectures of libbpf-tools +%global disable_bpf 0 + +# support for pmdabpftrace, check bpftrace.spec for supported architectures of bpftrace +%global disable_bpftrace 0 + +# support for pmdajson +%global disable_json 0 + +# support for pmdamongodb +%global disable_mongodb 0 + +# No mssql ODBC driver on non-x86 platforms +%ifarch x86_64 %global disable_mssql 0 +%else +%global disable_mssql 1 %endif -%global disable_dstat 0 -%global __python3 python -%global _confdir %{_sysconfdir}/pcp -%global _logsdir %{_localstatedir}/log/pcp -%global _pmnsdir %{_localstatedir}/lib/pcp/pmns -%global _pmnsexecdir %{_libexecdir}/pcp/pmns -%global _tempsdir %{_localstatedir}/lib/pcp/tmp -%global _pmdasdir %{_localstatedir}/lib/pcp/pmdas -%global _pmdasexecdir %{_libexecdir}/pcp/pmdas -%global _testsdir %{_localstatedir}/lib/pcp/testsuite -%global _selinuxdir %{_localstatedir}/lib/pcp/selinux -%global _selinuxexecdir %{_libexecdir}/pcp/selinux -%global _logconfdir %{_localstatedir}/lib/pcp/config/pmlogconf -%global _ieconfdir %{_localstatedir}/lib/pcp/config/pmieconf -%global _tapsetdir %{_datadir}/systemtap/tapset -%global _bashcompdir %{_datadir}/bash-completion/completions -%global _pixmapdir %{_datadir}/pcp-gui/pixmaps -%global _hicolordir %{_datadir}/icons/hicolor -%global _booksdir %{_datadir}/doc/pcp-doc +# support for pmdanutcracker (perl deps missing on rhel) +%global disable_nutcracker 0 -%global _with_doc --with-docdir=%{_docdir}/%{name} +# Qt development and runtime environment missing components before el6 +%global disable_qt 0 -%global _with_dstat --with-dstat-symlink=yes +# systemd services and pmdasystemd +%global disable_systemd 0 -%global _initddir %{_libexecdir}/pcp/lib +# static probes, missing before el6 and on some architectures +%global disable_sdt 0 -%global _with_ib --with-infiniband=yes +# libuv async event library +%global disable_libuv 0 -%global _with_perfevent --with-perfevent=yes +%global disable_openssl 0 -%global _with_podman --with-podman=yes +# rpm producing "noarch" packages +%global disable_noarch 0 -%global _with_bpf --with-pmdabpf=yes +%global disable_xlsx 1 -%global _with_bpftrace --with-pmdabpftrace=yes +# prevent conflicting binary and man page install for pcp(1) +Conflicts: librapi < 0.16 -%global _with_json --with-pmdajson=yes +# KVM PMDA moved into pcp (no longer using Perl, default on) +Obsoletes: pcp-pmda-kvm < 4.1.1 +Provides: pcp-pmda-kvm = %{version}-%{release} -%global _with_nutcracker --with-pmdanutcracker=yes +# RPM PMDA retired completely +Obsoletes: pcp-pmda-rpm < 5.3.2 +Obsoletes: pcp-pmda-rpm-debuginfo < 5.3.2 -%global _with_snmp --with-pmdasnmp=yes +# PCP REST APIs are now provided by pmproxy +Obsoletes: pcp-webapi-debuginfo < 5.0.0 +Obsoletes: pcp-webapi < 5.0.0 +Provides: pcp-webapi = %{version}-%{release} + +# PCP discovery service now provided by pmfind +Obsoletes: pcp-manager-debuginfo < 5.2.0 +Obsoletes: pcp-manager < 5.2.0 -Name: pcp -Version: 5.3.7 -Summary: System-level performance monitoring and performance management -Release: 2 -License: GPL-2.0-or-later and LGPL-2.0-or-later and CC-BY-SA-3.0 -URL: https://pcp.io -Source0: https://github.com/performancecopilot/pcp/archive/refs/tags/5.3.7.tar.gz -#Refer: https://github.com/performancecopilot/pcp/pull/822 -Patch0: fix-out-of-range-mpstat.patch +Obsoletes: pcp-compat < 4.2.0 +Obsoletes: pcp-monitor < 4.2.0 +Obsoletes: pcp-collector < 4.2.0 +Obsoletes: pcp-pmda-nvidia < 3.10.5 + +# https://fedoraproject.org/wiki/Packaging "C and C++" BuildRequires: make BuildRequires: gcc gcc-c++ BuildRequires: procps autoconf bison flex -BuildRequires: nss-devel BuildRequires: avahi-devel BuildRequires: xz-devel BuildRequires: zlib-devel +%if !%{disable_python3} BuildRequires: python3-devel BuildRequires: python3-setuptools +%endif BuildRequires: ncurses-devel BuildRequires: readline-devel BuildRequires: cyrus-sasl-devel +%if !%{disable_statsd} +# ragel unavailable on RHEL8 +BuildRequires: ragel +BuildRequires: chan-devel HdrHistogram_c-devel +%endif +%if !%{disable_perfevent} BuildRequires: libpfm-devel >= 4 +%endif +%if !%{disable_sdt} BuildRequires: systemtap-sdt-devel +%endif +%if !%{disable_libuv} BuildRequires: libuv-devel >= 1.0 +%endif +%if !%{disable_openssl} BuildRequires: openssl-devel >= 1.1.1 +%endif BuildRequires: perl-generators BuildRequires: perl-devel perl(strict) BuildRequires: perl(ExtUtils::MakeMaker) perl(LWP::UserAgent) perl(JSON) BuildRequires: perl(Time::HiRes) perl(Digest::MD5) BuildRequires: perl(XML::LibXML) perl(File::Slurp) -BuildRequires: man hostname +BuildRequires: hostname +%if !%{disable_systemd} BuildRequires: systemd-devel +%endif +%if !%{disable_qt} BuildRequires: desktop-file-utils +%if 0%{?default_qt} == 6 +BuildRequires: qt6-qtbase-devel +BuildRequires: qt6-qtsvg-devel +%else BuildRequires: qt5-qtbase-devel BuildRequires: qt5-qtsvg-devel +%endif +%endif -Requires: bash xz gawk sed grep findutils which hostname +Requires: bash xz gawk sed grep findutils which %{_hostname_executable} Requires: pcp-libs = %{version}-%{release} -Requires: pcp-conf = %{version}-%{release} + +%if !%{disable_selinux} Requires: pcp-selinux = %{version}-%{release} +%endif -Provides: pcp-libs = %{version}-%{release} -Provides: pcp-pmda-kvm = %{version}-%{release} -Provides: pcp-webapi = %{version}-%{release} +%global _confdir %{_sysconfdir}/pcp +%global _logsdir %{_localstatedir}/log/pcp +%global _pmnsdir %{_localstatedir}/lib/pcp/pmns +%global _pmdasdir %{_localstatedir}/lib/pcp/pmdas +%global _pmdasexecdir %{_libexecdir}/pcp/pmdas +%global _testsdir %{_localstatedir}/lib/pcp/testsuite +%global _ieconfigdir %{_localstatedir}/lib/pcp/config/pmie +%global _ieconfdir %{_localstatedir}/lib/pcp/config/pmieconf +%global _selinuxdir %{_datadir}/selinux/packages/targeted -Conflicts: librapi < 0.16 +%global _with_doc --with-docdir=%{_docdir}/%{name} -Obsoletes: pcp-pmda-kvm < %{version}-%{release} -Obsoletes: pcp-libs < %{version}-%{release} -Obsoletes: pcp-pmda-rpm < 5.3.2 -Obsoletes: pcp-pmda-rpm-debuginfo < 5.3.2 -Obsoletes: pcp-webapi-debuginfo < 5.0.0 -Obsoletes: pcp-webapi < 5.0.0 -Obsoletes: pcp-manager-debuginfo < 5.2.0 -Obsoletes: pcp-manager < 5.2.0 -Obsoletes: pcp-compat -Obsoletes: pcp-monitor < 4.2.0 -Obsoletes: pcp-collector < 4.2.0 -Obsoletes: pcp-pmda-nvidia +%global _with_dstat --with-dstat-symlink=yes +%global disable_dstat 0 + +%if !%{disable_systemd} +%global _initddir %{_libexecdir}/pcp/lib +%else +%global _initddir %{_sysconfdir}/rc.d/init.d +%global _with_initd --with-rcdir=%{_initddir} +%endif + +%global _with_ib --with-infiniband=yes + +%if %{disable_perfevent} +%global _with_perfevent --with-perfevent=no +%else +%global _with_perfevent --with-perfevent=yes +%endif + +%if %{disable_statsd} +%global _with_statsd --with-pmdastatsd=no +%else +%global _with_statsd --with-pmdastatsd=yes +%endif + +%if %{disable_bcc} +%global _with_bcc --with-pmdabcc=no +%else +%global _with_bcc --with-pmdabcc=yes +%endif + +%if %{disable_bpf} +%global _with_bpf --with-pmdabpf=no +%else +%global _with_bpf --with-pmdabpf=yes +%endif + +%if %{disable_bpftrace} +%global _with_bpftrace --with-pmdabpftrace=no +%else +%global _with_bpftrace --with-pmdabpftrace=yes +%endif + +%if %{disable_json} +%global _with_json --with-pmdajson=no +%else +%global _with_json --with-pmdajson=yes +%endif + +%if %{disable_mongodb} +%global _with_mongodb --with-pmdamongodb=no +%else +%global _with_mongodb --with-pmdamongodb=yes +%endif + +%if %{disable_nutcracker} +%global _with_nutcracker --with-pmdanutcracker=no +%else +%global _with_nutcracker --with-pmdanutcracker=yes +%endif + +%if %{disable_snmp} +%global _with_snmp --with-pmdasnmp=no +%else +%global _with_snmp --with-pmdasnmp=yes +%endif %global pmda_remove() %{expand: if [ %1 -eq 0 ] @@ -140,13 +274,12 @@ else fi } -%global selinux_handle_policy() %{expand: -if [ %1 -ge 1 ] -then - %{_libexecdir}/pcp/bin/selinux-setup %{_selinuxdir} install %2 -elif [ %1 -eq 0 ] +%global run_pmieconf() %{expand: +if [ -w "%1" ] then - %{_libexecdir}/pcp/bin/selinux-setup %{_selinuxdir} remove %2 + pmieconf -c enable "%2" +else + echo "WARNING: Cannot write to %1, skipping pmieconf enable of %2." >&2 fi } @@ -158,57 +291,151 @@ The PCP open source release provides a unifying abstraction for all of the interesting performance data in a system, and allows client applications to easily retrieve and process any subset of that data. +# +# pcp-conf +# %package conf -Summary: Performance Co-Pilot run-time configuration -License: LGPLv2+ -Conflicts: pcp-libs < 3.9 +License: LGPL-2.1-or-later +Summary: Performance Co-Pilot run-time configuration +URL: https://pcp.io + +# http://fedoraproject.org/wiki/Packaging:Conflicts "Splitting Packages" +Conflicts: pcp-libs < 3.9 + %description conf Performance Co-Pilot (PCP) run-time configuration +# +# pcp-libs +# +%package libs +License: LGPL-2.1-or-later +Summary: Performance Co-Pilot run-time libraries +URL: https://pcp.io +Requires: pcp-conf = %{version}-%{release} + +# prevent conflicting library (libpcp.so.N) installation +Conflicts: postgresql-pgpool-II + +%description libs +Performance Co-Pilot (PCP) run-time libraries + +# +# pcp-libs-devel +# +%package libs-devel +License: GPL-2.0-or-later AND LGPL-2.1-or-later +Summary: Performance Co-Pilot (PCP) development headers +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} + +# prevent conflicting library (libpcp.so) installation +Conflicts: postgresql-pgpool-II-devel + +%description libs-devel +Performance Co-Pilot (PCP) headers for development. + +# +# pcp-devel +# %package devel -Summary: Performance Co-Pilot (PCP) development tools and documentation -License: GPLv2+ and LGPLv2+ -Requires: pcp = %{version}-%{release} -Provides: pcp-libs-devel = %{version}-%{release} pcp-testsuite = %{version}-%{release} -Obsoletes: pcp-libs-devel < %{version}-%{release} pcp-testsuite < %{version}-%{release} pcp-gui-testsuite -Requires: pcp-pmda-activemq pcp-pmda-bonding pcp-pmda-dbping pcp-pmda-ds389 pcp-pmda-ds389log -Requires: pcp-pmda-elasticsearch pcp-pmda-gpfs pcp-pmda-gpsd pcp-pmda-lustre -Requires: pcp-pmda-memcache pcp-pmda-mysql pcp-pmda-named pcp-pmda-netfilter pcp-pmda-news -Requires: pcp-pmda-nginx pcp-pmda-nfsclient pcp-pmda-pdns pcp-pmda-postfix pcp-pmda-postgresql -Requires: pcp-pmda-samba pcp-pmda-slurm pcp-pmda-zimbra pcp-pmda-dm pcp-pmda-apache -Requires: pcp-pmda-bash pcp-pmda-cisco pcp-pmda-gfs2 pcp-pmda-mailq pcp-pmda-mounts -Requires: pcp-pmda-nvidia-gpu pcp-pmda-roomtemp pcp-pmda-sendmail pcp-pmda-shping pcp-pmda-smart -Requires: pcp-pmda-hacluster pcp-pmda-lustrecomm pcp-pmda-logger pcp-pmda-denki pcp-pmda-docker -Requires: pcp-pmda-sockets pcp-pmda-podman pcp-pmda-nutcracker pcp-pmda-bpf pcp-pmda-bpftrace -Requires: pcp-pmda-gluster pcp-pmda-zswap pcp-pmda-unbound pcp-pmda-mic -Requires: pcp-pmda-libvirt pcp-pmda-lio pcp-pmda-openmetrics pcp-pmda-haproxy -Requires: pcp-pmda-lmsensors pcp-pmda-netcheck pcp-pmda-rabbitmq pcp-pmda-oracle -Requires: pcp-pmda-openvswitch pcp-pmda-mongodb pcp-pmda-snmp pcp-pmda-bind2 -Requires: pcp-pmda-json pcp-pmda-summary pcp-pmda-trace pcp-pmda-weblog -Requires: pcp-system-tools pcp-gui %{_vendor}-rpm-config bc gcc gzip bzip2 -Requires: selinux-policy-devel selinux-policy-targeted setools-console +License: GPL-2.0-or-later AND LGPL-2.1-or-later +Summary: Performance Co-Pilot (PCP) development tools and documentation +URL: https://pcp.io +Requires: pcp = %{version}-%{release} +Requires: pcp-libs = %{version}-%{release} +Requires: pcp-libs-devel = %{version}-%{release} + +%description devel +Performance Co-Pilot (PCP) documentation and tools for development. + +# +# pcp-testsuite +# +%package testsuite +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) test suite +URL: https://pcp.io +Requires: pcp = %{version}-%{release} +Requires: pcp-libs = %{version}-%{release} +Requires: pcp-libs-devel = %{version}-%{release} +Requires: pcp-devel = %{version}-%{release} +Obsoletes: pcp-gui-testsuite < 3.9.5 +# The following are inherited from pcp-collector and pcp-monitor, +# both of which are now obsoleted by the base pcp package +Requires: pcp-pmda-activemq pcp-pmda-bonding pcp-pmda-dbping pcp-pmda-ds389 pcp-pmda-ds389log +Requires: pcp-pmda-elasticsearch pcp-pmda-gpfs pcp-pmda-gpsd pcp-pmda-lustre +Requires: pcp-pmda-memcache pcp-pmda-mysql pcp-pmda-named pcp-pmda-netfilter pcp-pmda-news +Requires: pcp-pmda-nginx pcp-pmda-nfsclient pcp-pmda-pdns pcp-pmda-postfix pcp-pmda-postgresql pcp-pmda-oracle +Requires: pcp-pmda-samba pcp-pmda-slurm pcp-pmda-zimbra +Requires: pcp-pmda-dm pcp-pmda-apache +Requires: pcp-pmda-bash pcp-pmda-cisco pcp-pmda-gfs2 pcp-pmda-mailq pcp-pmda-mounts +Requires: pcp-pmda-nvidia-gpu pcp-pmda-roomtemp pcp-pmda-sendmail pcp-pmda-shping pcp-pmda-smart pcp-pmda-farm +Requires: pcp-pmda-hacluster pcp-pmda-lustrecomm pcp-pmda-logger pcp-pmda-denki pcp-pmda-docker pcp-pmda-bind2 +Requires: pcp-pmda-sockets pcp-pmda-podman +%if !%{disable_statsd} +Requires: pcp-pmda-statsd +%endif +%if !%{disable_nutcracker} +Requires: pcp-pmda-nutcracker +%endif %if !%{disable_bcc} Requires: pcp-pmda-bcc %endif +%if !%{disable_bpf} +Requires: pcp-pmda-bpf +%endif +%if !%{disable_bpftrace} +Requires: pcp-pmda-bpftrace +%endif +%if !%{disable_python3} +Requires: pcp-pmda-gluster pcp-pmda-zswap pcp-pmda-unbound pcp-pmda-mic +Requires: pcp-pmda-libvirt pcp-pmda-lio pcp-pmda-openmetrics pcp-pmda-haproxy +Requires: pcp-pmda-lmsensors pcp-pmda-netcheck pcp-pmda-rabbitmq +Requires: pcp-pmda-openvswitch +%endif +%if !%{disable_mongodb} +Requires: pcp-pmda-mongodb +%endif %if !%{disable_mssql} Requires: pcp-pmda-mssql %endif -%description devel -Performance Co-Pilot (PCP) documentation and tools for development. +%if !%{disable_snmp} +Requires: pcp-pmda-snmp +%endif +%if !%{disable_json} +Requires: pcp-pmda-json +%endif +%if !%{disable_resctrl} +Requires: pcp-pmda-resctrl +%endif +Requires: pcp-pmda-summary pcp-pmda-trace pcp-pmda-weblog +Requires: pcp-system-tools +%if !%{disable_qt} +Requires: pcp-gui +%endif +Requires: bc gcc gzip bzip2 +Requires: openEuler-rpm-config +%if !%{disable_selinux} +Requires: selinux-policy-devel +Requires: selinux-policy-targeted +Requires: setools-console +%endif -%package help -Summary: Documents for %{name} -Buildarch: noarch -Requires: man info -Provides: pcp-doc = %{version}-%{release} -Obsoletes: pcp-doc < %{version}-%{release} -%description help -Man pages and other related documents for %{name}. +%description testsuite +Quality assurance test suite for Performance Co-Pilot (PCP). +# end testsuite +# +# perl-PCP-PMDA. This is the PCP agent perl binding. +# %package -n perl-PCP-PMDA -Summary: Performance Co-Pilot (PCP) Perl bindings and documentation -License: GPLv2+ -Requires: pcp = %{version}-%{release} perl-interpreter +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) Perl bindings and documentation +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} +Requires: %{perl_interpreter} + %description -n perl-PCP-PMDA The PCP::PMDA Perl module contains the language bindings for building Performance Metric Domain Agents (PMDAs) using Perl. @@ -216,10 +443,16 @@ Each PMDA exports performance data for one specific domain, for example the operating system kernel, Cisco routers, a database, an application, etc. +# +# perl-PCP-MMV +# %package -n perl-PCP-MMV -Summary: Performance Co-Pilot (PCP) Perl bindings for PCP Memory Mapped Values -License: GPLv2+ -Requires: pcp = %{version}-%{release} perl-interpreter +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) Perl bindings for PCP Memory Mapped Values +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} +Requires: %{perl_interpreter} + %description -n perl-PCP-MMV The PCP::MMV module contains the Perl language bindings for building scripts instrumented with the Performance Co-Pilot @@ -228,19 +461,30 @@ This mechanism allows arbitrary values to be exported from an instrumented script into the PCP infrastructure for monitoring and analysis with pmchart, pmie, pmlogger and other PCP tools. +# +# perl-PCP-LogImport +# %package -n perl-PCP-LogImport -Summary: Performance Co-Pilot (PCP) Perl bindings for importing external data into PCP archives -License: GPLv2+ -Requires: pcp = %{version}-%{release} perl-interpreter +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) Perl bindings for importing external data into PCP archives +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} +Requires: %{perl_interpreter} + %description -n perl-PCP-LogImport The PCP::LogImport module contains the Perl language bindings for importing data in various 3rd party formats into PCP archives so they can be replayed with standard PCP monitoring tools. +# +# perl-PCP-LogSummary +# %package -n perl-PCP-LogSummary -Summary: Performance Co-Pilot (PCP) Perl bindings for post-processing output of pmlogsummary -License: GPLv2+ -Requires: pcp = %{version}-%{release} perl-interpreter +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) Perl bindings for post-processing output of pmlogsummary +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} +Requires: %{perl_interpreter} %description -n perl-PCP-LogSummary The PCP::LogSummary module provides a Perl module for using the @@ -250,159 +494,328 @@ minima, maxima, and other calculations based on the performance data stored in a PCP archive. The Perl interface is ideal for exporting this data into third-party tools (e.g. spreadsheets). +# +# pcp-import-sar2pcp +# %package import-sar2pcp -Summary: Performance Co-Pilot tools for importing sar data into PCP archive logs -License: LGPLv2+ -Requires: pcp = %{version}-%{release} perl-PCP-LogImport = %{version}-%{release} perl(XML::TokeParser) +License: LGPL-2.1-or-later +Summary: Performance Co-Pilot tools for importing sar data into PCP archive logs +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} +Requires: perl-PCP-LogImport = %{version}-%{release} +Requires: perl(XML::TokeParser) + %description import-sar2pcp Performance Co-Pilot (PCP) front-end tools for importing sar data into standard PCP archive logs for replay with any PCP monitoring tool. +# +# pcp-import-iostat2pcp +# %package import-iostat2pcp -Summary: Performance Co-Pilot tools for importing iostat data into PCP archive logs -License: LGPLv2+ -Requires: pcp = %{version}-%{release} perl-PCP-LogImport = %{version}-%{release} +License: LGPL-2.1-or-later +Summary: Performance Co-Pilot tools for importing iostat data into PCP archive logs +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} +Requires: perl-PCP-LogImport = %{version}-%{release} + %description import-iostat2pcp Performance Co-Pilot (PCP) front-end tools for importing iostat data into standard PCP archive logs for replay with any PCP monitoring tool. +# +# pcp-import-mrtg2pcp +# %package import-mrtg2pcp -Summary: Performance Co-Pilot tools for importing MTRG data into PCP archive logs -License: LGPLv2+ -Requires: pcp = %{version}-%{release} perl-PCP-LogImport = %{version}-%{release} +License: LGPL-2.1-or-later +Summary: Performance Co-Pilot tools for importing MTRG data into PCP archive logs +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} +Requires: perl-PCP-LogImport = %{version}-%{release} + %description import-mrtg2pcp Performance Co-Pilot (PCP) front-end tools for importing MTRG data into standard PCP archive logs for replay with any PCP monitoring tool. +# +# pcp-import-ganglia2pcp +# %package import-ganglia2pcp -Summary: Performance Co-Pilot tools for importing ganglia data into PCP archive logs -License: LGPLv2+ -Requires: pcp = %{version}-%{release} perl-PCP-LogImport = %{version}-%{release} +License: LGPL-2.1-or-later +Summary: Performance Co-Pilot tools for importing ganglia data into PCP archive logs +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} +Requires: perl-PCP-LogImport = %{version}-%{release} %description import-ganglia2pcp Performance Co-Pilot (PCP) front-end tools for importing ganglia data into standard PCP archive logs for replay with any PCP monitoring tool. +# +# pcp-import-collectl2pcp +# %package import-collectl2pcp -Summary: Performance Co-Pilot tools for importing collectl log files into PCP archive logs -License: LGPLv2+ -Requires: pcp = %{version}-%{release} +License: LGPL-2.1-or-later +Summary: Performance Co-Pilot tools for importing collectl log files into PCP archive logs +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} %description import-collectl2pcp Performance Co-Pilot (PCP) front-end tools for importing collectl data into standard PCP archive logs for replay with any PCP monitoring tool. +# +# pcp-export-zabbix-agent +# %package export-zabbix-agent -Summary: Module that can export PCP indicators to Zabbix agent -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Module for exporting PCP metrics to Zabbix agent +URL: https://pcp.io +Requires: pcp-libs = %{version}-%{release} %description export-zabbix-agent Performance Co-Pilot (PCP) module for exporting metrics from PCP to Zabbix via the Zabbix agent - see zbxpcp(3) for further details. +%if !%{disable_python3} +# +# pcp-geolocate +# +%package geolocate +License: GPL-2.0-or-later +Summary: Performance Co-Pilot geographical location metric labels +URL: https://pcp.io +Requires: pcp-libs >= %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +%endif + +%description geolocate +Performance Co-Pilot (PCP) tools that automatically apply metric labels +containing latitude and longitude, based on IP-address-based lookups. +Used with live maps to show metric values from different locations. + +# +# pcp-export-pcp2elasticsearch +# %package export-pcp2elasticsearch +License: GPL-2.0-or-later Summary: Performance Co-Pilot tools for exporting PCP metrics to ElasticSearch -License: GPLv2+ -Requires: pcp >= %{version}-%{release} python3-pcp = %{version}-%{release} python3-requests +URL: https://pcp.io +Requires: pcp-libs >= %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +Requires: python3-requests BuildRequires: python3-requests +%endif + %description export-pcp2elasticsearch Performance Co-Pilot (PCP) front-end tools for exporting metric values to Elasticsearch - a distributed, RESTful search and analytics engine. See https://www.elastic.co/community for further details. +# +# pcp-export-pcp2graphite +# %package export-pcp2graphite -Summary: Performance Co-Pilot tools for exporting PCP metrics to Graphite -License: GPLv2+ -Requires: pcp >= %{version}-%{release} python3-pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot tools for exporting PCP metrics to Graphite +URL: https://pcp.io +Requires: pcp-libs >= %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +%endif + %description export-pcp2graphite Performance Co-Pilot (PCP) front-end tools for exporting metric values to graphite (http://graphite.readthedocs.org). - +# pcp-export-pcp2influxdb +# %package export-pcp2influxdb -Summary: Performance Co-Pilot tools for exporting PCP metrics to InfluxDB -License: GPLv2+ -Requires: pcp >= %{version}-%{release} python3-pcp = %{version}-%{release} python3-requests +License: GPL-2.0-or-later +Summary: Performance Co-Pilot tools for exporting PCP metrics to InfluxDB +URL: https://pcp.io +Requires: pcp-libs >= %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +Requires: python3-requests +%endif + %description export-pcp2influxdb Performance Co-Pilot (PCP) front-end tools for exporting metric values to InfluxDB (https://influxdata.com/time-series-platform/influxdb). +# +# pcp-export-pcp2json +# %package export-pcp2json -Summary: Performance Co-Pilot tools for exporting PCP metrics in JSON format -License: GPLv2+ -Requires: pcp >= %{version}-%{release} python3-pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot tools for exporting PCP metrics in JSON format +URL: https://pcp.io +Requires: pcp-libs >= %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +%endif %description export-pcp2json Performance Co-Pilot (PCP) front-end tools for exporting metric values in JSON format. +# +# pcp-export-pcp2spark +# %package export-pcp2spark -Summary: Performance Co-Pilot tools for exporting PCP metrics to Apache Spark -License: GPLv2+ -Requires: pcp >= %{version}-%{release} python3-pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot tools for exporting PCP metrics to Apache Spark +URL: https://pcp.io +Requires: pcp-libs >= %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +%endif %description export-pcp2spark Performance Co-Pilot (PCP) front-end tools for exporting metric values in JSON format to Apache Spark. See https://spark.apache.org/ for further details on Apache Spark. +# +# pcp-export-pcp2xlsx +# +%if !%{disable_xlsx} +%package export-pcp2xlsx +License: GPL-2.0-or-later +Summary: Performance Co-Pilot tools for exporting PCP metrics to Excel +URL: https://pcp.io +Requires: pcp-libs >= %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +Requires: python3-openpyxl +BuildRequires: python3-openpyxl +%endif + +%description export-pcp2xlsx +Performance Co-Pilot (PCP) front-end tools for exporting metric values +in Excel spreadsheet format. +%endif +# +# pcp-export-pcp2xml +# %package export-pcp2xml -Summary: Performance Co-Pilot tools for exporting PCP metrics in XML format -License: GPLv2+ -Requires: pcp >= %{version}-%{release} python3-pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot tools for exporting PCP metrics in XML format +URL: https://pcp.io +Requires: pcp-libs >= %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +%endif %description export-pcp2xml Performance Co-Pilot (PCP) front-end tools for exporting metric values in XML format. +# +# pcp-export-pcp2zabbix +# %package export-pcp2zabbix -Summary: Performance Co-Pilot tools for exporting PCP metrics to Zabbix -License: GPLv2+ -Requires: python3-pcp = %{version}-%{release} pcp >= %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot tools for exporting PCP metrics to Zabbix +URL: https://pcp.io +Requires: pcp-libs >= %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +%endif %description export-pcp2zabbix Performance Co-Pilot (PCP) front-end tools for exporting metric values to the Zabbix (https://www.zabbix.org/) monitoring software. +%endif +# +# pcp-pmda-podman +# %package pmda-podman +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics for podman containers -License: GPLv2+ -Requires: pcp = %{version}-%{release} +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} + %description pmda-podman This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting podman container and pod statistics via the podman REST API. +%if !%{disable_statsd} +# +# pcp-pmda-statsd +# +%package pmda-statsd +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics from statsd +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: chan HdrHistogram_c + +%description pmda-statsd +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting statistics from the statsd daemon. +%endif + +%if !%{disable_perfevent} +# +# pcp-pmda-perfevent +# %package pmda-perfevent -Summary: Performance Co-Pilot (PCP) metrics for hardware counters -License: GPLv2+ -Requires: pcp = %{version}-%{release} libpfm >= 4 -BuildRequires: libpfm-devel >= 4 -Obsoletes: pcp-pmda-papi < 5.0.0 +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for hardware counters +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: libpfm >= 4 +BuildRequires: libpfm-devel >= 4 +Obsoletes: pcp-pmda-papi < 5.0.0 +Obsoletes: pcp-pmda-papi-debuginfo < 5.0.0 + %description pmda-perfevent This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting hardware counters statistics through libpfm. +%endif +# +# pcp-pmda-infiniband +# %package pmda-infiniband -Summary: Performance Co-Pilot (PCP) metrics for Infiniband HCAs and switches -License: GPLv2+ -Requires: pcp = %{version}-%{release} libibmad >= 1.3.7 libibumad >= 1.3.7 -BuildRequires: libibmad-devel >= 1.3.7 libibumad-devel >= 1.3.7 +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Infiniband HCAs and switches +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: libibmad >= 1.3.7 libibumad >= 1.3.7 +BuildRequires: libibmad-devel >= 1.3.7 libibumad-devel >= 1.3.7 infiniband-diags + %description pmda-infiniband This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting Infiniband statistics. By default, it monitors the local HCAs but can also be configured to monitor remote GUIDs such as IB switches. +# +# pcp-pmda-activemq +# %package pmda-activemq -Summary: Performance Co-Pilot (PCP) metrics for ActiveMQ -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} perl(LWP::UserAgent) pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for ActiveMQ +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(LWP::UserAgent) + %description pmda-activemq This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the ActiveMQ message broker. +#end pcp-pmda-activemq +# +# pcp-pmda-bind2 +# %package pmda-bind2 -License: GPLv2+ +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics for BIND servers URL: https://pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} @@ -412,638 +825,1229 @@ Requires: perl(XML::LibXML) Requires: perl(File::Slurp) Requires: perl-autodie Requires: perl-Time-HiRes + %description pmda-bind2 This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from BIND (Berkeley Internet Name Domain). +#end pcp-pmda-bind2 +# +# pcp-pmda-redis +# %package pmda-redis -Summary: Performance Co-Pilot (PCP) metrics for Redis -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} -Requires: perl-autodie perl-Time-HiRes perl-Data-Dumper +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Redis +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl-autodie +Requires: perl-Time-HiRes +Requires: perl-Data-Dumper + %description pmda-redis This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from Redis servers (redis.io). +#end pcp-pmda-redis +%if !%{disable_nutcracker} +# +# pcp-pmda-nutcracker +# %package pmda-nutcracker +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics for NutCracker (TwemCache) -License: GPLv2+ -Requires: pcp = %{version}-%{release} perl-PCP-PMDA = %{version}-%{release} perl(YAML::XS::LibYAML) perl(JSON) +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(YAML::XS::LibYAML) +Requires: perl(JSON) + %description pmda-nutcracker This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from NutCracker (TwemCache). +#end pcp-pmda-nutcracker +%endif +# +# pcp-pmda-bonding +# %package pmda-bonding -Summary: Performance Co-Pilot (PCP) metrics for Bonded network interfaces -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Bonded network interfaces +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-bonding This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about bonded network interfaces. +#end pcp-pmda-bonding +# +# pcp-pmda-dbping +# %package pmda-dbping -Summary: Performance Co-Pilot (PCP) metrics for Database response times and Availablility -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} perl-DBI pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Database response times and Availablility +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl-DBI + %description pmda-dbping This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Database response times and Availablility. +#end pcp-pmda-dbping +# +# pcp-pmda-ds389 +# %package pmda-ds389 -Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Servers -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Servers +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-ds389 This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about a 389 Directory Server. +#end pcp-pmda-ds389 +# +# pcp-pmda-ds389log +# %package pmda-ds389log -Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Server Loggers -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} perl-Date-Manip pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for 389 Directory Server Loggers +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl-Date-Manip + %description pmda-ds389log This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from a 389 Directory Server log. +#end pcp-pmda-ds389log -%package pmda-elasticsearch -Summary: Performance Co-Pilot (PCP) metrics for Elasticsearch -License: GPLv2+ -Requires: pcp = %{version}-%{release} python3-pcp -%description pmda-elasticsearch -This package contains the PCP Performance Metrics Domain Agent (PMDA) for -collecting metrics about Elasticsearch. +# +# pcp-pmda-gpfs +# %package pmda-gpfs -Summary: Performance Co-Pilot (PCP) metrics for GPFS Filesystem -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for GPFS Filesystem +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-gpfs This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the GPFS filesystem. +#end pcp-pmda-gpfs +# +# pcp-pmda-gpsd +# %package pmda-gpsd -Summary: Performance Co-Pilot (PCP) metrics for a GPS Daemon -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for a GPS Daemon +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl-Time-HiRes +Requires: perl-JSON + %description pmda-gpsd This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about a GPS Daemon. +#end pcp-pmda-gpsd +# +# pcp-pmda-denki +# %package pmda-denki +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics dealing with electrical power -License: GPLv2+ -Requires: pcp = %{version}-%{release} +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-denki This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics related to the electrical power consumed by and inside the system. +# end pcp-pmda-denki +# +# pcp-pmda-docker +# %package pmda-docker -Summary: Performance Co-Pilot (PCP) metrics from the Docker daemon -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics from the Docker daemon +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} + %description pmda-docker This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics using the Docker daemon REST API. +#end pcp-pmda-docker +# +# pcp-pmda-lustre +# %package pmda-lustre -Summary: Performance Co-Pilot (PCP) metrics for the Lustre Filesytem -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Lustre Filesytem +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-lustre This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Lustre Filesystem. +#end pcp-pmda-lustre +# +# pcp-pmda-lustrecomm +# %package pmda-lustrecomm -Summary: Performance Co-Pilot (PCP) metrics for the Lustre Filesytem Comms -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Lustre Filesytem Comms +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} + %description pmda-lustrecomm This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Lustre Filesystem Comms. +#end pcp-pmda-lustrecomm +# +# pcp-pmda-memcache +# %package pmda-memcache -Summary: Performance Co-Pilot (PCP) metrics for Memcached -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Memcached +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-memcache This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Memcached. +#end pcp-pmda-memcache +# +# pcp-pmda-mysql +# %package pmda-mysql -Summary: Performance Co-Pilot (PCP) metrics for MySQL -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} perl(DBI) perl(DBD::mysql) pcp = %{version}-%{release} -BuildRequires: perl(DBI) perl(DBD::mysql) +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for MySQL +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(DBI) perl(DBD::mysql) +BuildRequires: perl(DBI) perl(DBD::mysql) + %description pmda-mysql This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the MySQL database. +#end pcp-pmda-mysql +# +# pcp-pmda-named +# %package pmda-named -Summary: Performance Co-Pilot (PCP) metrics for Named -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Named +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-named This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Named nameserver. +#end pcp-pmda-named +# pcp-pmda-netfilter +# %package pmda-netfilter -Summary: Performance Co-Pilot (PCP) metrics for Netfilter framework -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Netfilter framework +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-netfilter This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Netfilter packet filtering framework. +#end pcp-pmda-netfilter +# +# pcp-pmda-news +# %package pmda-news -Summary: Performance Co-Pilot (PCP) metrics for Usenet News -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Usenet News +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-news This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Usenet News. +#end pcp-pmda-news +# +# pcp-pmda-nginx +# %package pmda-nginx -Summary: Performance Co-Pilot (PCP) metrics for the Nginx Webserver -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} perl(LWP::UserAgent) pcp = %{version}-%{release} -BuildRequires: perl(LWP::UserAgent) +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Nginx Webserver +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(LWP::UserAgent) +BuildRequires: perl(LWP::UserAgent) + %description pmda-nginx This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Nginx Webserver. +#end pcp-pmda-nginx -%package pmda-nfsclient -Summary: Performance Co-Pilot (PCP) metrics for NFS Clients -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} python3-pcp -%description pmda-nfsclient -This package contains the PCP Performance Metrics Domain Agent (PMDA) for -collecting metrics for NFS Clients. - +# +# pcp-pmda-oracle +# %package pmda-oracle -Summary: Performance Co-Pilot (PCP) metrics for the Oracle database -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} perl(DBI) pcp = %{version}-%{release} -BuildRequires: perl(DBI) +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Oracle database +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl(DBI) +BuildRequires: perl(DBI) + %description pmda-oracle This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Oracle database. +#end pcp-pmda-oracle +# +# pcp-pmda-pdns +# %package pmda-pdns -Summary: Performance Co-Pilot (PCP) metrics for PowerDNS -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} perl-Time-HiRes pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for PowerDNS +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl-Time-HiRes + %description pmda-pdns This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the PowerDNS. +#end pcp-pmda-pdns +# +# pcp-pmda-postfix +# %package pmda-postfix -Summary: Performance Co-Pilot (PCP) metrics for the Postfix (MTA) -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} postfix-perl-scripts pcp = %{version}-%{release} perl-Time-HiRes -BuildRequires: postfix-perl-scripts +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Postfix (MTA) +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} +Requires: perl-Time-HiRes +Requires: postfix-perl-scripts +BuildRequires: postfix-perl-scripts + %description pmda-postfix This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Postfix (MTA). +#end pcp-pmda-postfix -%package pmda-postgresql -Summary: Performance Co-Pilot (PCP) metrics for PostgreSQL -License: GPLv2+ -Requires: python3-pcp python3-psycopg2 pcp = %{version}-%{release} -BuildRequires: python3-psycopg2 -%description pmda-postgresql -This package contains the PCP Performance Metrics Domain Agent (PMDA) for -collecting metrics about the PostgreSQL database. - +# +# pcp-pmda-rsyslog +# %package pmda-rsyslog -Summary: Performance Co-Pilot (PCP) metrics for Rsyslog -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Rsyslog +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-rsyslog This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Rsyslog. +#end pcp-pmda-rsyslog +# +# pcp-pmda-samba +# %package pmda-samba -Summary: Performance Co-Pilot (PCP) metrics for Samba -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Samba +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-samba This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Samba. +#end pcp-pmda-samba +# +# pcp-pmda-slurm +# %package pmda-slurm -Summary: Performance Co-Pilot (PCP) metrics for the SLURM Workload Manager -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the SLURM Workload Manager +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-slurm This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from the SLURM Workload Manager. +#end pcp-pmda-slurm +%if !%{disable_snmp} +# +# pcp-pmda-snmp +# %package pmda-snmp -Summary: Performance Co-Pilot (PCP) metrics for Simple Network Management Protocol -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Simple Network Management Protocol +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-snmp This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about SNMP. +#end pcp-pmda-snmp +%endif +# +# pcp-pmda-zimbra +# %package pmda-zimbra -Summary: Performance Co-Pilot (PCP) metrics for Zimbra -License: GPLv2+ -Requires: perl-PCP-PMDA = %{version}-%{release} pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Zimbra +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: perl-PCP-PMDA = %{version}-%{release} + %description pmda-zimbra This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Zimbra. +#end pcp-pmda-zimbra +# +# pcp-pmda-dm +# %package pmda-dm -Summary: Performance Co-Pilot (PCP) metrics for the Device Mapper Cache and Thin Client -License: GPLv2+ -Requires: pcp = %{version}-%{release} -BuildRequires: device-mapper-devel +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Device Mapper Cache and Thin Client +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +BuildRequires: device-mapper-devel %description pmda-dm This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Device Mapper Cache and Thin Client. +# end pcp-pmda-dm + %if !%{disable_bcc} +# +# pcp-pmda-bcc +# %package pmda-bcc -Summary: Performance Co-Pilot (PCP) metrics from eBPF/BCC modul -License: ASL 2.0 and GPLv2+ -Requires: python3-bpfcc python3-pcp pcp = %{version}-%{release} +License: Apache-2.0 AND GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics from eBPF/BCC modules +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: python3-bpfcc +Requires: python3-pcp %description pmda-bcc This package contains the PCP Performance Metrics Domain Agent (PMDA) for extracting performance metrics from eBPF/BCC Python modules. +# end pcp-pmda-bcc %endif +%if !%{disable_bpf} +# +# pcp-pmda-bpf +# %package pmda-bpf +License: Apache-2.0 AND GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics from eBPF ELF modules -License: ASL 2.0 and GPLv2+ -Requires: pcp = %{version}-%{release} libbpf +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: libbpf BuildRequires: libbpf-devel clang llvm bpftool %description pmda-bpf This package contains the PCP Performance Metrics Domain Agent (PMDA) for extracting performance metrics from eBPF ELF modules. +# end pcp-pmda-bpf +%endif +%if !%{disable_bpftrace} +# +# pcp-pmda-bpftrace +# %package pmda-bpftrace +License: Apache-2.0 AND GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics from bpftrace scripts -License: ASL 2.0 and GPLv2+ -Requires: pcp = %{version}-%{release} bpftrace >= 0.9.2 python3-pcp python3 >= 3.6 +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: bpftrace >= 0.9.2 +Requires: python3-pcp +Requires: python3 >= 3.6 %description pmda-bpftrace This package contains the PCP Performance Metrics Domain Agent (PMDA) for extracting performance metrics from bpftrace scripts. +# end pcp-pmda-bpftrace +%endif +%if !%{disable_python3} +# +# pcp-pmda-gluster +# %package pmda-gluster -Summary: Performance Co-Pilot (PCP) metrics for the Gluster filesystem -License: GPLv2+ -Requires: python3-pcp pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Gluster filesystem +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif %description pmda-gluster This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the gluster filesystem. +# end pcp-pmda-gluster +# +# pcp-pmda-nfsclient +# +%package pmda-nfsclient +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for NFS Clients +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif +%description pmda-nfsclient +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics for NFS Clients. +#end pcp-pmda-nfsclient + +# +# pcp-pmda-postgresql +# +%package pmda-postgresql +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for PostgreSQL +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +Requires: python3-psycopg2 +BuildRequires: python3-psycopg2 +%endif +%description pmda-postgresql +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the PostgreSQL database. +#end pcp-pmda-postgresql + +# +# pcp-pmda-zswap +# %package pmda-zswap -Summary: Performance Co-Pilot (PCP) metrics for compressed swap -License: GPLv2+ -Requires: python3-pcp pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for compressed swap +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif %description pmda-zswap This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about compressed swap. +# end pcp-pmda-zswap +# +# pcp-pmda-unbound +# %package pmda-unbound -Summary: Performance Co-Pilot (PCP) metrics for the Unbound DNS Resolver -License: GPLv2+ -Requires: python3-pcp pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Unbound DNS Resolver +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif %description pmda-unbound This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Unbound DNS Resolver. +# end pcp-pmda-unbound +# +# pcp-pmda-mic +# %package pmda-mic -Summary: Performance Co-Pilot (PCP) metrics for Intel MIC cards -License: GPLv2+ -Requires: python3-pcp pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Intel MIC cards +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif %description pmda-mic This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Intel MIC cards. +# end pcp-pmda-mic +# +# pcp-pmda-haproxy +# %package pmda-haproxy -Summary: Performance Co-Pilot (PCP) metrics for HAProxy -License: GPLv2+ -Requires: python3-pcp pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for HAProxy +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif %description pmda-haproxy This package contains the PCP Performance Metrics Domain Agent (PMDA) for extracting performance metrics from HAProxy over the HAProxy stats socket. +# end pcp-pmda-haproxy +# +# pcp-pmda-libvirt +# %package pmda-libvirt -Summary: Performance Co-Pilot (PCP) metrics from virtual machines -License: GPLv2+ -Requires: python3-pcp libvirt-python3 python3-lxml -BuildRequires: libvirt-python3 python3-lxml +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics from virtual machines +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: python3-pcp +Requires: libvirt-python3 python3-lxml +BuildRequires: libvirt-python3 python3-lxml %description pmda-libvirt This package contains the PCP Performance Metrics Domain Agent (PMDA) for extracting virtualisation statistics from libvirt about behaviour of guest and hypervisor machines. +# end pcp-pmda-libvirt + +# +# pcp-pmda-elasticsearch +# +%package pmda-elasticsearch +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Elasticsearch +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif +%description pmda-elasticsearch +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about Elasticsearch. +#end pcp-pmda-elasticsearch +# +# pcp-pmda-openvswitch +# %package pmda-openvswitch +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics for Open vSwitch -License: GPLv2+ -Requires: pcp = %{version}-%{release} python3-pcp +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif %description pmda-openvswitch This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from Open vSwitch. +#end pcp-pmda-openvswitch +# +# pcp-pmda-rabbitmq +# %package pmda-rabbitmq +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics for RabbitMQ queues -License: GPLv2+ -Requires: pcp = %{version}-%{release} python3-pcp +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif %description pmda-rabbitmq This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about RabbitMQ message queues. +#end pcp-pmda-rabbitmq +# +# pcp-pmda-lio +# %package pmda-lio -Summary: Performance Co-Pilot (PCP) metrics for the LIO subsystem -License: GPLv2+ -Requires: python3-pcp python3-rtslib pcp = %{version}-%{release} -BuildRequires: python3-rtslib +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the LIO subsystem +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +Requires: python3-rtslib +BuildRequires: python3-rtslib +%endif %description pmda-lio This package provides a PMDA to gather performance metrics from the kernels iSCSI target interface (LIO). The metrics are stored by LIO within the Linux kernels configfs filesystem. The PMDA provides per LUN level stats, and a summary instance per iSCSI target, which aggregates all LUN metrics within the target. +#end pcp-pmda-lio +# +# pcp-pmda-openmetrics +# %package pmda-openmetrics +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics from OpenMetrics endpoints -License: GPLv2+ -Requires: pcp = %{version}-%{release} python3-pcp python3-requests +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +Requires: python3-requests BuildRequires: python3-requests -Obsoletes: pcp-pmda-prometheus < 5.0.0 pcp-pmda-vmware < 5.3.5 +%endif +Obsoletes: pcp-pmda-prometheus < 5.0.0 Provides: pcp-pmda-prometheus < 5.0.0 +Obsoletes: pcp-pmda-vmware < 5.3.5 + %description pmda-openmetrics This package contains the PCP Performance Metrics Domain Agent (PMDA) for extracting metrics from OpenMetrics (https://openmetrics.io/) endpoints. +#end pcp-pmda-openmetrics + +# +# pcp-pmda-lmsensors +# +%package pmda-lmsensors +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for hardware sensors +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: lm_sensors +%if !%{disable_python3} +Requires: python3-pcp +%endif +# rewritten in python, so there is no longer a debuginfo package +Obsoletes: pcp-pmda-lmsensors-debuginfo < 4.2.0 +%description pmda-lmsensors +This package contains the PCP Performance Metrics Domain Agent (PMDA) for +collecting metrics about the Linux hardware monitoring sensors. +# end pcp-pmda-lmsensors +# +# pcp-pmda-netcheck +# %package pmda-netcheck +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics for simple network checks -License: GPLv2+ -Requires: pcp = %{version}-%{release} python3-pcp +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +%endif %description pmda-netcheck This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from simple network checks. +# end pcp-pmda-netcheck +%endif +%if !%{disable_mongodb} +# +# pcp-pmda-mongodb +# %package pmda-mongodb +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics for MongoDB -License: GPLv2+ -Requires: pcp = %{version}-%{release} python3-pcp +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +Requires: python3-pymongo +BuildRequires: python3-pymongo +%endif %description pmda-mongodb This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from MongoDB. +# end pcp-pmda-mongodb +%endif %if !%{disable_mssql} +# +# pcp-pmda-mssql +# %package pmda-mssql -License: GPLv2+ +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) metrics for Microsoft SQL Server URL: https://pcp.io Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} Requires: python3-pcp +Requires: python3-pyodbc +BuildRequires: python3-pyodbc +%endif %description pmda-mssql This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from Microsoft SQL Server. +# end pcp-pmda-mssql %endif +%if !%{disable_json} +# +# pcp-pmda-json +# %package pmda-json -Summary: Performance Co-Pilot (PCP) metrics for JSON data -License: GPLv2+ -Requires: python3-pcp python3-jsonpointer python3-six -BuildRequires: python3-jsonpointer python3-six +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for JSON data +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +Requires: python3-pcp +Requires: python3-jsonpointer python3-six +BuildRequires: python3-jsonpointer python3-six +%endif %description pmda-json This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics output in JSON. +# end pcp-pmda-json +%endif +# +# C pmdas +# pcp-pmda-apache +# %package pmda-apache -Summary: Performance Co-Pilot (PCP) metrics for the Apache webserver -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Apache webserver +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-apache This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Apache webserver. +# end pcp-pmda-apache +# +# pcp-pmda-bash +# %package pmda-bash -Summary: Performance Co-Pilot (PCP) metrics for the Bash shell -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Bash shell +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-bash This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Bash shell. +# end pcp-pmda-bash +# +# pcp-pmda-cifs +# %package pmda-cifs -Summary: Performance Co-Pilot (PCP) metrics for the CIFS protocol -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the CIFS protocol +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-cifs This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Common Internet Filesytem. +# end pcp-pmda-cifs +# +# pcp-pmda-cisco +# %package pmda-cisco -Summary: Performance Co-Pilot (PCP) metrics for Cisco routers -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Cisco routers +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-cisco This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Cisco routers. - +# end pcp-pmda-cisco + +# +# pcp-pmda-farm +# +%package pmda-farm +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Seagate FARM Log metrics +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: smartmontools +%description pmda-farm +This package contains the PCP Performance Metric Domain Agent (PMDA) for +collecting metrics from Seagate Hard Drive vendor specific Field Accessible +Reliability Metrics (FARM) Log making use of data from the smartmontools +package. +#end pcp-pmda-farm + +# +# pcp-pmda-gfs2 +# %package pmda-gfs2 -Summary: Performance Co-Pilot (PCP) metrics for the GFS2 filesystem -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the GFS2 filesystem +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-gfs2 This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the Global Filesystem v2. +# end pcp-pmda-gfs2 -%package pmda-lmsensors -Summary: Performance Co-Pilot (PCP) metrics for hardware sensors -License: GPLv2+ -Requires: pcp = %{version}-%{release} python3-pcp lm_sensors -%description pmda-lmsensors +# +# pcp-pmda-hacluster +# +%package pmda-hacluster +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for High Availability Clusters +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%description pmda-hacluster This package contains the PCP Performance Metrics Domain Agent (PMDA) for -collecting metrics about the Linux hardware monitoring sensors. +collecting metrics about linux High Availability (HA) Clusters. +# end pcp-pmda-hacluster +# +# pcp-pmda-logger +# %package pmda-logger -Summary: Performance Co-Pilot (PCP) metrics from arbitrary log files -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics from arbitrary log files +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-logger This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from a specified set of log files (or pipes). The PMDA supports both sampled and event-style metrics. +# end pcp-pmda-logger +# +# pcp-pmda-mailq +# %package pmda-mailq -Summary: Performance Co-Pilot (PCP) metrics for the sendmail queue -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the sendmail queue +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-mailq This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about email queues managed by sendmail. +# end pcp-pmda-mailq +# +# pcp-pmda-mounts +# %package pmda-mounts -Summary: Performance Co-Pilot (PCP) metrics for filesystem mounts -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for filesystem mounts +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-mounts This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about filesystem mounts. +# end pcp-pmda-mounts +# +# pcp-pmda-nvidia-gpu +# %package pmda-nvidia-gpu -Summary: Performance Co-Pilot (PCP) metrics for the Nvidia GPU -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the Nvidia GPU +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-nvidia-gpu This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Nvidia GPUs. +# end pcp-pmda-nvidia-gpu + +%if !%{disable_resctrl} +# +# pcp-pmda-resctrl +# +%package pmda-resctrl +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics from Linux resource control +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%description pmda-resctrl +This package contains the PCP Performance Metric Domain Agent (PMDA) for +collecting metrics from the Linux kernel resource control functionality. +#end pcp-pmda-resctrl +%endif +# +# pcp-pmda-roomtemp +# %package pmda-roomtemp -Summary: Performance Co-Pilot (PCP) metrics for the room temperature -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for the room temperature +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-roomtemp This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about the room temperature. +# end pcp-pmda-roomtemp +# +# pcp-pmda-sendmail +# %package pmda-sendmail -Summary: Performance Co-Pilot (PCP) metrics for Sendmail -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for Sendmail +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-sendmail This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about Sendmail traffic. +# end pcp-pmda-sendmail +# +# pcp-pmda-shping +# %package pmda-shping -Summary: Performance Co-Pilot (PCP) metrics for shell command responses -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for shell command responses +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-shping This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about quality of service and response time measurements of arbitrary shell commands. +# end pcp-pmda-shping +# +# pcp-pmda-smart +# %package pmda-smart -Summary: Performance Co-Pilot (PCP) metrics for S.M.A.R.T values -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for S.M.A.R.T values +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: smartmontools %description pmda-smart This package contains the PCP Performance Metric Domain Agent (PMDA) for collecting metrics of disk S.M.A.R.T values making use of data from the smartmontools package. +#end pcp-pmda-smart +# +# pcp-pmda-sockets +# %package pmda-sockets +License: GPL-2.0-or-later Summary: Performance Co-Pilot (PCP) per-socket metrics -License: GPLv2+ -Requires: pcp = %{version}-%{release} +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} Requires: iproute %description pmda-sockets This package contains the PCP Performance Metric Domain Agent (PMDA) for collecting per-socket statistics, making use of utilities such as 'ss'. +#end pcp-pmda-sockets -%package pmda-hacluster -Summary: Performance Co-Pilot (PCP) metrics for High Availability Clusters -License: GPLv2+ -Requires: pcp = %{version}-%{release} -%description pmda-hacluster -This package contains the PCP Performance Metrics Domain Agent (PMDA) for -collecting metrics about linux High Availability (HA) Clusters. - +# +# pcp-pmda-summary +# %package pmda-summary -Summary: Performance Co-Pilot (PCP) summary metrics from pmie -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) summary metrics from pmie +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-summary This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about other installed PMDAs. +# end pcp-pmda-summary +%if !%{disable_systemd} +# +# pcp-pmda-systemd +# %package pmda-systemd -Summary: Performance Co-Pilot (PCP) metrics from the Systemd journal -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics from the Systemd journal +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-systemd This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics from the Systemd journal. +# end pcp-pmda-systemd +%endif +# +# pcp-pmda-trace +# %package pmda-trace -Summary: Performance Co-Pilot (PCP) metrics for application tracing -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics for application tracing +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-trace This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about trace performance data in applications. +# end pcp-pmda-trace +# +# pcp-pmda-weblog +# %package pmda-weblog -Summary: Performance Co-Pilot (PCP) metrics from web server logs -License: GPLv2+ -Requires: pcp = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) metrics from web server logs +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} %description pmda-weblog This package contains the PCP Performance Metrics Domain Agent (PMDA) for collecting metrics about web server logs. +# end pcp-pmda-weblog +# end C pmdas %package zeroconf -Summary: Performance Co-Pilot (PCP) Zeroconf Package -License: GPLv2+ -Requires: pcp pcp-doc pcp-system-tools pcp-pmda-dm pcp-pmda-nfsclient pcp-pmda-openmetrics +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) Zeroconf Package +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: pcp-system-tools = %{version}-%{release} +Requires: pcp-doc = %{version}-%{release} +Requires: pcp-pmda-dm = %{version}-%{release} +%if !%{disable_python3} +Requires: pcp-pmda-nfsclient = %{version}-%{release} +Requires: pcp-pmda-openmetrics = %{version}-%{release} +%endif %description zeroconf This package contains configuration tweaks and files to increase metrics gathering frequency, several extended pmlogger configurations, as well as automated pmie diagnosis, alerting and self-healing for the localhost. +%if !%{disable_python3} +# +# python3-pcp. This is the PCP library bindings for python3. +# %package -n python3-pcp -Summary: Performance Co-Pilot (PCP) Python3 bindings and documentation -License: GPLv2+ -Requires: pcp = %{version}-%{release} python3 +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) Python3 bindings and documentation +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: python3 + %description -n python3-pcp -This package contains language bindings for the Performance Metric API (PMAPI) monitoring -tool and Performance Metric Domain Agent (PMDA) collector tool written in Python3. +This python PCP module contains the language bindings for +Performance Metric API (PMAPI) monitor tools and Performance +Metric Domain Agent (PMDA) collector tools written in Python3. +%endif +# +# pcp-system-tools +# %package system-tools -Summary: Performance Co-Pilot (PCP) System and Monitoring Tools -License: GPLv2+ -Requires: python3-pcp = %{version}-%{release} pcp = %{version}-%{release} -Requires: pcp-zeroconf = %{version}-%{release} -Provides: /usr/bin/dstat dstat = %{version}-%{release} +License: GPL-2.0-or-later +Summary: Performance Co-Pilot (PCP) System and Monitoring Tools +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +%if !%{disable_python3} +%if !%{disable_python3} +Requires: python3-pcp = %{version}-%{release} +%endif +%if !%{disable_dstat} +# https://fedoraproject.org/wiki/Packaging:Guidelines "Renaming/Replacing Existing Packages" +Provides: dstat = %{version}-%{release} +Provides: /usr/bin/dstat +Obsoletes: dstat <= 0.8 +%endif +%endif + %description system-tools This PCP module contains additional system monitoring tools written in the Python language. +%if !%{disable_qt} +# +# pcp-gui package for Qt tools +# %package gui -Summary: Visualization tools for the Performance Co-Pilot toolkit -License: GPLv2+ and LGPLv2+ and LGPLv2+ with exceptions -BuildRequires: hicolor-icon-theme -Requires: pcp = %{version}-%{release} liberation-sans-fonts +License: GPL-2.0-or-later AND LGPL-2.1-or-later AND LGPL-2.1-or-later WITH Qwt-exception-1.0 +Summary: Visualization tools for the Performance Co-Pilot toolkit +URL: https://pcp.io +Requires: pcp = %{version}-%{release} pcp-libs = %{version}-%{release} +Requires: liberation-sans-fonts +BuildRequires: hicolor-icon-theme + %description gui Visualization tools for the Performance Co-Pilot toolkit. The pcp-gui package primarily includes visualization tools for monitoring systems using live and archived Performance Co-Pilot (PCP) sources. +%endif + +# +# pcp-help package +# +%package help +License: GPL-2.0-or-later AND CC-BY-3.0 +Summary: Documentation and tutorial for the Performance Co-Pilot +Buildarch: noarch +Requires: man info +Provides: pcp-doc = %{version}-%{release} +Obsoletes: pcp-doc < %{version}-%{release} +%description help +Documentation and tutorial for the Performance Co-Pilot +Performance Co-Pilot (PCP) provides a framework and services to support +system-level performance monitoring and performance management. +The pcp-doc package provides useful information on using and +configuring the Performance Co-Pilot (PCP) toolkit for system +level performance management. It includes tutorials, HOWTOs, +and other detailed documentation about the internals of core +PCP utilities and daemons, and the PCP graphical tools. + +# +# pcp-selinux package +# +%if !%{disable_selinux} %package selinux -Summary: PCP selinux policy -License: GPLv2+ and CC-BY -BuildRequires: selinux-policy-devel selinux-policy-targeted setools-console -Requires: policycoreutils selinux-policy-targeted +License: GPL-2.0-or-later AND CC-BY-3.0 +Summary: Selinux policy package +URL: https://pcp.io +BuildRequires: selinux-policy-devel +BuildRequires: selinux-policy-targeted +BuildRequires: setools-console +Requires: policycoreutils selinux-policy-targeted + %description selinux This package contains SELinux support for PCP. The package contains interface rules, type enforcement and file context adjustments for an updated policy package. +%endif + %prep %autosetup -p1 - %build +# the buildsubdir macro gets defined in %%setup and is apparently only available in the next step (i.e. the %%build step) %global __strip %{_builddir}/%{?buildsubdir}/build/rpm/custom-strip +# fix up build version _build=`echo %{release} | sed -e 's/\..*$//'` sed -i "/PACKAGE_BUILD/s/=[0-9]*/=$_build/" VERSION.pcp -%configure %{?_with_initd} %{?_with_doc} %{?_with_dstat} %{?_with_ib} %{?_with_podman} %{?_with_perfevent} %{?_with_bcc} %{?_with_bpf} %{?_with_bpftrace} %{?_with_json} %{?_with_snmp} %{?_with_nutcracker} +export PYTHON=python%{?default_python} +%configure %{?_with_initd} %{?_with_doc} %{?_with_dstat} %{?_with_ib} %{?_with_statsd} %{?_with_perfevent} %{?_with_bcc} %{?_with_bpf} %{?_with_bpftrace} %{?_with_json} %{?_with_mongodb} %{?_with_snmp} %{?_with_nutcracker} %{?_with_python2} make %{?_smp_mflags} default_pcp %install - rm -Rf $RPM_BUILD_ROOT BACKDIR=`pwd` NO_CHOWN=true @@ -1054,18 +2058,24 @@ export NO_CHOWN DIST_ROOT DIST_MANIFEST DIST_TMPFILES rm -f $DIST_MANIFEST $DIST_TMPFILES make install_pcp +### TODO: remove these by incorporating into the actual build + +# Fix stuff we do/don't want to ship rm -f $RPM_BUILD_ROOT/%{_libdir}/*.a sed -i -e '/\.a$/d' $DIST_MANIFEST +# remove sheet2pcp until BZ 830923 and BZ 754678 are resolved. rm -f $RPM_BUILD_ROOT/%{_bindir}/sheet2pcp $RPM_BUILD_ROOT/%{_mandir}/man1/sheet2pcp.1* sed -i -e '/sheet2pcp/d' $DIST_MANIFEST +# remove {config,platform}sz.h as these are not multilib friendly. rm -f $RPM_BUILD_ROOT/%{_includedir}/pcp/configsz.h sed -i -e '/configsz.h/d' $DIST_MANIFEST rm -f $RPM_BUILD_ROOT/%{_includedir}/pcp/platformsz.h sed -i -e '/platformsz.h/d' $DIST_MANIFEST %if %{disable_mssql} +# remove pmdamssql on platforms lacking MSODBC driver packages. rm -fr $RPM_BUILD_ROOT/%{_confdir}/mssql rm -fr $RPM_BUILD_ROOT/%{_confdir}/pmieconf/mssql rm -fr $RPM_BUILD_ROOT/%{_ieconfdir}/mssql @@ -1073,13 +2083,21 @@ rm -fr $RPM_BUILD_ROOT/%{_pmdasdir}/mssql rm -fr $RPM_BUILD_ROOT/%{_pmdasexecdir}/mssql %endif +%if !%{disable_qt} desktop-file-validate $RPM_BUILD_ROOT/%{_datadir}/applications/pmchart.desktop +%endif + +# Fedora and RHEL default local only access for pmcd and pmlogger +sed -i -e '/^# .*_LOCAL=1/s/^# //' $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/{pmcd,pmlogger} +# default chkconfig off (all RPM platforms) for f in $RPM_BUILD_ROOT/%{_initddir}/{pcp,pmcd,pmlogger,pmie,pmproxy}; do test -f "$f" || continue sed -i -e '/^# chkconfig/s/:.*$/: - 95 05/' -e '/^# Default-Start:/s/:.*$/:/' $f done +### end TODO + PCP_GUI='pmchart|pmconfirm|pmdumptext|pmmessage|pmquery|pmsnap|pmtime' PCP_CONF=$BACKDIR/src/include/pcp.conf @@ -1089,6 +2107,9 @@ CFGFILELIST=`ls -1 $BACKDIR/debian/pcp-conf.{install,dirs}` LIBFILELIST=`ls -1 $BACKDIR/debian/lib*.{install,dirs} | grep -F -v -- -dev.` DEVFILELIST=`ls -1 $BACKDIR/debian/lib*-dev.{install,dirs}` +# Package split: pcp{-conf,-libs,-libs-devel,-testsuite,-import-*,-export-*}... +# The above list is ordered by file selection; files for each package are +# removed from a global set, then the base package catches all remaining. sed -e 's/^/\//' $CFGFILELIST >pcp-conf-files sed -e 's/^/\//' $LIBFILELIST >pcp-libs-files sed -e 's/^/\//' $DEVFILELIST >pcp-devel-files @@ -1104,15 +2125,26 @@ sed -i '/.a$/d' pcp-devel-files sed -i '/\/man\//d' pcp-devel-files sed -i '/\/include\//d' pcp-devel-files - +%ifarch x86_64 ppc64 ppc64le aarch64 s390x sed -i -e 's/usr\/lib\//usr\/lib64\//' pcp-libs-files sed -i -e 's/usr\/lib\//usr\/lib64\//' pcp-devel-files sed -i -e 's/usr\/lib\//usr\/lib64\//' pcp-libs-devel-files +%endif +%ifarch ia64 +%if "%{_vendor}" != "suse" +sed -i -e 's/usr\/lib\//usr\/lib64\//' pcp-libs-files +sed -i -e 's/usr\/lib\//usr\/lib64\//' pcp-devel-files +sed -i -e 's/usr\/lib\//usr\/lib64\//' pcp-libs-devel-files +%endif +%endif - +# some special cases for devel awk '{print $NF}' $DIST_MANIFEST |\ grep -E 'pcp\/(examples|demos)|(etc/pcp|pcp/pmdas)\/(sample|simple|trivial|txmon)|bin/(pmdbg|pmclient|pmerr|genpmda)' | grep -E -v tutorials >>pcp-devel-files +# Patterns for files to be marked %%config(noreplace). +# Note: /etc/pcp.{conf,env,sh} are %%config but not noreplace +# and are treated specially below. cat >confpath.list <pcp-help-files -total_manifest | keep 'testsuite|etc/systemd/system|libpcp_fault|pcp/fault.h' >pcp-testsuite-files +total_manifest | keep 'testsuite|pcpqa|etc/systemd/system|libpcp_fault|pcp/fault.h' >pcp-testsuite-files basic_manifest | keep "$PCP_GUI|pcp-gui|applications|pixmaps|hicolor" | cull 'pmtime.h' >pcp-gui-files -basic_manifest | keep 'selinux' | cull 'tmp|GNUselinuxdefs' >pcp-selinux-files +basic_manifest | keep 'selinux' | cull 'tmp|testsuite' >pcp-selinux-files basic_manifest | keep 'zeroconf|daily[-_]report|/sa$' >pcp-zeroconf-files basic_manifest | grep -E -e 'pmiostat|pmrep|dstat|htop|pcp2csv' \ - -e 'pcp-atop|pcp-dmcache|pcp-dstat|pcp-free|pcp-htop' \ - -e 'pcp-ipcs|pcp-iostat|pcp-lvmcache|pcp-mpstat' \ - -e 'pcp-numastat|pcp-pidstat|pcp-shping|pcp-tapestat' \ - -e 'pcp-uptime|pcp-verify|pcp-ss' | \ + -e 'pcp-atop|pcp-dmcache|pcp-dstat|pcp-free' \ + -e 'pcp-htop|pcp-ipcs|pcp-iostat|pcp-lvmcache|pcp-mpstat' \ + -e 'pcp-numastat|pcp-pidstat|pcp-shping|pcp-ss' \ + -e 'pcp-tapestat|pcp-uptime|pcp-verify' | \ cull 'selinux|pmlogconf|pmieconf|pmrepconf' >pcp-system-tools-files - +basic_manifest | keep 'geolocate' >pcp-geolocate-files basic_manifest | keep 'sar2pcp' >pcp-import-sar2pcp-files basic_manifest | keep 'iostat2pcp' >pcp-import-iostat2pcp-files basic_manifest | keep 'sheet2pcp' >pcp-import-sheet2pcp-files @@ -1155,6 +2194,7 @@ basic_manifest | keep 'ganglia2pcp' >pcp-import-ganglia2pcp-files basic_manifest | keep 'collectl2pcp' >pcp-import-collectl2pcp-files basic_manifest | keep 'pcp2elasticsearch' >pcp-export-pcp2elasticsearch-files basic_manifest | keep 'pcp2influxdb' >pcp-export-pcp2influxdb-files +basic_manifest | keep 'pcp2xlsx' >pcp-export-pcp2xlsx-files basic_manifest | keep 'pcp2graphite' >pcp-export-pcp2graphite-files basic_manifest | keep 'pcp2json' >pcp-export-pcp2json-files basic_manifest | keep 'pcp2spark' >pcp-export-pcp2spark-files @@ -1178,6 +2218,7 @@ basic_manifest | keep '(etc/pcp|pmdas)/docker(/|$)' >pcp-pmda-docker-files basic_manifest | keep '(etc/pcp|pmdas)/ds389log(/|$)' >pcp-pmda-ds389log-files basic_manifest | keep '(etc/pcp|pmdas)/ds389(/|$)' >pcp-pmda-ds389-files basic_manifest | keep '(etc/pcp|pmdas)/elasticsearch(/|$)' >pcp-pmda-elasticsearch-files +basic_manifest | keep '(etc/pcp|pmdas)/farm(/|$)' >pcp-pmda-farm-files basic_manifest | keep '(etc/pcp|pmdas)/gfs2(/|$)' >pcp-pmda-gfs2-files basic_manifest | keep '(etc/pcp|pmdas)/gluster(/|$)' >pcp-pmda-gluster-files basic_manifest | keep '(etc/pcp|pmdas)/gpfs(/|$)' >pcp-pmda-gpfs-files @@ -1208,7 +2249,7 @@ basic_manifest | keep '(etc/pcp|pmdas)/nginx(/|$)' >pcp-pmda-nginx-files basic_manifest | keep '(etc/pcp|pmdas)/nutcracker(/|$)' >pcp-pmda-nutcracker-files basic_manifest | keep '(etc/pcp|pmdas)/nvidia(/|$)' >pcp-pmda-nvidia-files basic_manifest | keep '(etc/pcp|pmdas)/openmetrics(/|$)' >pcp-pmda-openmetrics-files -basic_manifest | keep '(etc/pcp|pmdas)/openvswitch(/|$)' >pcp-pmda-openvswitch-files +basic_manifest | keep '(etc/pcp|pmdas|pmieconf)/openvswitch(/|$)' >pcp-pmda-openvswitch-files basic_manifest | keep '(etc/pcp|pmdas)/oracle(/|$)' >pcp-pmda-oracle-files basic_manifest | keep '(etc/pcp|pmdas)/pdns(/|$)' >pcp-pmda-pdns-files basic_manifest | keep '(etc/pcp|pmdas)/perfevent(/|$)' >pcp-pmda-perfevent-files @@ -1217,6 +2258,7 @@ basic_manifest | keep '(etc/pcp|pmdas)/postfix(/|$)' >pcp-pmda-postfix-files basic_manifest | keep '(etc/pcp|pmdas)/postgresql(/|$)' >pcp-pmda-postgresql-files basic_manifest | keep '(etc/pcp|pmdas)/rabbitmq(/|$)' >pcp-pmda-rabbitmq-files basic_manifest | keep '(etc/pcp|pmdas)/redis(/|$)' >pcp-pmda-redis-files +basic_manifest | keep '(etc/pcp|pmdas)/resctrl(/|$)|sys-fs-resctrl' >pcp-pmda-resctrl-files basic_manifest | keep '(etc/pcp|pmdas)/roomtemp(/|$)' >pcp-pmda-roomtemp-files basic_manifest | keep '(etc/pcp|pmdas)/rpm(/|$)' >pcp-pmda-rpm-files basic_manifest | keep '(etc/pcp|pmdas)/rsyslog(/|$)' >pcp-pmda-rsyslog-files @@ -1227,6 +2269,7 @@ basic_manifest | keep '(etc/pcp|pmdas)/slurm(/|$)' >pcp-pmda-slurm-files basic_manifest | keep '(etc/pcp|pmdas)/smart(/|$)' >pcp-pmda-smart-files basic_manifest | keep '(etc/pcp|pmdas)/snmp(/|$)' >pcp-pmda-snmp-files basic_manifest | keep '(etc/pcp|pmdas)/sockets(/|$)' >pcp-pmda-sockets-files +basic_manifest | keep '(etc/pcp|pmdas)/statsd(/|$)' >pcp-pmda-statsd-files basic_manifest | keep '(etc/pcp|pmdas)/summary(/|$)' >pcp-pmda-summary-files basic_manifest | keep '(etc/pcp|pmdas)/systemd(/|$)' >pcp-pmda-systemd-files basic_manifest | keep '(etc/pcp|pmdas)/trace(/|$)' >pcp-pmda-trace-files @@ -1242,6 +2285,7 @@ for pmda_package in \ cifs cisco \ dbping denki docker dm ds389 ds389log \ elasticsearch \ + farm \ gfs2 gluster gpfs gpsd \ hacluster haproxy \ infiniband \ @@ -1252,9 +2296,9 @@ for pmda_package in \ nutcracker nvidia \ openmetrics openvswitch oracle \ pdns perfevent podman postfix postgresql \ - rabbitmq redis roomtemp rpm rsyslog \ + rabbitmq redis resctrl roomtemp rpm rsyslog \ samba sendmail shping slurm smart snmp \ - sockets summary systemd \ + sockets statsd summary systemd \ unbound \ trace \ weblog \ @@ -1271,14 +2315,14 @@ done for export_package in \ pcp2elasticsearch pcp2graphite pcp2influxdb pcp2json \ - pcp2spark pcp2xml pcp2zabbix zabbix-agent ; \ + pcp2spark pcp2xlsx pcp2xml pcp2zabbix zabbix-agent ; \ do \ export_packages="$export_packages pcp-export-$export_package"; \ done for subpackage in \ pcp-conf pcp-gui pcp-help pcp-libs pcp-devel pcp-libs-devel \ - pcp-selinux pcp-system-tools pcp-testsuite pcp-zeroconf \ + pcp-geolocate pcp-selinux pcp-system-tools pcp-testsuite pcp-zeroconf \ $pmda_packages $import_packages $export_packages ; \ do \ echo $subpackage >> packages.list; \ @@ -1333,6 +2377,7 @@ $1 == "f" { printf ("%%%%attr(%s,%s,%s) %s\n", $2, $3, $4, $6) >> f } $1 == "l" { +%if !%{disable_systemd} if (match ($3, "'$PCP_VAR_DIR'")) { print $3 >> p"-tmpfiles"; if (length(tmpfiles[p]) == 0) { @@ -1340,9 +2385,11 @@ $1 == "l" { tmpfiles[p] = p; } } +%endif print $3 >> f; }' +%if !%{disable_systemd} mkdir -p $DIST_ROOT/$PCP_SYSTEMDTMPFILES_DIR sort -u $DIST_TMPFILES | awk ' function loadtmpfiles(files) { @@ -1365,6 +2412,8 @@ BEGIN { }' %if %{disable_mssql} +# TODO: integrate better into the PCP build (via autoconf) +# so that this and other mssql artifacts are not generated. rm -f pcp-pmda-mssql.conf %endif @@ -1372,45 +2421,77 @@ for tmpfile in *.conf ; \ do \ mv $tmpfile $DIST_ROOT/$PCP_SYSTEMDTMPFILES_DIR/$tmpfile; \ done +%endif -find %{buildroot} -type f -name '*.so' -exec strip '{}' ';' - -%pre devel -test -d %{_testsdir} || mkdir -p -m 755 %{_testsdir} +%pre testsuite +%if !%{disable_selinux} +%selinux_relabel_pre -s targeted +%endif getent group pcpqa >/dev/null || groupadd -r pcpqa getent passwd pcpqa >/dev/null || \ useradd -c "PCP Quality Assurance" -g pcpqa -d %{_testsdir} -M -r -s /bin/bash pcpqa 2>/dev/null +test -d %{_testsdir} || mkdir -p -m 755 %{_testsdir} chown -R pcpqa:pcpqa %{_testsdir} 2>/dev/null exit 0 -%post devel +%post testsuite +%if !%{disable_selinux} +PCP_SELINUX_DIR=%{_selinuxdir} +semodule -r pcpqa >/dev/null 2>&1 || true +%selinux_modules_install -s targeted "$PCP_SELINUX_DIR/pcp-testsuite.pp.bz2" +%selinux_relabel_post -s targeted +%endif chown -R pcpqa:pcpqa %{_testsdir} 2>/dev/null -systemctl restart pmcd >/dev/null 2>&1 -systemctl restart pmlogger >/dev/null 2>&1 -systemctl enable pmcd >/dev/null 2>&1 -systemctl enable pmlogger >/dev/null 2>&1 +%if !%{disable_systemd} + systemctl restart pmcd pmlogger >/dev/null 2>&1 + systemctl enable pmcd pmlogger >/dev/null 2>&1 +%else + /sbin/chkconfig --add pmcd >/dev/null 2>&1 + /sbin/chkconfig --add pmlogger >/dev/null 2>&1 + /sbin/service pmcd condrestart + /sbin/service pmlogger condrestart +%endif exit 0 +%if !%{disable_selinux} +%postun testsuite +if [ $1 -eq 0 ]; then + %selinux_modules_uninstall -s targeted pcp-testsuite + %selinux_relabel_post -s targeted +fi +%endif + %pre getent group pcp >/dev/null || groupadd -r pcp getent passwd pcp >/dev/null || \ useradd -c "Performance Co-Pilot" -g pcp -d %{_localstatedir}/lib/pcp -M -r -s /sbin/nologin pcp exit 0 +%if !%{disable_systemd} %preun pmda-systemd %{pmda_remove "$1" "systemd"} +%endif %preun pmda-infiniband %{pmda_remove "$1" "infiniband"} +%if !%{disable_perfevent} %preun pmda-perfevent %{pmda_remove "$1" "perfevent"} +%endif %preun pmda-podman %{pmda_remove "$1" "podman"} +%if !%{disable_statsd} +%preun pmda-statsd +%{pmda_remove "$1" "statsd"} +%endif + +%if !%{disable_json} %preun pmda-json %{pmda_remove "$1" "json"} +%endif %preun pmda-nginx %{pmda_remove "$1" "nginx"} @@ -1433,8 +2514,10 @@ exit 0 %preun pmda-rabbitmq %{pmda_remove "$1" "rabbitmq"} +%if !%{disable_snmp} %preun pmda-snmp %{pmda_remove "$1" "snmp"} +%endif %preun pmda-mysql %{pmda_remove "$1" "mysql"} @@ -1496,8 +2579,10 @@ exit 0 %preun pmda-nfsclient %{pmda_remove "$1" "nfsclient"} +%if !%{disable_nutcracker} %preun pmda-nutcracker %{pmda_remove "$1" "nutcracker"} +%endif %preun pmda-pdns %{pmda_remove "$1" "pdns"} @@ -1522,12 +2607,17 @@ exit 0 %{pmda_remove "$1" "bcc"} %endif +%if !%{disable_bpf} %preun pmda-bpf %{pmda_remove "$1" "bpf"} +%endif +%if !%{disable_bpftrace} %preun pmda-bpftrace %{pmda_remove "$1" "bpftrace"} +%endif +%if !%{disable_python3} %preun pmda-gluster %{pmda_remove "$1" "gluster"} @@ -1549,8 +2639,10 @@ exit 0 %preun pmda-lmsensors %{pmda_remove "$1" "lmsensors"} +%if !%{disable_mongodb} %preun pmda-mongodb %{pmda_remove "$1" "mongodb"} +%endif %if !%{disable_mssql} %preun pmda-mssql @@ -1560,6 +2652,8 @@ exit 0 %preun pmda-netcheck %{pmda_remove "$1" "netcheck"} +%endif + %preun pmda-apache %{pmda_remove "$1" "apache"} @@ -1572,9 +2666,15 @@ exit 0 %preun pmda-cisco %{pmda_remove "$1" "cisco"} +%preun pmda-farm +%{pmda_remove "$1" "farm"} + %preun pmda-gfs2 %{pmda_remove "$1" "gfs2"} +%preun pmda-hacluster +%{pmda_remove "$1" "hacluster"} + %preun pmda-logger %{pmda_remove "$1" "logger"} @@ -1587,6 +2687,11 @@ exit 0 %preun pmda-nvidia-gpu %{pmda_remove "$1" "nvidia"} +%if !%{disable_resctrl} +%preun pmda-resctrl +%{pmda_remove "$1" "resctrl"} +%endif + %preun pmda-roomtemp %{pmda_remove "$1" "roomtemp"} @@ -1602,9 +2707,6 @@ exit 0 %preun pmda-sockets %{pmda_remove "$1" "sockets"} -%preun pmda-hacluster -%{pmda_remove "$1" "hacluster"} - %preun pmda-summary %{pmda_remove "$1" "summary"} @@ -1614,35 +2716,27 @@ exit 0 %preun pmda-weblog %{pmda_remove "$1" "weblog"} -%preun zeroconf -if [ "$1" -eq 0 ] -then - %systemd_preun pmlogger_daily_report.timer - %systemd_preun pmlogger_daily_report.service -fi - %preun if [ "$1" -eq 0 ] then - %systemd_preun pmlogger.service - %systemd_preun pmlogger_farm.service - %systemd_preun pmie.service - %systemd_preun pmie_farm.service - %systemd_preun pmproxy.service - %systemd_preun pmcd.service - %systemd_preun pmie_daily.timer - %systemd_preun pmlogger_daily.timer - %systemd_preun pmlogger_check.timer - %systemd_preun pmlogger_farm_check.timer - %systemd_preun pmie_farm_check.timer - - systemctl stop pmlogger.service >/dev/null 2>&1 - systemctl stop pmlogger_farm.service >/dev/null 2>&1 - systemctl stop pmie.service >/dev/null 2>&1 - systemctl stop pmie_farm.service >/dev/null 2>&1 - systemctl stop pmproxy.service >/dev/null 2>&1 - systemctl stop pmcd.service >/dev/null 2>&1 - + # stop daemons before erasing the package + %if !%{disable_systemd} + %systemd_preun pmlogger_check.timer pmlogger_daily.timer pmlogger_farm_check.timer pmlogger_farm_check.service pmlogger_farm.service pmlogger.service pmie_check.timer pmie_daily.timer pmie_farm_check.timer pmie_farm_check.service pmie_farm.service pmie.service pmproxy.service pmfind.service pmcd.service + + systemctl stop pmlogger.service pmie.service pmproxy.service pmfind.service pmcd.service >/dev/null 2>&1 + %else + /sbin/service pmlogger stop >/dev/null 2>&1 + /sbin/service pmie stop >/dev/null 2>&1 + /sbin/service pmproxy stop >/dev/null 2>&1 + /sbin/service pmcd stop >/dev/null 2>&1 + + /sbin/chkconfig --del pcp >/dev/null 2>&1 + /sbin/chkconfig --del pmcd >/dev/null 2>&1 + /sbin/chkconfig --del pmlogger >/dev/null 2>&1 + /sbin/chkconfig --del pmie >/dev/null 2>&1 + /sbin/chkconfig --del pmproxy >/dev/null 2>&1 + %endif + # cleanup namespace state/flag, may still exist PCP_PMNS_DIR=%{_pmnsdir} rm -f "$PCP_PMNS_DIR/.NeedRebuild" >/dev/null 2>&1 fi @@ -1651,74 +2745,78 @@ fi PCP_PMDAS_DIR=%{_pmdasdir} PCP_SYSCONFIG_DIR=%{_sysconfdir}/sysconfig PCP_PMCDCONF_PATH=%{_confdir}/pmcd/pmcd.conf +PCP_PMIECONFIG_DIR=%{_ieconfigdir} +# auto-install important PMDAs for RH Support (if not present already) for PMDA in dm nfsclient openmetrics ; do if ! grep -q "$PMDA/pmda$PMDA" "$PCP_PMCDCONF_PATH" then %{install_file "$PCP_PMDAS_DIR/$PMDA" .NeedInstall} fi done -pmieconf -c enable dmthin -systemctl restart pmcd >/dev/null 2>&1 -systemctl restart pmlogger >/dev/null 2>&1 -systemctl restart pmlogger_farm >/dev/null 2>&1 -systemctl restart pmie >/dev/null 2>&1 -systemctl restart pmie_farm >/dev/null 2>&1 -systemctl enable pmcd >/dev/null 2>&1 -systemctl enable pmlogger >/dev/null 2>&1 -systemctl enable pmlogger_farm >/dev/null 2>&1 -systemctl enable pmie >/dev/null 2>&1 -systemctl enable pmie_farm >/dev/null 2>&1 - -%post selinux -%{selinux_handle_policy "$1" "pcpupstream"} - -%triggerin selinux -- docker-selinux -%{selinux_handle_policy "$1" "pcpupstream-docker"} - -%triggerin selinux -- container-selinux -%{selinux_handle_policy "$1" "pcpupstream-container"} +# auto-enable these usually optional pmie rules +%{run_pmieconf "$PCP_PMIECONFIG_DIR" dmthin} +%if !%{disable_systemd} + systemctl restart pmcd pmlogger pmie >/dev/null 2>&1 + systemctl enable pmcd pmlogger pmie >/dev/null 2>&1 +%else + /sbin/chkconfig --add pmcd >/dev/null 2>&1 + /sbin/chkconfig --add pmlogger >/dev/null 2>&1 + /sbin/chkconfig --add pmie >/dev/null 2>&1 + /sbin/service pmcd condrestart + /sbin/service pmlogger condrestart + /sbin/service pmie condrestart +%endif %post PCP_PMNS_DIR=%{_pmnsdir} PCP_LOG_DIR=%{_logsdir} %{install_file "$PCP_PMNS_DIR" .NeedRebuild} %{install_file "$PCP_LOG_DIR/pmlogger" .NeedRewrite} -rm -f %{_sysconfdir}/systemd/system/pm*.requires/pm*-poll.* >/dev/null 2>&1 || true - -if systemctl is-enabled pmlogger.service >/dev/null; then -systemctl enable pmlogger_farm.service pmlogger_farm_check.service -systemctl start pmlogger_farm.service pmlogger_farm_check.service -fi -if systemctl is-enabled pmie.service >/dev/null; then -systemctl enable pmie_farm.service pmie_farm_check.service -systemctl start pmie_farm.service pmie_farm_check.service -fi - -%systemd_postun_with_restart pmcd.service -%systemd_post pmcd.service -%systemd_postun_with_restart pmlogger.service -%systemd_post pmlogger.service -%systemd_postun_with_restart pmlogger_farm.service -%systemd_post pmlogger_farm.service -%systemd_post pmlogger_farm_check.service -%systemd_postun_with_restart pmie.service -%systemd_post pmie.service -%systemd_postun_with_restart pmie_farm.service -%systemd_post pmie_farm.service -%systemd_post pmie_farm_check.service -systemctl condrestart pmproxy.service >/dev/null 2>&1 +%if !%{disable_systemd} + # clean up any stale symlinks for deprecated pm*-poll services + rm -f %{_sysconfdir}/systemd/system/pm*.requires/pm*-poll.* >/dev/null 2>&1 || true + + %systemd_postun_with_restart pmcd.service + %systemd_post pmcd.service + %systemd_postun_with_restart pmlogger.service + %systemd_post pmlogger.service + %systemd_postun_with_restart pmie.service + %systemd_post pmie.service + %systemd_postun_with_restart pmproxy.service + %systemd_post pmproxy.service + %systemd_post pmfind.service +%else + /sbin/chkconfig --add pmcd >/dev/null 2>&1 + /sbin/service pmcd condrestart + /sbin/chkconfig --add pmlogger >/dev/null 2>&1 + /sbin/service pmlogger condrestart + /sbin/chkconfig --add pmie >/dev/null 2>&1 + /sbin/service pmie condrestart + /sbin/chkconfig --add pmproxy >/dev/null 2>&1 + /sbin/service pmproxy condrestart +%endif %{rebuild_pmns "$PCP_PMNS_DIR" .NeedRebuild} %ldconfig_scriptlets libs -%preun selinux -%{selinux_handle_policy "$1" "pcpupstream"} - -%triggerun selinux -- docker-selinux -%{selinux_handle_policy "$1" "pcpupstream-docker"} +%if !%{disable_selinux} +%pre selinux +%selinux_relabel_pre -s targeted -%triggerun selinux -- container-selinux -%{selinux_handle_policy "$1" "pcpupstream-container"} +%post selinux +PCP_SELINUX_DIR=%{_selinuxdir} +semodule -r pcpupstream-container >/dev/null 2>&1 || true +semodule -r pcpupstream-docker >/dev/null 2>&1 || true +semodule -r pcpupstream >/dev/null 2>&1 || true +%selinux_modules_install -s targeted "$PCP_SELINUX_DIR/pcp.pp.bz2" +%selinux_relabel_post -s targeted + +%postun selinux +if [ $1 -eq 0 ]; then + %selinux_modules_uninstall -s targeted pcp + %selinux_relabel_post -s targeted +fi +%endif %files -f pcp-files.rpm %doc CHANGELOG COPYING INSTALL.md README.md VERSION.pcp pcp.lsm @@ -1726,34 +2824,54 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files conf -f pcp-conf-files.rpm -%files -f pcp-libs-files.rpm +%files libs -f pcp-libs-files.rpm -%files devel -f pcp-libs-devel-files.rpm +%files libs-devel -f pcp-libs-devel-files.rpm %files devel -f pcp-devel-files.rpm %files help -f pcp-help-files.rpm +%if !%{disable_selinux} %files selinux -f pcp-selinux-files.rpm +%ghost %verify(not md5 size mode mtime) %{_sharedstatedir}/selinux/targeted/active/modules/200/pcp +%endif +%if !%{disable_qt} %files gui -f pcp-gui-files.rpm +%endif -%files devel -f pcp-testsuite-files.rpm +%files testsuite -f pcp-testsuite-files.rpm %files pmda-infiniband -f pcp-pmda-infiniband-files.rpm %files pmda-podman -f pcp-pmda-podman-files.rpm +%if !%{disable_statsd} +%files pmda-statsd -f pcp-pmda-statsd-files.rpm +%endif + +%if !%{disable_perfevent} %files pmda-perfevent -f pcp-pmda-perfevent-files.rpm +%endif +%if !%{disable_perl} %files pmda-activemq -f pcp-pmda-activemq-files.rpm +%endif +%if !%{disable_perl} %files pmda-bind2 -f pcp-pmda-bind2-files.rpm +%endif +%if !%{disable_nutcracker} %files pmda-nutcracker -f pcp-pmda-nutcracker-files.rpm +%endif +%if !%{disable_python3} %files pmda-elasticsearch -f pcp-pmda-elasticsearch-files.rpm +%endif +%if !%{disable_perl} %files pmda-redis -f pcp-pmda-redis-files.rpm %files pmda-bonding -f pcp-pmda-bonding-files.rpm @@ -1787,6 +2905,7 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files pmda-slurm -f pcp-pmda-slurm-files.rpm %files pmda-zimbra -f pcp-pmda-zimbra-files.rpm +%endif %files pmda-denki -f pcp-pmda-denki-files.rpm @@ -1794,17 +2913,27 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files pmda-lustrecomm -f pcp-pmda-lustrecomm-files.rpm +%if !%{disable_perl} %files pmda-mysql -f pcp-pmda-mysql-files.rpm +%endif %files pmda-nginx -f pcp-pmda-nginx-files.rpm +%if !%{disable_perl} %files pmda-postfix -f pcp-pmda-postfix-files.rpm +%endif +%if !%{disable_python3} %files pmda-postgresql -f pcp-pmda-postgresql-files.rpm +%endif +%if !%{disable_perl} %files pmda-oracle -f pcp-pmda-oracle-files.rpm +%endif +%if !%{disable_perl} %files pmda-snmp -f pcp-pmda-snmp-files.rpm +%endif %files pmda-dm -f pcp-pmda-dm-files.rpm @@ -1812,9 +2941,16 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files pmda-bcc -f pcp-pmda-bcc-files.rpm %endif +%if !%{disable_bpf} %files pmda-bpf -f pcp-pmda-bpf-files.rpm +%endif +%if !%{disable_bpftrace} %files pmda-bpftrace -f pcp-pmda-bpftrace-files.rpm +%endif + +%if !%{disable_python3} +%files geolocate -f pcp-geolocate-files.rpm %files pmda-gluster -f pcp-pmda-gluster-files.rpm @@ -1828,7 +2964,9 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files pmda-lmsensors -f pcp-pmda-lmsensors-files.rpm +%if !%{disable_mongodb} %files pmda-mongodb -f pcp-pmda-mongodb-files.rpm +%endif %if !%{disable_mssql} %files pmda-mssql -f pcp-pmda-mssql-files.rpm @@ -1851,20 +2989,33 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files export-pcp2xml -f pcp-export-pcp2xml-files.rpm %files export-pcp2zabbix -f pcp-export-pcp2zabbix-files.rpm +%endif +%if !%{disable_python3} %files export-pcp2elasticsearch -f pcp-export-pcp2elasticsearch-files.rpm +%endif +%if !%{disable_python3} %files export-pcp2influxdb -f pcp-export-pcp2influxdb-files.rpm +%endif + +%if !%{disable_xlsx} +%files export-pcp2xlsx -f pcp-export-pcp2xlsx-files.rpm +%endif %files export-zabbix-agent -f pcp-export-zabbix-agent-files.rpm +%if !%{disable_json} %files pmda-json -f pcp-pmda-json-files.rpm +%endif +%if !%{disable_python3} %files pmda-libvirt -f pcp-pmda-libvirt-files.rpm %files pmda-lio -f pcp-pmda-lio-files.rpm %files pmda-openmetrics -f pcp-pmda-openmetrics-files.rpm +%endif %files pmda-apache -f pcp-pmda-apache-files.rpm @@ -1874,8 +3025,12 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files pmda-cisco -f pcp-pmda-cisco-files.rpm +%files pmda-farm -f pcp-pmda-farm-files.rpm + %files pmda-gfs2 -f pcp-pmda-gfs2-files.rpm +%files pmda-hacluster -f pcp-pmda-hacluster-files.rpm + %files pmda-logger -f pcp-pmda-logger-files.rpm %files pmda-mailq -f pcp-pmda-mailq-files.rpm @@ -1884,6 +3039,10 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files pmda-nvidia-gpu -f pcp-pmda-nvidia-files.rpm +%if !%{disable_resctrl} +%files pmda-resctrl -f pcp-pmda-resctrl-files.rpm +%endif + %files pmda-roomtemp -f pcp-pmda-roomtemp-files.rpm %files pmda-sendmail -f pcp-pmda-sendmail-files.rpm @@ -1894,26 +3053,32 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files pmda-sockets -f pcp-pmda-sockets-files.rpm -%files pmda-hacluster -f pcp-pmda-hacluster-files.rpm - %files pmda-summary -f pcp-pmda-summary-files.rpm +%if !%{disable_systemd} %files pmda-systemd -f pcp-pmda-systemd-files.rpm +%endif %files pmda-trace -f pcp-pmda-trace-files.rpm %files pmda-weblog -f pcp-pmda-weblog-files.rpm +%if !%{disable_perl} %files import-sar2pcp -f pcp-import-sar2pcp-files.rpm %files import-iostat2pcp -f pcp-import-iostat2pcp-files.rpm +#TODO: +#%%files import-sheet2pcp -f pcp-import-sheet2pcp-files.rpm + %files import-mrtg2pcp -f pcp-import-mrtg2pcp-files.rpm %files import-ganglia2pcp -f pcp-import-ganglia2pcp-files.rpm +%endif %files import-collectl2pcp -f pcp-import-collectl2pcp-files.rpm +%if !%{disable_perl} %files -n perl-PCP-PMDA -f perl-pcp-pmda.list %files -n perl-PCP-MMV -f perl-pcp-mmv.list @@ -1921,8 +3086,11 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %files -n perl-PCP-LogImport -f perl-pcp-logimport.list %files -n perl-PCP-LogSummary -f perl-pcp-logsummary.list +%endif +%if !%{disable_python3} %files -n python3-pcp -f python3-pcp.list.rpm +%endif %files system-tools -f pcp-system-tools-files.rpm @@ -1930,6 +3098,9 @@ systemctl condrestart pmproxy.service >/dev/null 2>&1 %changelog +* Mon Jan 08 2024 wangkai <13474090681@163.com> - 6.1.1-1 +- Upgrade 6.1.1 + * Mon Feb 13 2023 wangkai - 5.3.7-3 - Fix out of range in pcp-mpstat