-# $Revision: 1.122 $, $Date: 2012-05-07 17:55:54 $
# TODO:
+#warning: Installed (but unpackaged) file(s) found:
+# /etc/collectd.d/aggregation.conf
+# /etc/collectd.d/ceph.conf
+# /etc/collectd.d/cgroups.conf
+# /etc/collectd.d/chrony.conf
+# /etc/collectd.d/cpusleep.conf
+# /etc/collectd.d/drbd.conf
+# /etc/collectd.d/fhcount.conf
+# /etc/collectd.d/gps.conf
+# /etc/collectd.d/hugepages.conf
+# /etc/collectd.d/ipc.conf
+# /etc/collectd.d/log_logstash.conf
+# /etc/collectd.d/lua.conf
+# /etc/collectd.d/lvm.conf
+# /etc/collectd.d/mcelog.conf
+# /etc/collectd.d/notify_nagios.conf
+# /etc/collectd.d/openldap.conf
+# /etc/collectd.d/ovs_events.conf
+# /etc/collectd.d/ovs_stats.conf
+# /etc/collectd.d/pinba.conf
+# /etc/collectd.d/smart.conf
+# /etc/collectd.d/snmp_agent.conf
+# /etc/collectd.d/statsd.conf
+# /etc/collectd.d/tail_csv.conf
+# /etc/collectd.d/target_v5upgrade.conf
+# /etc/collectd.d/turbostat.conf
+# /etc/collectd.d/write_log.conf
+# /etc/collectd.d/write_prometheus.conf
+# /etc/collectd.d/write_sensu.conf
+# /etc/collectd.d/write_tsdb.conf
+# /etc/collectd.d/xencpu.conf
+# /etc/collectd.d/zfs_arc.conf
+# /etc/collectd.d/zookeeper.conf
+# /usr/lib64/collectd/aggregation.so
+# /usr/lib64/collectd/ceph.so
+# /usr/lib64/collectd/cgroups.so
+# /usr/lib64/collectd/chrony.so
+# /usr/lib64/collectd/cpusleep.so
+# /usr/lib64/collectd/drbd.so
+# /usr/lib64/collectd/fhcount.so
+# /usr/lib64/collectd/gps.so
+# /usr/lib64/collectd/hugepages.so
+# /usr/lib64/collectd/ipc.so
+# /usr/lib64/collectd/log_logstash.so
+# /usr/lib64/collectd/lua.so
+# /usr/lib64/collectd/lvm.so
+# /usr/lib64/collectd/mcelog.so
+# /usr/lib64/collectd/notify_nagios.so
+# /usr/lib64/collectd/openldap.so
+# /usr/lib64/collectd/ovs_events.so
+# /usr/lib64/collectd/ovs_stats.so
+# /usr/lib64/collectd/pinba.so
+# /usr/lib64/collectd/smart.so
+# /usr/lib64/collectd/snmp_agent.so
+# /usr/lib64/collectd/statsd.so
+# /usr/lib64/collectd/synproxy.so
+# /usr/lib64/collectd/tail_csv.so
+# /usr/lib64/collectd/turbostat.so
+# /usr/lib64/collectd/write_log.so
+# /usr/lib64/collectd/write_prometheus.so
+# /usr/lib64/collectd/write_sensu.so
+# /usr/lib64/collectd/write_tsdb.so
+# /usr/lib64/collectd/xencpu.so
+# /usr/lib64/collectd/zfs_arc.so
+# /usr/lib64/collectd/zookeeper.so
+# /usr/share/collectd/collection3/README
+# /usr/share/collectd/collection3/bin/.htaccess
+#
# - package contrib scripts as %doc
# - perl modules with Collectd classes package to separate package
# - Bundled libraries - check if its not changed ones and if it can be
# librouteros . . . . . no ('routeros_api.h' not found) (http://verplant.org/librouteros/)
# libtokyotyrant . . . no (tcrdb.h not found) (http://1978th.net/tokyotyrant/)
# libyajl . . . . . . . no (yajl/yajl_parse.h not found)
-# protobuf-c . . . . . no
+# protobuf-c . . . . . no
# oracle . . . . . . . no (ORACLE_HOME is not set)
# - Disabled modules (build most of them an package):
# amqp . . . . . . . no
%bcond_without dns # DNS plugin
%bcond_without ipmi # IPMI plugin
%bcond_without iptables # iptables plugin
+%bcond_with java
%bcond_without libesmtp # notify_email plugin
%bcond_without libvirt # libvirt plugin
%bcond_without modbus # modbus plugin
Summary: Collects system information in RRD files
Summary(pl.UTF-8): Zbieranie informacji o systemie w plikach RRD
Name: collectd
-Version: 5.1.0
-Release: 1
+Version: 5.9.2
+Release: 5
License: GPL v2
Group: Daemons
-Source0: http://collectd.org/files/%{name}-%{version}.tar.bz2
-# Source0-md5: 141570150b4608c0c567330f6f146e0f
+# http://collectd.org/files/%{name}-%{version}.tar.bz2 is xz compressed :/
+Source0: %{name}-%{version}.tar.xz
+# Source0-md5: 4ec308f256a3d3575f6c8a2be4338966
Source1: %{name}.conf
Source2: %{name}.init
Source3: %{name}-http.conf
Source4: %{name}-lighttpd.conf
+Source5: %{name}-apache.conf
Source10: %{name}-df.conf
Source11: %{name}-rrdtool.conf
Patch0: %{name}-collection.patch
-Patch1: compile.patch
Patch2: noquote.patch
-Patch3: libiptc.patch
-Patch4: pld.patch
-Patch5: %{name}-netlink.patch
-Patch6: %{name}-modbus.patch
URL: http://collectd.org/
%{?with_ipmi:BuildRequires: OpenIPMI-devel >= 2.0.14-3}
BuildRequires: autoconf
%{?with_libesmtp:BuildRequires: libesmtp-devel}
BuildRequires: libltdl-devel
BuildRequires: libmemcached-devel
-%{?with_netlink:BuildRequires: libnetlink-devel >= 3.0.0}
+%{?with_modbus:BuildRequires: libmodbus-devel}
+%{?with_netlink:BuildRequires: libmnl-devel}
%{?with_libvirt:BuildRequires: libnl1-devel}
%{?with_notify:BuildRequires: libnotify-devel}
%{?with_ping:BuildRequires: liboping-devel}
BuildRequires: libstatgrab-devel >= 0.12
BuildRequires: libstdc++-devel
BuildRequires: libtool
+%{?with_libvirt:BuildRequires: libvirt-devel}
%{?with_xml:BuildRequires: libxml2-devel}
%{?with_sensors:BuildRequires: lm_sensors-devel}
-%{?with_modbus:BuildRequires: libmodbus-devel}
%{?with_mysql:BuildRequires: mysql-devel}
-%{?with_libvirt:BuildRequires: libvirt-devel}
BuildRequires: ncurses-devel
%{?with_snmp:BuildRequires: net-snmp-devel}
%{?with_libvirt:BuildRequires: numactl-devel}
10 second resolution while being nice to the system.
%description -l pl.UTF-8
-collectd to mały demon zbierający co 10 sekund informacje o systemie
-i zapisujący wyniki do pliku RRD.
+collectd to mały demon zbierający co 10 sekund informacje o systemie i
+zapisujący wyniki do pliku RRD.
W odróżnieniu od innych podobnych programów collectd nie jest
-skryptem, lecz jest napisany w czystym C z myślą o wydajności
-i przenośności. Jako demon pozostaje w pamięci, więc nie ma potrzeby
+skryptem, lecz jest napisany w czystym C z myślą o wydajności i
+przenośności. Jako demon pozostaje w pamięci, więc nie ma potrzeby
urychamiania ciężkiego interpretera za każdym razem, kiedy powinny być
zapisane nowe wartości. Dzięki temu collect może mieć rozdzielczość 10
sekund i nie obciążać zbytnio systemu.
Summary(pl.UTF-8): Pliki nagłówkowe bibliotek %{name}
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
+Obsoletes: collectd-static
%description devel
Header files for %{name} libraries.
%description devel -l pl.UTF-8
Pliki nagłówkowe bibliotek %{name}.
-%package static
-Summary: Static files for %{name} libraries
-Summary(pl.UTF-8): Pliki statyczne bibliotek %{name}
-Group: Development/Libraries
-Requires: %{name}-libs = %{version}-%{release}
-
-%description static
-Static files for %{name} libraries.
-
-%description static -l pl.UTF-8
-Pliki statyczne bibliotek %{name}.
-
%package apache
Summary: apache-plugin for collectd
Summary(pl.UTF-8): Wtyczka apache dla collectd
Requires: perl(URI::Escape)
Requires: webserver(cgi)
Suggests: fonts-TTF-DejaVu
+Conflicts: apache-base < 2.4.0-1
%description collection
Web script for collectd.
Summary(pl.UTF-8): Web script for collectd
Group: Applications/WWW
Requires: %{name} = %{version}-%{release}
-Requires: perl-Collectd = %{version}-%{release}
Requires: perl(Config::General)
Requires: perl(HTML::Entities)
-Requires: perl(Regexp::Common)
Requires: perl(RRDs)
+Requires: perl(Regexp::Common)
+Requires: perl-Collectd = %{version}-%{release}
Requires: webserver(cgi)
Suggests: fonts-TTF-DejaVu
+Conflicts: apache-base < 2.4.0-1
%description collection3
Web script for collectd.
%description modbus
The Modbus plugin connects to a Modbus "slave" via Modbus/TCP and
-reads register values. It supports reading single registers (unsigned 16
-bit values), large integer values (unsigned 32 bit values) and
+reads register values. It supports reading single registers (unsigned
+16 bit values), large integer values (unsigned 32 bit values) and
floating point values (two registers interpreted as IEEE floats in big
-endian notation).
+endian notation).
%package multimeter
Summary: multimeter-plugin for collectd
Requires: %{name} = %{version}-%{release}
%description numa
-The numa plugin reports statistics of the Non-Uniform Memory
-Access (NUMA) subsystem of Linux.
+The numa plugin reports statistics of the Non-Uniform Memory Access
+(NUMA) subsystem of Linux.
%package nut
Summary: nut-plugin for collectd
%description write_graphite
The Write Graphite plugin stores values in Carbon, the storage layer
-of Graphite.
-The plugin aims to be very efficient. It keeps the TCP connection to
-Carbon open in order to minimize the connection handshake overhead. It
-buffers the data in a buffer to send many lines at once, rather than
-generating lots of small network packets. The size of this buffer
-(1428 bytes) is dimensioned so that the buffer as well as the TCP and
-IP header fit into one Ethernet frame and can (hopefully) be delivered
-without fragmentation.
+of Graphite. The plugin aims to be very efficient. It keeps the TCP
+connection to Carbon open in order to minimize the connection
+handshake overhead. It buffers the data in a buffer to send many lines
+at once, rather than generating lots of small network packets. The
+size of this buffer (1428 bytes) is dimensioned so that the buffer as
+well as the TCP and IP header fit into one Ethernet frame and can
+(hopefully) be delivered without fragmentation.
%package write_http
Summary: write_http-plugin for collectd
%prep
%setup -q
%patch0 -p1
-%patch1 -p1
%patch2 -p1
-%patch3 -p0
-%patch4 -p0
-%patch5 -p1
-#%patch6 -p1
%build
-%{__libtoolize}
+%{__libtoolize} --ltdl
%{__aclocal}
%{__autoconf}
%{__autoheader}
%{__automake}
%configure \
- CPPFLAGS="-Wno-unused-but-set-variable" \
+ CPPFLAGS="-Wno-unused-but-set-variable -Wno-format-truncation" \
c_cv_have_libperl=yes \
+ --disable-werror \
--with-libiptc=/usr \
--with-libstatgrab=/usr \
--with-lm-sensors=/usr \
%{__enable_disable dns} \
%{__enable_disable ipmi} \
%{__enable_disable iptables} \
+ %{__with_without java} \
%{__enable_disable multimeter} \
%{__enable_disable mysql} \
%{__enable_disable netlink} \
--disable-ipvs
-%{__make} LDFLAGS="%{rpmldflags} -lstatgrab" \
+%{__make} -j1 LDFLAGS="%{rpmldflags} -lstatgrab" \
BUILD_WITH_OPENIPMI_CFLAGS="-I/usr/include" \
BUILD_WITH_OPENIPMI_LIBS="-L%{_libdir} -lOpenIPMIutils -lOpenIPMIpthread"
# Web frontend:
install contrib/collection.conf $RPM_BUILD_ROOT%{_webappdir}
install contrib/collection.cgi $RPM_BUILD_ROOT%{_appdir}/cgi-bin
-install %{SOURCE3} $RPM_BUILD_ROOT%{_webappdir}/apache.conf
+install %{SOURCE5} $RPM_BUILD_ROOT%{_webappdir}/apache.conf
install %{SOURCE3} $RPM_BUILD_ROOT%{_webappdir}/httpd.conf
install %{SOURCE4} $RPM_BUILD_ROOT%{_webappdir}/lighttpd.conf
%triggerun collection -- apache1 < 1.3.37-3, apache1-base
%webapp_unregister apache %{_webapp}
-%triggerin collection -- apache < 2.2.0, apache-base
+%triggerin collection -- apache-base
%webapp_register httpd %{_webapp}
-%triggerun collection -- apache < 2.2.0, apache-base
+%triggerun collection -- apache-base
%webapp_unregister httpd %{_webapp}
%triggerin collection -- lighttpd
%files
%defattr(644,root,root,755)
-%doc AUTHORS ChangeLog README TODO contrib
+%doc AUTHORS ChangeLog README contrib
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.conf
%dir %{_sysconfdir}/%{name}.d
%dir %{_webappdir}
%attr(755,root,root) %{_sbindir}/collectdmon
%attr(755,root,root) %{_bindir}/collectdctl
%attr(755,root,root) %{_bindir}/collectd-nagios
+%attr(755,root,root) %{_bindir}/collectd-tg
%dir %{_libdir}/%{name}
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/types.db
%attr(754,root,root) /etc/rc.d/init.d/%{name}
%{_mandir}/man1/collectd.1*
%{_mandir}/man1/collectd-nagios.1*
+%{_mandir}/man1/collectd-tg.1*
%{_mandir}/man1/collectdctl.1*
%{_mandir}/man1/collectdmon.1*
%{_mandir}/man5/collectd.conf.5*
%{_mandir}/man5/collectd-java.5*
+%{_mandir}/man5/collectd-lua.5*
%{_mandir}/man5/types.db.5*
%dir %{_var}/lib/%{name}
%files libs
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libcollectdclient.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libcollectdclient.so.0
+%attr(755,root,root) %ghost %{_libdir}/libcollectdclient.so.1
%files devel
%defattr(644,root,root,755)
%{_includedir}/%{name}/*.h
%{_pkgconfigdir}/libcollectdclient.pc
-%files static
-%defattr(644,root,root,755)
-%{_libdir}/libcollectdclient.a
-%{_libdir}/%{name}/*.a
-
%files collection
%defattr(644,root,root,755)
%config(noreplace) %verify(not md5 mtime size) %{_webappdir}/collection.conf
%if %{with libvirt}
%files libvirt
%defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.d/libvirt.conf
-%attr(755,root,root) %{_libdir}/%{name}/libvirt.so
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.d/virt.conf
+%attr(755,root,root) %{_libdir}/%{name}/virt.so
%endif
%files load
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.d/uuid.conf
%attr(755,root,root) %{_libdir}/%{name}/uuid.so
+%if %{with varnish}
%files varnish
%defattr(644,root,root,755)
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.d/varnish.conf
%attr(755,root,root) %{_libdir}/%{name}/varnish.so
+%endif
%files vmem
%defattr(644,root,root,755)