X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=contrib%2Fredhat%2Fcollectd.spec;h=73e69c75395e4d1d07a23ef2857102525b0069b5;hb=7b7903a58bfb3765ff196e81d7a088676b795157;hp=7f56007fbd40eb10a348e3575436b4c3e0ca2271;hpb=60451f81f174fc283345ade43d95857c56d17e88;p=collectd.git diff --git a/contrib/redhat/collectd.spec b/contrib/redhat/collectd.spec index 7f56007f..73e69c75 100644 --- a/contrib/redhat/collectd.spec +++ b/contrib/redhat/collectd.spec @@ -38,30 +38,6 @@ %global _hardened_build 1 %{?perl_default_filter} -# plugins only buildable on RHEL6 -# (NB: %{elN} macro is not available on RHEL < 6) -%{?el6:%global _has_libyajl 1} -%{?el6:%global _has_recent_libpcap 1} -%{?el6:%global _has_recent_sockios_h 1} -%{?el6:%global _has_recent_libganglia 1} -%{?el6:%global _has_working_libiptc 1} -%{?el6:%global _has_ip_vs_h 1} -%{?el6:%global _has_lvm2app_h 1} -%{?el6:%global _has_libmodbus 1} -%{?el6:%global _has_iproute 1} - -%{?el7:%global _has_libyajl 1} -%{?el7:%global _has_recent_libpcap 1} -%{?el7:%global _has_recent_sockios_h 1} -%{?el7:%global _has_working_libiptc 1} -%{?el7:%global _has_ip_vs_h 1} -%{?el7:%global _has_lvm2app_h 1} -%{?el7:%global _has_recent_librrd 1} -%{?el7:%global _has_varnish4 1} -%{?el7:%global _has_iproute 1} -%{?el7:%global _has_libmodbus 1} -%{?el7:%global _has_xmms 1} - # plugins enabled by default %define with_aggregation 0%{!?_without_aggregation:1} %define with_amqp 0%{!?_without_amqp:1} @@ -70,56 +46,68 @@ %define with_ascent 0%{!?_without_ascent:1} %define with_battery 0%{!?_without_battery:1} %define with_bind 0%{!?_without_bind:1} +%define with_ceph 0%{!?_without_ceph:1} %define with_cgroups 0%{!?_without_cgroups:1} +%define with_chrony 0%{!?_without_chrony:1} %define with_conntrack 0%{!?_without_conntrack:1} %define with_contextswitch 0%{!?_without_contextswitch:1} %define with_cpu 0%{!?_without_cpu:1} %define with_cpufreq 0%{!?_without_cpufreq:1} +%define with_cpusleep 0%{!?_without_cpusleep:1} %define with_csv 0%{!?_without_csv:1} %define with_curl 0%{!?_without_curl:1} -%define with_curl_json 0%{!?_without_curl_json:0%{?_has_libyajl}} +%define with_curl_json 0%{!?_without_curl_json:1} %define with_curl_xml 0%{!?_without_curl_xml:1} %define with_dbi 0%{!?_without_dbi:1} %define with_df 0%{!?_without_df:1} %define with_disk 0%{!?_without_disk:1} -%define with_dns 0%{!?_without_dns:0%{?_has_recent_libpcap}} +%define with_dns 0%{!?_without_dns:1} +%define with_drbd 0%{!?_without_drbd:1} %define with_email 0%{!?_without_email:1} %define with_entropy 0%{!?_without_entropy:1} -%define with_ethstat 0%{!?_without_ethstat:0%{?_has_recent_sockios_h}} +%define with_ethstat 0%{!?_without_ethstat:1} %define with_exec 0%{!?_without_exec:1} +%define with_fhcount 0%{!?_without_fhcount:1} %define with_filecount 0%{!?_without_filecount:1} %define with_fscache 0%{!?_without_fscache:1} -%define with_gmond 0%{!?_without_gmond:0%{?_has_recent_libganglia}} +%define with_gmond 0%{!?_without_gmond:1} +%define with_gps 0%{!?_without_gps:1} %define with_hddtemp 0%{!?_without_hddtemp:1} +%define with_hugepages 0%{!?_without_hugepages:1} %define with_interface 0%{!?_without_interface:1} +%define with_ipc 0%{!?_without_ipc:1} %define with_ipmi 0%{!?_without_ipmi:1} -%define with_iptables 0%{!?_without_iptables:0%{?_has_working_libiptc}} -%define with_ipvs 0%{!?_without_ipvs:0%{?_has_ip_vs_h}} +%define with_iptables 0%{!?_without_iptables:1} +%define with_ipvs 0%{!?_without_ipvs:1} %define with_irq 0%{!?_without_irq:1} %define with_java 0%{!?_without_java:1} -%define with_libvirt 0%{!?_without_libvirt:1} %define with_load 0%{!?_without_load:1} +%define with_log_logstash 0%{!?_without_log_logstash:1} %define with_logfile 0%{!?_without_logfile:1} -%define with_lvm 0%{!?_without_lvm:0%{?_has_lvm2app_h}} +%define with_lua 0%{!?_without_lua:1} +%define with_lvm 0%{!?_without_lvm:1} %define with_madwifi 0%{!?_without_madwifi:1} %define with_mbmon 0%{!?_without_mbmon:1} %define with_md 0%{!?_without_md:1} %define with_memcachec 0%{!?_without_memcachec:1} %define with_memcached 0%{!?_without_memcached:1} %define with_memory 0%{!?_without_memory:1} +%define with_modbus 0%{!?_without_modbus:1} +%define with_mqtt 0%{!?_without_mqtt:1} %define with_multimeter 0%{!?_without_multimeter:1} -%define with_modbus 0%{!?_without_modbus:0%{?_has_libmodbus}} %define with_mysql 0%{!?_without_mysql:1} -%define with_netlink 0%{!?_without_netlink:0%{?_has_iproute}} +%define with_netlink 0%{!?_without_netlink:1} %define with_network 0%{!?_without_network:1} %define with_nfs 0%{!?_without_nfs:1} %define with_nginx 0%{!?_without_nginx:1} %define with_notify_desktop 0%{!?_without_notify_desktop:1} %define with_notify_email 0%{!?_without_notify_email:1} +%define with_notify_nagios 0%{!?_without_notify_nagios:1} %define with_ntpd 0%{!?_without_ntpd:1} %define with_numa 0%{!?_without_numa:1} %define with_nut 0%{!?_without_nut:1} %define with_olsrd 0%{!?_without_olsrd:1} +%define with_openldap 0%{!?_without_openldap:1} %define with_openvpn 0%{!?_without_openvpn:1} %define with_perl 0%{!?_without_perl:1} %define with_pinba 0%{!?_without_pinba:1} @@ -129,10 +117,12 @@ %define with_processes 0%{!?_without_processes:1} %define with_protocols 0%{!?_without_protocols:1} %define with_python 0%{!?_without_python:1} -%define with_rrdcached 0%{!?_without_rrdcached:0%{?_has_recent_librrd}} +%define with_redis 0%{!?_without_redis:1} +%define with_rrdcached 0%{!?_without_rrdcached:1} %define with_rrdtool 0%{!?_without_rrdtool:1} %define with_sensors 0%{!?_without_sensors:1} %define with_serial 0%{!?_without_serial:1} +%define with_smart 0%{!?_without_smart:1} %define with_snmp 0%{!?_without_snmp:1} %define with_statsd 0%{!?_without_statsd:1} %define with_swap 0%{!?_without_swap:1} @@ -145,18 +135,25 @@ %define with_ted 0%{!?_without_ted:1} %define with_thermal 0%{!?_without_thermal:1} %define with_threshold 0%{!?_without_threshold:1} +%define with_turbostat 0%{!?_without_turbostat:1} %define with_unixsock 0%{!?_without_unixsock:1} %define with_uptime 0%{!?_without_uptime:1} %define with_users 0%{!?_without_users:1} %define with_uuid 0%{!?_without_uuid:1} -%define with_varnish 0%{!?_without_varnish:0%{!?_has_varnish4:1}} +%define with_varnish 0%{!?_without_varnish:1} +%define with_virt 0%{!?_without_virt:1} %define with_vmem 0%{!?_without_vmem:1} %define with_vserver 0%{!?_without_vserver:1} %define with_wireless 0%{!?_without_wireless:1} %define with_write_graphite 0%{!?_without_write_graphite:1} %define with_write_http 0%{!?_without_write_http:1} -%define with_write_riemann 0%{!?_without_write_riemann:1} +%define with_write_log 0%{!?_without_write_log:1} +%define with_write_redis 0%{!?_without_write_redis:1} +%define with_write_sensu 0%{!?_without_write_sensu:1} +%define with_write_tsdb 0%{!?_without_write_tsdb:1} %define with_xmms 0%{!?_without_xmms:0%{?_has_xmms}} +%define with_zfs_arc 0%{!?_without_zfs_arc:1} +%define with_zookeeper 0%{!?_without_zookeeper:1} # Plugins not built by default because of dependencies on libraries not # available in RHEL or EPEL: @@ -165,6 +162,10 @@ %define with_apple_sensors 0%{!?_without_apple_sensors:0} # plugin aquaero disabled, requires a libaquaero5 %define with_aquaero 0%{!?_without_aquaero:0} +# plugin barometer disabled, requires a libi2c +%define with_barometer 0%{!?_without_barometer:0} +# plugin grpc disabled, requires protobuf-compiler >= 3.0 +%define with_grpc 0%{!?_without_grpc:0} # plugin lpar disabled, requires AIX %define with_lpar 0%{!?_without_lpar:0} # plugin mic disabled, requires Mic @@ -177,8 +178,6 @@ %define with_oracle 0%{!?_without_oracle:0} # plugin oracle disabled, requires BSD %define with_pf 0%{!?_without_pf:0} -# plugin redis disabled, requires credis -%define with_redis 0%{!?_without_redis:0} # plugin routeros disabled, requires librouteros %define with_routeros 0%{!?_without_routeros:0} # plugin sigrok disabled, requires libsigrok @@ -187,28 +186,65 @@ %define with_tape 0%{!?_without_tape:0} # plugin tokyotyrant disabled, requires tcrdb.h %define with_tokyotyrant 0%{!?_without_tokyotyrant:0} +# plugin write_kafka disabled, requires librdkafka +%define with_write_kafka 0%{!?_without_write_kafka:0} # plugin write_mongodb disabled, requires libmongoc %define with_write_mongodb 0%{!?_without_write_mongodb:0} -# plugin write_redis disabled, requires credis -%define with_write_redis 0%{!?_without_write_redis:0} -# plugin zfs_arc disabled, requires FreeBSD/Solaris -%define with_zfs_arc 0%{!?_without_zfs_arc:0} - -Summary: statistics collection and monitoring daemon +# plugin write_riemann disabled, requires a new enough riemann_c_client +%define with_write_riemann 0%{!?_without_write_riemann:0} +# plugin xencpu disabled, requires xen-devel from non-default repo +%define with_xencpu 0%{!?_without_xencpu:0} +# plugin zone disabled, requires Solaris +%define with_zone 0%{!?_without_zone:0} + +# Plugins not buildable on RHEL < 6 +%if 0%{?rhel} && 0%{?rhel} < 6 +%define with_ceph 0 +%define with_curl_json 0 +%define with_log_logstash 0 +%define with_dns 0 +%define with_ethstat 0 +%define with_gmond 0 +%define with_iptables 0 +%define with_ipvs 0 +%define with_lvm 0 +%define with_modbus 0 +%define with_netlink 0 +%define with_redis 0 +%define with_smart 0 +%define with_turbostat 0 +%define with_write_redis 0 +%endif + +# Plugins not buildable on RHEL < 7 +%if 0%{?rhel} && 0%{?rhel} < 7 +%define with_cpusleep 0 +%define with_gps 0 +%define with_mqtt 0 +%define with_rrdcached 0 +%define with_xmms 0 +%endif + +Summary: Statistics collection and monitoring daemon Name: collectd -Version: 5.4.2 -Release: 1%{?dist} -URL: http://collectd.org -Source: http://collectd.org/files/%{name}-%{version}.tar.bz2 +Version: 5.7.0 +Release: 2%{?dist} +URL: https://collectd.org +Source: https://collectd.org/files/%{name}-%{version}.tar.bz2 License: GPLv2 Group: System Environment/Daemons BuildRoot: %{_tmppath}/%{name}-%{version}-root -BuildRequires: libgcrypt-devel, kernel-headers, libtool-ltdl-devel +BuildRequires: libgcrypt-devel, kernel-headers, libtool-ltdl-devel, libcap-devel, which Vendor: collectd development team +%if 0%{?fedora} || 0%{?rhel} >= 7 +%{?systemd_requires} +BuildRequires: systemd +%else Requires(post): chkconfig Requires(preun): chkconfig, initscripts Requires(postun): initscripts +%endif %description collectd is a small daemon which collects system information periodically and @@ -260,6 +296,15 @@ open-source server software for the game World of Warcraft by Blizzard Entertainment. %endif +%if %{with_barometer} +%package barometer +Summary: barometer plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +%description barometer +Collects pressure and temperature from digital barometers. +%endif + %if %{with_bind} %package bind Summary: Bind plugin for collectd @@ -271,6 +316,25 @@ The BIND plugin retrieves this information that's encoded in XML and provided via HTTP and submits the values to collectd. %endif +%if %{with_ceph} +%package ceph +Summary: Ceph plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: yajl-devel +%description ceph +Ceph plugin for collectd +%endif + +%if %{with_chrony} +%package chrony +Summary: Chrony plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +%description chrony +Chrony plugin for collectd +%endif + %if %{with_curl} %package curl Summary: Curl plugin for collectd @@ -315,6 +379,17 @@ The DBI plugin uses libdbi, a database abstraction library, to execute SQL statements on a database and read back the result. %endif +%if %{with_disk} +%package disk +Summary: disk plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +%{?_has_libudev:BuildRequires: libudev-devel} +%description disk +The "disk" plugin collects information about the usage of physical disks and +logical disks (partitions). +%endif + %if %{with_dns} %package dns Summary: DNS plugin for collectd @@ -347,6 +422,26 @@ The gmond plugin subscribes to a Multicast group to receive data from gmond, the client daemon of the Ganglia project. %endif +%if %{with_gps} +%package gps +Summary: GPS plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: gpsd-devel +%description gps +This plugin monitor gps related data through gpsd. +%endif + +%if %{with_grpc} +%package grpc +Summary: GRPC plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: protobuf-compiler +%description grpc +This plugin embeds a gRPC server into Collectd. +%endif + %if %{with_hddtemp} %package hddtemp Summary: Hddtemp plugin for collectd @@ -392,14 +487,25 @@ This plugin for collectd allows plugins to be written in Java and executed in an embedded JVM. %endif -%if %{with_libvirt} -%package libvirt -Summary: Libvirt plugin for collectd +%if %{with_log_logstash} +%package log_logstash +Summary: log_logstash plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: yajl-devel +%description log_logstash +This plugin logs in logstash JSON format +%endif + +%if %{with_lua} +%package lua +Summary: Lua plugin for collectd Group: System Environment/Daemons Requires: %{name}%{?_isa} = %{version}-%{release} -BuildRequires: libvirt-devel -%description libvirt -This plugin collects information from virtualized guests. +BuildRequires: lua-devel +%description lua +The Lua plugin embeds a Lua interpreter into collectd and exposes the +application programming interface (API) to Lua scripts. %endif %if %{with_lvm} @@ -456,6 +562,16 @@ MySQL querying plugin. This plugin provides data of issued commands, called handlers and database traffic. %endif +%if %{with_mqtt} +%package mqtt +Summary: mqtt plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: mosquitto-devel +%description mqtt +The MQTT plugin publishes and subscribes to MQTT topics. +%endif + %if %{with_netlink} %package netlink Summary: netlink plugin for collectd @@ -508,17 +624,27 @@ BuildRequires: nut-devel This plugin for collectd provides Network UPS Tools support. %endif +%if %{with_openldap} +%package openldap +Summary: Openldap plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: openldap-devel +%description openldap +This plugin reads monitoring information from OpenLDAP's cn=Monitor subtree. +%endif + %if %{with_perl} %package perl Summary: Perl plugin for collectd Group: System Environment/Daemons Requires: %{name}%{?_isa} = %{version}-%{release} Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) -%if 0%{?rhel} >= 6 -BuildRequires: perl-ExtUtils-Embed -%else + %if 0%{?rhel} && 0%{?rhel} < 6 BuildRequires: perl -%endif + %else +BuildRequires: perl-ExtUtils-Embed + %endif %description perl The Perl plugin embeds a Perl interpreter into collectd and exposes the application programming interface (API) to Perl-scripts. @@ -562,11 +688,11 @@ database. Summary: Python plugin for collectd Group: System Environment/Daemons Requires: %{name}%{?_isa} = %{version}-%{release} -%if 0%{?rhel} >= 6 -BuildRequires: python-devel -%else + %if 0%{?rhel} && 0%{?rhel} < 6 BuildRequires: python26-devel -%endif + %else +BuildRequires: python-devel + %endif %description python The Python plugin embeds a Python interpreter into collectd and exposes the application programming interface (API) to Python-scripts. @@ -577,10 +703,10 @@ application programming interface (API) to Python-scripts. Summary: Redis plugin for collectd Group: System Environment/Daemons Requires: %{name}%{?_isa} = %{version}-%{release} -BuildRequires: credis-devel +BuildRequires: hiredis-devel %description redis The Redis plugin connects to one or more instances of Redis, a key-value store, -and collects usage information using the credis library. +and collects usage information using the hiredis library. %endif %if %{with_rrdcached} @@ -625,6 +751,17 @@ measurements fed to collectd. This includes multimeters, sound level meters, thermometers, and much more. %endif +%if %{with_smart} +%package smart +Summary: SMART plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: libatasmart-devel +%description smart +Collect SMART statistics, notably load cycle count, temperature and bad +sectors. +%endif + %if %{with_snmp} %package snmp Summary: SNMP plugin for collectd @@ -645,6 +782,16 @@ BuildRequires: varnish-libs-devel The Varnish plugin collects information about Varnish, an HTTP accelerator. %endif +%if %{with_virt} +%package virt +Summary: Virt plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: libvirt-devel +%description virt +This plugin collects information from virtualized guests. +%endif + %if %{with_write_http} %package write_http Summary: Write-HTTP plugin for collectd @@ -656,12 +803,22 @@ The Write-HTTP plugin sends the values collected by collectd to a web-server using HTTP POST requests. %endif +%if %{with_write_kafka} +%package write_kafka +Summary: Write-kafka plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: librdkafka-devel +%description write_kafka +The write_kafka plugin sends values to kafka, a distributed messaging system. +%endif + %if %{with_write_redis} %package write_redis Summary: Write-Redis plugin for collectd Group: System Environment/Daemons Requires: %{name}%{?_isa} = %{version}-%{release} -BuildRequires: credis-devel +BuildRequires: hiredis-devel %description write_redis The Write Redis plugin stores values in Redis, a “data structures server”. %endif @@ -676,6 +833,16 @@ BuildRequires: protobuf-c-devel The riemann plugin submits values to Riemann, an event stream processor. %endif +%if %{with_xencpu} +%package xencpu +Summary: xencpu plugin for collectd +Group: System Environment/Daemons +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildRequires: xen-devel +%description xencpu +The xencpu plugin collects CPU statistics from Xen. +%endif + %if %{with_xmms} %package xmms Summary: XMMS plugin for collectd @@ -728,6 +895,13 @@ Requires: libcollectdclient%{?_isa} = %{version}-%{release} %description -n libcollectdclient-devel Development files for libcollectdclient +%package -n collectd-utils +Summary: Collectd utilities +Group: System Environment/Daemons +Requires: libcollectdclient%{?_isa} = %{version}-%{release} +Requires: collectd%{?_isa} = %{version}-%{release} +%description -n collectd-utils +Collectd utilities %prep %setup -q @@ -775,6 +949,12 @@ Development files for libcollectdclient %define _with_ascent --disable-ascent %endif +%if %{with_barometer} +%define _with_barometer --enable-barometer +%else +%define _with_barometer --disable-barometer +%endif + %if %{with_battery} %define _with_battery --enable-battery %else @@ -793,6 +973,12 @@ Development files for libcollectdclient %define _with_cgroups --disable-cgroups %endif +%if %{with_chrony} +%define _with_chrony --enable-chrony +%else +%define _with_chrony --disable-chrony +%endif + %if %{with_conntrack} %define _with_conntrack --enable-conntrack %else @@ -817,12 +1003,24 @@ Development files for libcollectdclient %define _with_cpufreq --disable-cpufreq %endif +%if %{with_cpusleep} +%define _with_cpusleep --enable-cpusleep +%else +%define _with_cpusleep --disable-cpusleep +%endif + %if %{with_csv} %define _with_csv --enable-csv %else %define _with_csv --disable-csv %endif +%if %{with_ceph} +%define _with_ceph --enable-ceph +%else +%define _with_ceph --disable-ceph +%endif + %if %{with_curl} %define _with_curl --enable-curl %else @@ -865,6 +1063,12 @@ Development files for libcollectdclient %define _with_dns --disable-dns %endif +%if %{with_drbd} +%define _with_drbd --enable-drbd +%else +%define _with_drbd --disable-drbd +%endif + %if %{with_email} %define _with_email --enable-email %else @@ -889,6 +1093,12 @@ Development files for libcollectdclient %define _with_exec --disable-exec %endif +%if %{with_fhcount} +%define _with_fhcount --enable-fhcount +%else +%define _with_fhcount --disable-fhcount +%endif + %if %{with_filecount} %define _with_filecount --enable-filecount %else @@ -907,18 +1117,42 @@ Development files for libcollectdclient %define _with_gmond --disable-gmond %endif +%if %{with_gps} +%define _with_gps --enable-gps +%else +%define _with_gps --disable-gps +%endif + +%if %{with_grpc} +%define _with_grpc --enable-grpc +%else +%define _with_grpc --disable-grpc +%endif + %if %{with_hddtemp} %define _with_hddtemp --enable-hddtemp %else %define _with_hddtemp --disable-hddtemp %endif +%if %{with_hugepages} +%define _with_hugepages --enable-hugepages +%else +%define _with_hugepages --disable-hugepages +%endif + %if %{with_interface} %define _with_interface --enable-interface %else %define _with_interface --disable-interface %endif +%if %{with_ipc} +%define _with_ipc --enable-ipc +%else +%define _with_ipc --disable-ipc +%endif + %if %{with_ipmi} %define _with_ipmi --enable-ipmi %else @@ -949,10 +1183,10 @@ Development files for libcollectdclient %define _with_java --disable-java %endif -%if %{with_libvirt} -%define _with_libvirt --enable-libvirt +%if %{with_virt} +%define _with_virt --enable-virt %else -%define _with_libvirt --disable-libvirt +%define _with_virt --disable-virt %endif %if %{with_load} @@ -967,12 +1201,24 @@ Development files for libcollectdclient %define _with_logfile --disable-logfile %endif +%if %{with_log_logstash} +%define _with_log_logstash --enable-log_logstash +%else +%define _with_log_logstash --disable-log_logstash +%endif + %if %{with_lpar} %define _with_lpar --enable-lpar %else %define _with_lpar --disable-lpar %endif +%if %{with_lua} +%define _with_lua --enable-lua +%else +%define _with_lua --disable-lua +%endif + %if %{with_lvm} %define _with_lvm --enable-lvm %else @@ -1033,6 +1279,12 @@ Development files for libcollectdclient %define _with_multimeter --disable-multimeter %endif +%if %{with_mqtt} +%define _with_mqtt --enable-mqtt +%else +%define _with_mqtt --disable-mqtt +%endif + %if %{with_mysql} %define _with_mysql --enable-mysql %else @@ -1081,6 +1333,12 @@ Development files for libcollectdclient %define _with_notify_email --disable-notify_email %endif +%if %{with_notify_nagios} +%define _with_notify_nagios --enable-notify_nagios +%else +%define _with_notify_nagios --disable-notify_nagios +%endif + %if %{with_ntpd} %define _with_ntpd --enable-ntpd %else @@ -1111,6 +1369,12 @@ Development files for libcollectdclient %define _with_onewire --disable-onewire %endif +%if %{with_openldap} +%define _with_openldap --enable-openldap +%else +%define _with_openldap --disable-openldap +%endif + %if %{with_openvpn} %define _with_openvpn --enable-openvpn %else @@ -1172,11 +1436,12 @@ Development files for libcollectdclient %endif %if %{with_python} -%if 0%{?rhel} >= 6 -%define _with_python --enable-python -%else + %if 0%{?rhel} && 0%{?rhel} < 6 %define _with_python --enable-python --with-python=%{_bindir}/python2.6 -%endif +%define _python_config PYTHON_CONFIG="%{_bindir}/python2.6-config" + %else +%define _with_python --enable-python + %endif %else %define _with_python --disable-python %endif @@ -1223,6 +1488,12 @@ Development files for libcollectdclient %define _with_sigrok --disable-sigrok %endif +%if %{with_smart} +%define _with_smart --enable-smart +%else +%define _with_smart --disable-smart +%endif + %if %{with_snmp} %define _with_snmp --enable-snmp %else @@ -1307,6 +1578,12 @@ Development files for libcollectdclient %define _with_tokyotyrant --disable-tokyotyrant %endif +%if %{with_turbostat} +%define _with_turbostat --enable-turbostat +%else +%define _with_turbostat --disable-turbostat +%endif + %if %{with_unixsock} %define _with_unixsock --enable-unixsock %else @@ -1367,6 +1644,18 @@ Development files for libcollectdclient %define _with_write_http --disable-write_http %endif +%if %{with_write_kafka} +%define _with_write_kafka --enable-write_kafka +%else +%define _with_write_kafka --disable-write_kafka +%endif + +%if %{with_write_log} +%define _with_write_log --enable-write_log +%else +%define _with_write_log --disable-write_log +%endif + %if %{with_write_mongodb} %define _with_write_mongodb --enable-write_mongodb %else @@ -1385,6 +1674,24 @@ Development files for libcollectdclient %define _with_write_riemann --disable-write_riemann %endif +%if %{with_write_sensu} +%define _with_write_sensu --enable-write_sensu +%else +%define _with_write_sensu --disable-write_sensu +%endif + +%if %{with_write_tsdb} +%define _with_write_tsdb --enable-write_tsdb +%else +%define _with_write_tsdb --disable-write_tsdb +%endif + +%if %{with_xencpu} +%define _with_xencpu --enable-xencpu +%else +%define _with_xencpu --disable-xencpu +%endif + %if %{with_xmms} %define _with_xmms --enable-xmms %else @@ -1397,7 +1704,20 @@ Development files for libcollectdclient %define _with_zfs_arc --disable-zfs_arc %endif +%if %{with_zone} +%define _with_zone --enable-zone +%else +%define _with_zone --disable-zone +%endif + +%if %{with_zookeeper} +%define _with_zookeeper --enable-zookeeper +%else +%define _with_zookeeper --disable-zookeeper +%endif + %configure CFLAGS="%{optflags} -DLT_LAZY_OR_NOW=\"RTLD_LAZY|RTLD_GLOBAL\"" \ + %{?_python_config} \ --disable-static \ --without-included-ltdl \ --enable-all-plugins=yes \ @@ -1418,110 +1738,134 @@ Development files for libcollectdclient %{?_with_apple_sensors} \ %{?_with_aquaero} \ %{?_with_ascent} \ + %{?_with_barometer} \ %{?_with_battery} \ %{?_with_bind} \ + %{?_with_ceph} \ %{?_with_cgroups} \ + %{?_with_chrony} \ %{?_with_conntrack} \ %{?_with_contextswitch} \ - %{?_with_cpu} \ %{?_with_cpufreq} \ + %{?_with_cpusleep} \ + %{?_with_cpu} \ %{?_with_csv} \ - %{?_with_curl} \ %{?_with_curl_json} \ %{?_with_curl_xml} \ + %{?_with_curl} \ %{?_with_dbi} \ %{?_with_df} \ %{?_with_disk} \ %{?_with_dns} \ + %{?_with_drbd} \ %{?_with_email} \ %{?_with_entropy} \ %{?_with_ethstat} \ %{?_with_exec} \ + %{?_with_fhcount} \ %{?_with_filecount} \ %{?_with_fscache} \ %{?_with_gmond} \ + %{?_with_gps} \ + %{?_with_grpc} \ %{?_with_hddtemp} \ + %{?_with_hugepages} \ %{?_with_interface} \ + %{?_with_ipc} \ %{?_with_ipmi} \ %{?_with_iptables} \ %{?_with_ipvs} \ + %{?_with_irq} \ %{?_with_java} \ - %{?_with_libvirt} \ + %{?_with_load} \ + %{?_with_log_logstash} \ + %{?_with_logfile} \ %{?_with_lpar} \ + %{?_with_lua} \ %{?_with_lvm} \ + %{?_with_madwifi} \ + %{?_with_mbmon} \ + %{?_with_md} \ %{?_with_memcachec} \ + %{?_with_memcached} \ + %{?_with_memory} \ %{?_with_mic} \ %{?_with_modbus} \ + %{?_with_mqtt} \ %{?_with_multimeter} \ %{?_with_mysql} \ %{?_with_netapp} \ %{?_with_netlink} \ + %{?_with_network} \ + %{?_with_nfs} \ %{?_with_nginx} \ %{?_with_notify_desktop} \ %{?_with_notify_email} \ + %{?_with_notify_nagios} \ + %{?_with_ntpd} \ + %{?_with_numa} \ %{?_with_nut} \ + %{?_with_olsrd} \ %{?_with_onewire} \ + %{?_with_openldap} \ + %{?_with_openvpn} \ %{?_with_oracle} \ %{?_with_perl} \ %{?_with_pf} \ %{?_with_pinba} \ %{?_with_ping} \ %{?_with_postgresql} \ + %{?_with_powerdns} \ + %{?_with_processes} \ + %{?_with_protocols} \ %{?_with_python} \ %{?_with_redis} \ %{?_with_routeros} \ %{?_with_rrdcached} \ %{?_with_rrdtool} \ %{?_with_sensors} \ + %{?_with_serial} \ %{?_with_sigrok} \ + %{?_with_smart} \ %{?_with_snmp} \ - %{?_with_tape} \ - %{?_with_tokyotyrant} \ - %{?_with_varnish} \ - %{?_with_write_http} \ - %{?_with_write_mongodb} \ - %{?_with_write_redis} \ - %{?_with_xmms} \ - %{?_with_zfs_arc} \ - %{?_with_irq} \ - %{?_with_load} \ - %{?_with_logfile} \ - %{?_with_madwifi} \ - %{?_with_mbmon} \ - %{?_with_md} \ - %{?_with_memcached} \ - %{?_with_memory} \ - %{?_with_network} \ - %{?_with_nfs} \ - %{?_with_ntpd} \ - %{?_with_numa} \ - %{?_with_olsrd} \ - %{?_with_openvpn} \ - %{?_with_powerdns} \ - %{?_with_processes} \ - %{?_with_protocols} \ - %{?_with_serial} \ %{?_with_statsd} \ %{?_with_swap} \ %{?_with_syslog} \ %{?_with_table} \ - %{?_with_tail} \ %{?_with_tail_csv} \ + %{?_with_tail} \ + %{?_with_tape} \ %{?_with_tcpconns} \ %{?_with_teamspeak2} \ %{?_with_ted} \ %{?_with_thermal} \ %{?_with_threshold} \ + %{?_with_tokyotyrant} \ + %{?_with_turbostat} \ %{?_with_unixsock} \ %{?_with_uptime} \ %{?_with_users} \ %{?_with_uuid} \ + %{?_with_varnish} \ + %{?_with_virt} \ %{?_with_vmem} \ %{?_with_vserver} \ %{?_with_wireless}\ %{?_with_write_graphite} \ %{?_with_write_http} \ - %{?_with_write_riemann} + %{?_with_write_http} \ + %{?_with_write_kafka} \ + %{?_with_write_log} \ + %{?_with_write_mongodb} \ + %{?_with_write_redis} \ + %{?_with_write_riemann} \ + %{?_with_write_sensu} \ + %{?_with_write_tsdb} \ + %{?_with_xencpu} \ + %{?_with_xmms} \ + %{?_with_zfs_arc} \ + %{?_with_zone} \ + %{?_with_zookeeper} %{__make} %{?_smp_mflags} @@ -1530,7 +1874,11 @@ Development files for libcollectdclient %install rm -rf %{buildroot} %{__make} install DESTDIR=%{buildroot} -%{__install} -Dp -m 0755 contrib/redhat/init.d-collectd %{buildroot}%{_initrddir}/collectd +%if 0%{?fedora} || 0%{?rhel} >= 7 +%{__install} -Dp -m0644 contrib/systemd.collectd.service %{buildroot}%{_unitdir}/collectd.service +%else +%{__install} -Dp -m0755 contrib/redhat/init.d-collectd %{buildroot}%{_initrddir}/collectd +%endif %{__install} -Dp -m0644 src/collectd.conf %{buildroot}%{_sysconfdir}/collectd.conf %{__install} -d %{buildroot}%{_sharedstatedir}/collectd/ %{__install} -d %{buildroot}%{_sysconfdir}/collectd.d/ @@ -1560,6 +1908,10 @@ rm -f %{buildroot}%{_datadir}/collectd/java/generic-jmx.jar rm -f %{buildroot}%{_mandir}/man5/collectd-java.5* %endif +%if ! %{with_lua} +rm -f %{buildroot}%{_mandir}/man5/collectd-lua.5* +%endif + %if ! %{with_perl} rm -f %{buildroot}%{_mandir}/man5/collectd-perl.5* rm -f %{buildroot}%{_mandir}/man3/Collectd::Unixsock.3pm* @@ -1583,18 +1935,32 @@ rm -f %{buildroot}%{_mandir}/man5/collectd-snmp.5* rm -rf %{buildroot} %post -/sbin/chkconfig --add collectd +%if 0%{?fedora} || 0%{?rhel} >= 7 +%systemd_post collectd.service +%else +/sbin/chkconfig --add collectd || : +%endif %preun +%if 0%{?fedora} || 0%{?rhel} >= 7 +%systemd_preun collectd.service +%else +# stop collectd only when uninstalling if [ $1 -eq 0 ]; then - /sbin/service collectd stop &>/dev/null - /sbin/chkconfig --del collectd + /sbin/service collectd stop >/dev/null 2>&1 || : + /sbin/chkconfig --del collectd || : fi +%endif %postun -if [ $1 -ge 1 ]; then - /sbin/service collectd condrestart &>/dev/null || : +%if 0%{?fedora} || 0%{?rhel} >= 7 +%systemd_postun_with_restart collectd.service +%else +# restart collectd only when upgrading +if [ $1 -eq 1 ]; then + /sbin/service collectd condrestart >/dev/null 2>&1 || : fi +%endif %post -n libcollectdclient -p /sbin/ldconfig %postun -n libcollectdclient -p /sbin/ldconfig @@ -1603,19 +1969,17 @@ fi %files %doc AUTHORS COPYING ChangeLog README %config(noreplace) %{_sysconfdir}/collectd.conf +%if 0%{?fedora} || 0%{?rhel} >= 7 +%{_unitdir}/collectd.service +%else %{_initrddir}/collectd +%endif %{_sbindir}/collectd -%{_bindir}/collectd-nagios -%{_bindir}/collectd-tg -%{_bindir}/collectdctl %{_sbindir}/collectdmon %{_datadir}/collectd/types.db %{_sharedstatedir}/collectd -%{_mandir}/man1/collectd-nagios.1* %{_mandir}/man1/collectd.1* -%{_mandir}/man1/collectdctl.1* %{_mandir}/man1/collectdmon.1* -%{_mandir}/man1/collectd-tg.1* %{_mandir}/man5/collectd-email.5* %{_mandir}/man5/collectd-exec.5* %{_mandir}/man5/collectd-threshold.5* @@ -1659,14 +2023,17 @@ fi %if %{with_cpufreq} %{_libdir}/%{name}/cpufreq.so %endif +%if %{with_cpusleep} +%{_libdir}/%{name}/cpusleep.so +%endif %if %{with_csv} %{_libdir}/%{name}/csv.so %endif %if %{with_df} %{_libdir}/%{name}/df.so %endif -%if %{with_disk} -%{_libdir}/%{name}/disk.so +%if %{with_drbd} +%{_libdir}/%{name}/drbd.so %endif %if %{with_ethstat} %{_libdir}/%{name}/ethstat.so @@ -1677,15 +2044,24 @@ fi %if %{with_exec} %{_libdir}/%{name}/exec.so %endif +%if %{with_fhcount} +%{_libdir}/%{name}/fhcount.so +%endif %if %{with_filecount} %{_libdir}/%{name}/filecount.so %endif %if %{with_fscache} %{_libdir}/%{name}/fscache.so %endif +%if %{with_hugepages} +%{_libdir}/%{name}/hugepages.so +%endif %if %{with_interface} %{_libdir}/%{name}/interface.so %endif +%if %{with_ipc} +%{_libdir}/%{name}/ipc.so +%endif %if %{with_ipvs} %{_libdir}/%{name}/ipvs.so %endif @@ -1722,6 +2098,9 @@ fi %if %{with_nfs} %{_libdir}/%{name}/nfs.so %endif +%if %{with_notify_nagios} +%{_libdir}/%{name}/notify_nagios.so +%endif %if %{with_ntpd} %{_libdir}/%{name}/ntpd.so %endif @@ -1779,6 +2158,9 @@ fi %if %{with_threshold} %{_libdir}/%{name}/threshold.so %endif +%if %{with_turbostat} +%{_libdir}/%{name}/turbostat.so +%endif %if %{with_unixsock} %{_libdir}/%{name}/unixsock.so %endif @@ -1803,7 +2185,21 @@ fi %if %{with_write_graphite} %{_libdir}/%{name}/write_graphite.so %endif - +%if %{with_write_log} +%{_libdir}/%{name}/write_log.so +%endif +%if %{with_write_sensu} +%{_libdir}/%{name}/write_sensu.so +%endif +%if %{with_write_tsdb} +%{_libdir}/%{name}/write_tsdb.so +%endif +%if %{with_zfs_arc} +%{_libdir}/%{name}/zfs_arc.so +%endif +%if %{with_zookeeper} +%{_libdir}/%{name}/zookeeper.so +%endif %files -n libcollectdclient-devel %{_includedir}/collectd/client.h @@ -1816,6 +2212,14 @@ fi %files -n libcollectdclient %{_libdir}/libcollectdclient.so.* +%files -n collectd-utils +%{_bindir}/collectd-nagios +%{_bindir}/collectd-tg +%{_bindir}/collectdctl +%{_mandir}/man1/collectdctl.1* +%{_mandir}/man1/collectd-nagios.1* +%{_mandir}/man1/collectd-tg.1* + %if %{with_amqp} %files amqp %{_libdir}/%{name}/amqp.so @@ -1836,11 +2240,26 @@ fi %{_libdir}/%{name}/ascent.so %endif +%if %{with_barometer} +%files barometer +%{_libdir}/%{name}/barometer.so +%endif + %if %{with_bind} %files bind %{_libdir}/%{name}/bind.so %endif +%if %{with_ceph} +%files ceph +%{_libdir}/%{name}/ceph.so +%endif + +%if %{with_chrony} +%files chrony +%{_libdir}/%{name}/chrony.so +%endif + %if %{with_curl} %files curl %{_libdir}/%{name}/curl.so @@ -1856,6 +2275,11 @@ fi %{_libdir}/%{name}/curl_xml.so %endif +%if %{with_disk} +%files disk +%{_libdir}/%{name}/disk.so +%endif + %if %{with_dns} %files dns %{_libdir}/%{name}/dns.so @@ -1876,6 +2300,16 @@ fi %{_libdir}/%{name}/gmond.so %endif +%if %{with_gps} +%files gps +%{_libdir}/%{name}/gps.so +%endif + +%if %{with_grpc} +%files grpc +%{_libdir}/%{name}/grpc.so +%endif + %if %{with_hddtemp} %files hddtemp %{_libdir}/%{name}/hddtemp.so @@ -1899,9 +2333,20 @@ fi %{_mandir}/man5/collectd-java.5* %endif -%if %{with_libvirt} -%files libvirt -%{_libdir}/%{name}/libvirt.so +%if %{with_virt} +%files virt +%{_libdir}/%{name}/virt.so +%endif + +%if %{with_log_logstash} +%files log_logstash +%{_libdir}/%{name}/log_logstash.so +%endif + +%if %{with_lua} +%files lua +%{_mandir}/man5/collectd-lua* +%{_libdir}/%{name}/lua.so %endif %if %{with_lvm} @@ -1924,6 +2369,11 @@ fi %{_libdir}/%{name}/modbus.so %endif +%if %{with_mqtt} +%files mqtt +%{_libdir}/%{name}/mqtt.so +%endif + %if %{with_mysql} %files mysql %{_libdir}/%{name}/mysql.so @@ -1954,6 +2404,11 @@ fi %{_libdir}/%{name}/nut.so %endif +%if %{with_openldap} +%files openldap +%{_libdir}/%{name}/openldap.so +%endif + %if %{with_perl} %files perl %{perl_vendorlib}/Collectd.pm @@ -2010,6 +2465,11 @@ fi %{_libdir}/%{name}/sigrok.so %endif +%if %{with_smart} +%files smart +%{_libdir}/%{name}/smart.so +%endif + %if %{with_snmp} %files snmp %{_mandir}/man5/collectd-snmp.5* @@ -2026,6 +2486,11 @@ fi %{_libdir}/%{name}/write_http.so %endif +%if %{with_write_kafka} +%files write_kafka +%{_libdir}/%{name}/write_kafka.so +%endif + %if %{with_write_redis} %files write_redis %{_libdir}/%{name}/write_redis.so @@ -2036,6 +2501,11 @@ fi %{_libdir}/%{name}/write_riemann.so %endif +%if %{with_xencpu} +%files xencpu +%{_libdir}/%{name}/xencpu.so +%endif + %if %{with_xmms} %files xmms %{_libdir}/%{name}/xmms.so @@ -2053,6 +2523,35 @@ fi %doc contrib/ %changelog +* Tue Aug 23 2016 Marc Fournier - 5.7.0-1 +- New PRE-RELEASE version +- New plugins enabled by default: hugepages + +* Sun Aug 14 2016 Ruben Kerkhof - 5.6.0-1 +- New PRE-RELEASE version +- New plugins enabled by default: chrony, cpusleep, gps, lua, mqtt, notify_nagios +- New plugins disabled by default: grpc, xencpu, zone + +* Tue Jul 26 2016 Ruben Kerkhof - 5.5.2-1 +- New upstream version +- Contains fix for CVE-2016-6254 +- Change collectd.org url to https + +* Sat Jun 04 2016 Ruben Kerkhof 5.5.1-1 +- New upstream version + +* Wed May 27 2015 Marc Fournier 5.5.0-1 +- New upstream version +- New plugins enabled by default: ceph, drbd, log_logstash, write_tsdb, smart, + openldap, redis, write_redis, zookeeper, write_log, write_sensu, ipc, + turbostat, fhcount +- New plugins disabled by default: barometer, write_kafka +- Enable zfs_arc, now supported on Linux +- Install disk plugin in a dedicated package, as it depends on libudev +- use systemd on EL7, sysvinit on EL6 & EL5 +- Install collectdctl, collectd-tg and collectd-nagios in collectd-utils.rpm +- Add build-dependency on libcap-devel + * Mon Aug 19 2013 Marc Fournier 5.4.2-1 - New upstream version - Build netlink plugin by default @@ -2106,7 +2605,7 @@ fi * Sat Nov 17 2012 Ruben Kerkhof 5.1.0-2 - Move perl stuff to perl_vendorlib - Replace hardcoded paths with macros -- Remove unneccesary Requires +- Remove unnecessary Requires - Removed .a and .la files - Some other small cleanups @@ -2114,7 +2613,7 @@ fi - New upstream version - Changes to support 5.1.0 - Enabled all buildable plugins based on libraries available on EL6 + EPEL -- All plugins requiring external libraries are now shipped in seperate +- All plugins requiring external libraries are now shipped in separate packages. - No longer treat Java plugin as an exception, correctly set $JAVA_HOME during the build process + ensure build deps are installed.