2020-04-28 08:50:08 +00:00
Name : pcp
2022-11-08 06:34:31 +00:00
Version : 5.3.7
2024-09-19 14:54:43 +00:00
Release : 22%{?dist}
2020-04-28 08:50:08 +00:00
Summary : System-level performance monitoring and performance management
License : GPLv2+ and LGPLv2+ and CC-BY
URL : https://pcp.io
2021-11-09 09:49:49 +00:00
%global artifactory https://performancecopilot.jfrog.io/artifactory
Source0 : %{artifactory} /pcp-source-release/pcp-%{version} .src.tar.gz
2022-11-08 06:34:31 +00:00
Patch0 : redhat-bugzilla-2003956-pmdabcc-update-kernel-version-check-due-to-backporting.patch
Patch1 : redhat-bugzilla-1981886-pmdasockets-backporting.patch
Patch2 : redhat-bugzilla-2059461-pmie-systemd-fixup.patch
Patch3 : redhat-bugzilla-2081262-pmdaproc-cgroups-fix.patch
Patch4 : redhat-bugzilla-2059463-pmdapostfix-harden.patch
2023-05-16 06:03:59 +00:00
Patch5 : redhat-bugzilla-2083897-dstat-missed-ticks.patch
Patch6 : redhat-bugzilla-2111742-selinux-policy.patch
Patch7 : redhat-bugzilla-2093751-sudoers-docs.patch
Patch8 : redhat-bugzilla-2101574-farm-config.patch
Patch9 : redhat-bugzilla-2135314-pmfind-fix.patch
Patch10 : redhat-bugzilla-2139012-pmdasnmp-config.patch
2024-05-22 13:47:50 +00:00
Patch11 : redhat-bugzilla-1981886-pcp-ss-fetchgroup.patch
Patch12 : redhat-bugzilla-2159207-pmproxy-rollup-fixes.patch
Patch13 : redhat-bugzilla-2139325-openmetrics-in-grafana.patch
Patch14 : redhat-bugzilla-2150889-nfsclient-srcport.patch
Patch15 : redhat-bugzilla-2219731-hacluster-metrics.patch
Patch16 : redhat-bugzilla-2211263-pmcd-conf-rewrite.patch
Patch17 : redhat-build-jsonsl.patch
Patch18 : redhat-issues-RHEL-7507-pmdaopenmetrics-quoting.patch
Patch19 : redhat-issues-RHEL-7501-pmlogger_farm-selinux-policy.patch
Patch20 : redhat-issues-RHEL-30715-pmproxy-resp-proxy-disabled.patch
2024-09-19 14:54:43 +00:00
Patch21 : redhat-issues-RHEL-29708-python-day-of-year-range.patch
Patch22 : redhat-issues-RHEL-57796-pmcd-pmstore-corruption.patch
Patch23 : redhat-issues-RHEL-57799-pmpost-symlink-handling.patch
Patch24 : redhat-issues-RHEL-34586-pmproxy-pmcd-fd-leak.patch
Patch25 : redhat-issues-RHEL-57788-pmdahacluster-update.patch
2020-04-28 08:50:08 +00:00
2022-11-08 06:34:31 +00:00
# The additional linker flags break out-of-tree PMDAs.
# https://bugzilla.redhat.com/show_bug.cgi?id=2043092
%undefine _package_note_flags
2020-04-28 08:50:08 +00:00
%if 0%{?fedora} >= 26 || 0%{?rhel} > 7
%global __python2 python2
%else
%global __python2 python
%endif
2024-09-19 14:54:43 +00:00
# UsrMerge was completed in EL 7, however the latest 'hostname' package in EL 7 contains "Provides: /bin/hostname". Likewise for /bin/ps from procps[-ng] packages.
2021-05-18 06:56:09 +00:00
%if 0%{?rhel} >= 8 || 0%{?fedora} >= 17
2020-11-03 12:00:00 +00:00
%global _hostname_executable /usr/bin/hostname
2024-09-19 14:54:43 +00:00
%global _ps_executable /usr/bin/ps
2020-11-03 12:00:00 +00:00
%else
%global _hostname_executable /bin/hostname
2024-09-19 14:54:43 +00:00
%global _ps_executable /bin/ps
2020-11-03 12:00:00 +00:00
%endif
2021-11-09 09:49:49 +00:00
%global disable_perl 0
2020-04-28 08:50:08 +00:00
%if 0%{?fedora} || 0%{?rhel} > 5
%global disable_selinux 0
%else
%global disable_selinux 1
%endif
%global disable_snmp 0
# No libpfm devel packages for s390, armv7hl nor for some rhels, disable
%ifarch s390 s390x armv7hl
%global disable_perfevent 1
%else
%if 0%{?fedora} >= 20 || 0%{?rhel} > 6
%global disable_perfevent 0
%else
%global disable_perfevent 1
%endif
%endif
%global disable_podman 0
# libchan, libhdr_histogram and pmdastatsd
2020-11-03 12:00:00 +00:00
%if 0%{?fedora} >= 29 || 0%{?rhel} > 7
2020-04-28 08:50:08 +00:00
%global disable_statsd 0
%else
%global disable_statsd 1
%endif
%if 0%{?fedora} >= 30 || 0%{?rhel} > 7
%global _with_python2 --with-python=no
%global disable_python2 1
%else
%global disable_python2 0
%endif
# Default for epel5 is python24, so use the (optional) python26 packages
%if 0%{?rhel} == 5
%global default_python 26
%endif
# No python3 development environment before el8
%if 0%{?rhel} == 0 || 0%{?rhel} > 7
%global disable_python3 0
# Do we wish to mandate python3 use in pcp? (f22+ and el8+)
%if 0%{?fedora} >= 22 || 0%{?rhel} > 7
%global default_python 3
%endif
%else
%global disable_python3 1
%endif
%if 0%{?fedora} >= 24 || 0%{?rhel} > 7
%global perl_interpreter perl-interpreter
%else
%global perl_interpreter perl
%endif
# support for pmdabcc, check bcc.spec for supported architectures of bcc
%if 0%{?fedora} >= 25 || 0%{?rhel} > 6
%ifarch x86_64 %{power64} aarch64 s390x
%global disable_bcc 0
%else
%global disable_bcc 1
%endif
%else
%global disable_bcc 1
%endif
2022-05-10 06:59:42 +00:00
# support for pmdabpf, check bpf.spec for supported architectures of bpf
%if 0%{?fedora} >= 33 || 0%{?rhel} > 8
%ifarch x86_64 %{power64} aarch64 s390x
%global disable_bpf 0
%else
%global disable_bpf 1
%endif
%else
%global disable_bpf 1
%endif
2020-04-28 08:50:08 +00:00
# support for pmdabpftrace, check bpftrace.spec for supported architectures of bpftrace
%if 0%{?fedora} >= 30 || 0%{?rhel} > 7
%ifarch x86_64 %{power64} aarch64 s390x
%global disable_bpftrace 0
%else
%global disable_bpftrace 1
%endif
%else
%global disable_bpftrace 1
%endif
# support for pmdajson
%if 0%{?rhel} == 0 || 0%{?rhel} > 6
%if !%{disable_python2} || !%{disable_python3}
%global disable_json 0
%else
%global disable_json 1
%endif
%else
%global disable_json 1
%endif
# No mssql ODBC driver on non-x86 platforms
%ifarch x86_64
%if !%{disable_python2} || !%{disable_python3}
%global disable_mssql 0
%else
%global disable_mssql 1
%endif
%else
%global disable_mssql 1
%endif
# support for pmdanutcracker (perl deps missing on rhel)
%if 0%{?rhel} == 0
%global disable_nutcracker 0
%else
%global disable_nutcracker 1
%endif
# Qt development and runtime environment missing components before el6
%if 0%{?rhel} == 0 || 0%{?rhel} > 5
%global disable_qt 0
%if 0%{?fedora} != 0 || 0%{?rhel} > 7
%global default_qt 5
%endif
%else
%global disable_qt 1
%endif
# systemd services and pmdasystemd
%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7
%global disable_systemd 0
%else
%global disable_systemd 1
%endif
# static probes, missing before el6 and on some architectures
%if 0%{?rhel} == 0 || 0%{?rhel} > 5
%global disable_sdt 0
%else
%ifnarch ppc ppc64
%global disable_sdt 0
%else
%global disable_sdt 1
%endif
%endif
# libuv async event library
%if 0%{?fedora} >= 28 || 0%{?rhel} > 7
%global disable_libuv 0
%else
%global disable_libuv 1
%endif
%global disable_openssl 0
# rpm producing "noarch" packages
%if 0%{?rhel} == 0 || 0%{?rhel} > 5
%global disable_noarch 0
%else
%global disable_noarch 1
%endif
%if 0%{?fedora} >= 24
%global disable_xlsx 0
%else
%global disable_xlsx 1
%endif
# prevent conflicting binary and man page install for pcp(1)
Conflicts : librapi < 0.16
# KVM PMDA moved into pcp (no longer using Perl, default on)
Obsoletes : pcp-pmda-kvm < 4.1.1
2021-11-09 09:49:49 +00:00
Provides : pcp-pmda-kvm = %{version} -%{release}
# RPM PMDA retired completely
Obsoletes : pcp-pmda-rpm < 5.3.2
Obsoletes : pcp-pmda-rpm-debuginfo < 5.3.2
2020-04-28 08:50:08 +00:00
# PCP REST APIs are now provided by pmproxy
Obsoletes : pcp-webapi-debuginfo < 5.0.0
Obsoletes : pcp-webapi < 5.0.0
2021-11-09 09:49:49 +00:00
Provides : pcp-webapi = %{version} -%{release}
2020-04-28 08:50:08 +00:00
2021-05-18 06:56:09 +00:00
# PCP discovery service now provided by pmfind
Obsoletes : pcp-manager-debuginfo < 5.2.0
Obsoletes : pcp-manager < 5.2.0
2021-11-09 09:49:49 +00:00
# Some older releases did not update or replace pcp-gui-debuginfo properly
%if 0%{?fedora} < 27 && 0%{?rhel} <= 7 && "%{_vendor}" == "redhat"
Obsoletes : pcp-gui-debuginfo < 4.1.1
%endif
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
2020-04-28 08:50:08 +00:00
# https://fedoraproject.org/wiki/Packaging "C and C++"
2021-05-18 06:56:09 +00:00
BuildRequires : make
2020-04-28 08:50:08 +00:00
BuildRequires : gcc gcc-c++
BuildRequires : procps autoconf bison flex
BuildRequires : nss-devel
BuildRequires : avahi-devel
BuildRequires : xz-devel
BuildRequires : zlib-devel
%if !%{disable_python2}
%if 0%{?default_python} != 3
BuildRequires : python%{?default_python} -devel
%else
BuildRequires : %{__python 2}-devel
%endif
%endif
%if !%{disable_python3}
BuildRequires : python3-devel
2021-05-18 06:56:09 +00:00
BuildRequires : python3-setuptools
2020-04-28 08:50:08 +00:00
%endif
BuildRequires : ncurses-devel
BuildRequires : readline-devel
BuildRequires : cyrus-sasl-devel
%if !%{disable_statsd}
2020-11-03 12:00:00 +00:00
# ragel unavailable on RHEL8
%if 0%{?rhel} == 0
BuildRequires : ragel
%endif
BuildRequires : chan-devel HdrHistogram_c-devel
2020-04-28 08:50:08 +00:00
%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
%if 0%{?rhel} == 0 || 0%{?rhel} > 7
BuildRequires : perl-generators
%endif
BuildRequires : perl-devel perl(strict)
BuildRequires : perl(ExtUtils::MakeMaker) perl(LWP::UserAgent) perl(JSON)
2021-11-09 09:49:49 +00:00
BuildRequires : perl(Time::HiRes) perl(Digest::MD5)
BuildRequires : perl(XML::LibXML) perl(File::Slurp)
2024-09-19 14:54:43 +00:00
BuildRequires : %{_hostname_executable}
BuildRequires : %{_ps_executable}
2020-04-28 08:50:08 +00:00
%if !%{disable_systemd}
2021-05-18 06:56:09 +00:00
BuildRequires : systemd-devel systemd-rpm-macros
2020-04-28 08:50:08 +00:00
%endif
%if !%{disable_qt}
BuildRequires : desktop-file-utils
%if 0%{?default_qt} != 5
BuildRequires : qt4-devel >= 4.4
%else
BuildRequires : qt5-qtbase-devel
BuildRequires : qt5-qtsvg-devel
%endif
%endif
2024-09-19 14:54:43 +00:00
Requires : bash xz gawk sed grep coreutils diffutils findutils
Requires : which %{_hostname_executable} %{_ps_executable}
2020-04-28 08:50:08 +00:00
Requires : pcp-libs = %{version} -%{release}
2022-11-08 06:34:31 +00:00
2023-05-16 06:03:59 +00:00
%if !%{disable_selinux}
2022-11-08 06:34:31 +00:00
# rpm boolean dependencies are supported since RHEL 8
%if 0%{?fedora} >= 35 || 0%{?rhel} >= 8
2023-05-16 06:03:59 +00:00
# This ensures that the pcp-selinux package and all its dependencies are
# not pulled into containers and other systems that do not use SELinux
2022-11-08 06:34:31 +00:00
Requires : (pcp-selinux = %{version} -%{release} if selinux-policy-targeted)
%else
2020-04-28 08:50:08 +00:00
Requires : pcp-selinux = %{version} -%{release}
%endif
2022-11-08 06:34:31 +00:00
%endif
2021-05-18 06:56:09 +00:00
%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
2023-05-16 06:03:59 +00:00
%global _ieconfigdir %{_localstatedir} /lib/pcp/config/pmie
2021-05-18 06:56:09 +00:00
%global _ieconfdir %{_localstatedir} /lib/pcp/config/pmieconf
2023-05-16 06:03:59 +00:00
%global _selinuxdir %{_datadir} /selinux/packages/targeted
2020-04-28 08:50:08 +00:00
%if 0%{?fedora} >= 20 || 0%{?rhel} >= 8
%global _with_doc --with-docdir=%{_docdir} /%{name}
%endif
%if 0%{?fedora} >= 29 || 0%{?rhel} >= 8
%global _with_dstat --with-dstat-symlink=yes
%global disable_dstat 0
%else
%global _with_dstat --with-dstat-symlink=no
%global disable_dstat 1
%endif
%if !%{disable_systemd}
2021-05-18 06:56:09 +00:00
%global _initddir %{_libexecdir} /pcp/lib
2020-04-28 08:50:08 +00:00
%else
%global _initddir %{_sysconfdir} /rc.d/init.d
%global _with_initd --with-rcdir=%{_initddir}
%endif
# we never want Infiniband on s390 and armv7hl platforms
%ifarch s390 s390x armv7hl
%global disable_infiniband 1
%else
# we never want Infiniband on RHEL5 or earlier
%if 0%{?rhel} != 0 && 0%{?rhel} < 6
%global disable_infiniband 1
%else
%global disable_infiniband 0
%endif
%endif
%if !%{disable_infiniband}
%global _with_ib --with-infiniband=yes
%endif
%if %{disable_perfevent}
%global _with_perfevent --with-perfevent=no
%else
%global _with_perfevent --with-perfevent=yes
%endif
%if %{disable_podman}
%global _with_podman --with-podman=no
%else
%global _with_podman --with-podman=yes
%endif
%if %{disable_statsd}
2020-11-03 12:00:00 +00:00
%global _with_statsd --with-pmdastatsd=no
2020-04-28 08:50:08 +00:00
%else
2020-11-03 12:00:00 +00:00
%global _with_statsd --with-pmdastatsd=yes
2020-04-28 08:50:08 +00:00
%endif
%if %{disable_bcc}
%global _with_bcc --with-pmdabcc=no
%else
%global _with_bcc --with-pmdabcc=yes
%endif
2022-05-10 06:59:42 +00:00
%if %{disable_bpf}
%global _with_bpf --with-pmdabpf=no
%else
%global _with_bpf --with-pmdabpf=yes
%endif
2020-04-28 08:50:08 +00:00
%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_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 ]
then
PCP_PMDAS_DIR=%{_pmdasdir}
PCP_PMCDCONF_PATH=%{_confdir} /pmcd/pmcd.conf
if [ -f " $ P C P _ P M C D C O N F _ P A T H " -a -f " $ P C P _ P M D A S _ D I R / % 2 / d o m a i n . h " ]
then
2021-05-18 06:56:09 +00:00
(cd " $ P C P _ P M D A S _ D I R / % 2 / " && ./Remove >/dev/null 2>&1)
2020-04-28 08:50:08 +00:00
fi
fi
}
2020-11-03 12:00:00 +00:00
%global install_file() %{expand:
if [ -w " % 1 " ]
then
(cd " % 1 " && touch " % 2 " && chmod 644 " % 2 " )
else
echo " W A R N I N G : C a n n o t w r i t e t o % 1 , s k i p p i n g % 2 c r e a t i o n . " >&2
fi
}
%global rebuild_pmns() %{expand:
if [ -w " % 1 " ]
then
(cd " % 1 " && ./Rebuild -s && rm -f " % 2 " )
else
echo " W A R N I N G : C a n n o t w r i t e t o % 1 , s k i p p i n g n a m e s p a c e r e b u i l d . " >&2
fi
}
2023-05-16 06:03:59 +00:00
%global run_pmieconf() %{expand:
if [ -w " % 1 " ]
2020-04-28 08:50:08 +00:00
then
2023-05-16 06:03:59 +00:00
pmieconf -c enable " % 2 "
else
echo " W A R N I N G : C a n n o t w r i t e t o % 1 , s k i p p i n g p m i e c o n f e n a b l e o f % 2 . " >&2
fi
2020-04-28 08:50:08 +00:00
}
%description
Performance Co-Pilot (PCP) provides a framework and services to support
system-level performance monitoring and performance management.
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
License : LGPLv2+
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 : LGPLv2+
Summary : Performance Co-Pilot run-time libraries
URL : https://pcp.io
Requires : pcp-conf = %{version} -%{release}
%description libs
Performance Co-Pilot (PCP) run-time libraries
#
# pcp-libs-devel
#
%package libs-devel
License : GPLv2+ and LGPLv2+
Summary : Performance Co-Pilot (PCP) development headers
URL : https://pcp.io
Requires : pcp = %{version} -%{release} pcp-libs = %{version} -%{release}
%description libs-devel
Performance Co-Pilot (PCP) headers for development.
#
# pcp-devel
#
%package devel
License : GPLv2+ and LGPLv2+
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 : GPLv2+
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
2022-05-10 06:59:42 +00:00
Requires : pcp-pmda-samba pcp-pmda-slurm pcp-pmda-zimbra
2020-04-28 08:50:08 +00:00
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
2022-05-10 06:59:42 +00:00
Requires : pcp-pmda-hacluster pcp-pmda-lustrecomm pcp-pmda-logger pcp-pmda-denki pcp-pmda-docker pcp-pmda-bind2
2021-05-18 06:56:09 +00:00
Requires : pcp-pmda-sockets
2020-04-28 08:50:08 +00:00
%if !%{disable_podman}
Requires : pcp-pmda-podman
%endif
%if !%{disable_statsd}
Requires : pcp-pmda-statsd
%endif
%if !%{disable_nutcracker}
Requires : pcp-pmda-nutcracker
%endif
%if !%{disable_bcc}
Requires : pcp-pmda-bcc
%endif
2022-05-10 06:59:42 +00:00
%if !%{disable_bpf}
Requires : pcp-pmda-bpf
%endif
2020-04-28 08:50:08 +00:00
%if !%{disable_bpftrace}
Requires : pcp-pmda-bpftrace
%endif
%if !%{disable_python2} || !%{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
2020-11-03 12:00:00 +00:00
Requires : pcp-pmda-lmsensors pcp-pmda-netcheck pcp-pmda-rabbitmq
2022-05-10 06:59:42 +00:00
Requires : pcp-pmda-openvswitch pcp-pmda-mongodb
2020-04-28 08:50:08 +00:00
%endif
%if !%{disable_mssql}
2020-11-03 12:00:00 +00:00
Requires : pcp-pmda-mssql
2020-04-28 08:50:08 +00:00
%endif
%if !%{disable_snmp}
Requires : pcp-pmda-snmp
%endif
%if !%{disable_json}
Requires : pcp-pmda-json
%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 : redhat-rpm-config
2020-11-03 12:00:00 +00:00
%if !%{disable_selinux}
Requires : selinux-policy-devel
Requires : selinux-policy-targeted
%if 0%{?rhel} == 5
Requires : setools
%else
Requires : setools-console
%endif
%endif
2020-04-28 08:50:08 +00:00
%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
License : GPLv2+
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.
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
License : GPLv2+
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
(PCP) Memory Mapped Value (MMV) mechanism.
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
License : GPLv2+
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
License : GPLv2+
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
statistical summary data produced by the Performance Co-Pilot
pmlogsummary utility. This utility produces various averages,
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
License : LGPLv2+
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
License : LGPLv2+
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
License : LGPLv2+
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
License : LGPLv2+
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
License : LGPLv2+
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
License : GPLv2+
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_python2} || !%{disable_python3}
#
# pcp-export-pcp2elasticsearch
#
%package export-pcp2elasticsearch
License : GPLv2+
Summary : Performance Co-Pilot tools for exporting PCP metrics to ElasticSearch
URL : https://pcp.io
Requires : pcp-libs >= %{version} -%{release}
%if !%{disable_python3}
Requires : python3-pcp = %{version} -%{release}
Requires : python3-requests
BuildRequires : python3-requests
%else
Requires : %{__python 2}-pcp = %{version} -%{release}
Requires : %{__python 2}-requests
BuildRequires : %{__python 2}-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
License : GPLv2+
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}
%else
Requires : %{__python 2}-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
License : GPLv2+
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
%else
Requires : %{__python 2}-pcp = %{version} -%{release}
Requires : %{__python 2}-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
License : GPLv2+
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}
%else
Requires : %{__python 2}-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
License : GPLv2+
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}
%else
Requires : %{__python 2}-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 : GPLv2+
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
%else
Requires : %{__python 2}-pcp = %{version} -%{release}
Requires : %{__python 2}-openpyxl
BuildRequires : %{__python 2}-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
License : GPLv2+
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}
%else
Requires : %{__python 2}-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
License : GPLv2+
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}
%else
Requires : %{__python 2}-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
%if !%{disable_podman}
#
# pcp-pmda-podman
#
%package pmda-podman
License : GPLv2+
Summary : Performance Co-Pilot (PCP) metrics for podman containers
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
2021-11-09 09:49:49 +00:00
collecting podman container and pod statistics via the podman REST API.
2020-04-28 08:50:08 +00:00
%endif
%if !%{disable_statsd}
#
# pcp-pmda-statsd
#
%package pmda-statsd
License : GPLv2+
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
License : GPLv2+
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
%if !%{disable_infiniband}
#
# pcp-pmda-infiniband
#
%package pmda-infiniband
License : GPLv2+
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
%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.
%endif
#
# pcp-pmda-activemq
#
%package pmda-activemq
License : GPLv2+
Summary : Performance Co-Pilot (PCP) metrics for ActiveMQ
URL : https://pcp.io
2020-11-03 12:00:00 +00:00
Requires : pcp = %{version} -%{release} pcp-libs = %{version} -%{release}
2020-04-28 08:50:08 +00:00
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+
Summary : Performance Co-Pilot (PCP) metrics for BIND servers
URL : https://pcp.io
2020-11-03 12:00:00 +00:00
Requires : pcp = %{version} -%{release} pcp-libs = %{version} -%{release}
2020-04-28 08:50:08 +00:00
Requires : perl-PCP-PMDA = %{version} -%{release}
Requires : perl(LWP::UserAgent)
Requires : perl(XML::LibXML)
Requires : perl(File::Slurp)
2020-11-03 12:00:00 +00:00
Requires : perl-autodie
Requires : perl-Time-HiRes
2020-04-28 08:50:08 +00:00
%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
License : GPLv2+
Summary : Performance Co-Pilot (PCP) metrics for Redis
URL : https://pcp.io
2020-11-03 12:00:00 +00:00
Requires : pcp = %{version} -%{release} pcp-libs = %{version} -%{release}
2020-04-28 08:50:08 +00:00
Requires : perl-PCP-PMDA = %{version} -%{release}
2020-11-03 12:00:00 +00:00
Requires : perl-autodie
Requires : perl-Time-HiRes
Requires : perl-Data-Dumper
2020-04-28 08:50:08 +00:00
%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 : GPLv2+
Summary : Performance Co-Pilot (PCP) metrics for NutCracker (TwemCache)
URL : https://pcp.io
2020-11-03 12:00:00 +00:00
Requires : pcp = %{version} -%{release} pcp-libs = %{version} -%{release}
2020-04-28 08:50:08 +00:00
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
#