Accepting request 514040 from server:monitoring

1

OBS-URL: https://build.opensuse.org/request/show/514040
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/collectd?expand=0&rev=26
This commit is contained in:
Dominique Leuenberger 2017-08-24 16:43:51 +00:00 committed by Git OBS Bridge
commit 87630acead
11 changed files with 626 additions and 576 deletions

View File

@ -1,17 +0,0 @@
Index: b/src/utils_cmd_putval.c
===================================================================
--- a/src/utils_cmd_putval.c
+++ b/src/utils_cmd_putval.c
@@ -217,10 +217,11 @@ int handle_putval (FILE *fh, char *buffe
values_submitted++;
} /* while (*buffer != 0) */
/* Done parsing the options. */
-
+#if 0
print_to_socket (fh, "0 Success: %i %s been dispatched.\n",
values_submitted,
(values_submitted == 1) ? "value has" : "values have");
+#endif
sfree (vl.values);
return (0);

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:017f3a4062187e594d8ab6af685655fb82a8a942dc574668e68242bdb8ba820f
size 1800476

3
collectd-5.7.2.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9d20a0221569a8d6b80bbc52b86e5e84965f5bafdbf5dfc3790e0fed0763e592
size 1798777

View File

@ -1,17 +1,16 @@
--- src/perl.c.orig
+++ src/perl.c
@@ -2411,7 +2411,13 @@ static int perl_config_loadplugin (pTHX_
@@ -2504,7 +2504,12 @@ static int perl_config_loadplugin(pTHX_
log_debug ("perl_config: Loading Perl plugin \"%s\"", value);
load_module (PERL_LOADMOD_NOIMPORT,
- newSVpv (module_name, strlen (module_name)), Nullsv);
+ newSVpv (module_name, strlen (module_name)),
log_debug("perl_config: Loading Perl plugin \"%s\"", value);
load_module(PERL_LOADMOD_NOIMPORT, newSVpv(module_name, strlen(module_name)),
- Nullsv);
+#if PERL_VERSION >= 10
+ newSViv(0)
+ newSViv(0)
+#else
+ Nullsv
+ Nullsv
+#endif
+ );
return 0;
+ );
return 0;
} /* static int perl_config_loadplugin (oconfig_item_it *) */

View File

@ -1,11 +0,0 @@
--- a/configure.ac 2014-03-15 15:48:45.278001132 +0100
+++ b/configure.ac 2014-03-15 15:54:06.574995791 +0100
@@ -4666,7 +4666,7 @@
fi
# }}}
-PKG_CHECK_MODULES([LIBNOTIFY], [libnotify],
+PKG_CHECK_MODULES([LIBNOTIFY], [libnotify gtk+-2.0],
[with_libnotify="yes"],
[if test "x$LIBNOTIFY_PKG_ERRORS" = "x"; then
with_libnotify="no"

View File

@ -1,10 +0,0 @@
prefix=/
exec_prefix=${prefix}
libdir=/@@LIB@@
includedir=${prefix}/include
Name: pthread
Description: POSIX threading library
Version: 0.0.0
Libs: -lpthread
Cflags:

View File

@ -5,9 +5,5 @@ addFilter('non-etc-or-var-file-marked-as-conffile .*/collectd/postgresql_default
addFilter('macro-in-comment')
addFilter('no-manual-page-for-binary rccollectd')
addFilter('obsolete-suse-version-check')
#There no fsf address in that file
addFilter('incorrect-fsf-address /usr/share/doc/packages/collectd/contrib/network-proxy.py')

View File

@ -1,6 +1,6 @@
--- contrib/README.orig 2013-06-04 02:29:18.736835454 +0200
+++ contrib/README 2013-06-04 02:29:59.160849717 +0200
@@ -28,22 +28,6 @@
--- contrib/README.orig
+++ contrib/README
@@ -33,22 +33,6 @@
`/var/lib/collectd/' and generate an HTML file and a directory containing
several PNG files which are graphs of the RRD files found.
@ -23,15 +23,10 @@
exec-munin.px
-------------
Script to be used with the exec-plugin (see collectd-exec(5) for details)
@@ -65,16 +49,6 @@
@@ -70,11 +54,6 @@
RRD-file that should have been in multiple RRD-files instead. Is is used by
`migrate-3-4.px' to split up the cpu-, nfs-, swap-files and possibly others.
-fedora/
--------
- Init-script and Spec-file that can be used when creating RPM-packages for
-Fedora.
-
-GenericJMX.conf
----------------
- Example configuration file for the GenericJMX Java plugin. Please read the
@ -40,7 +35,7 @@
migrate-3-4.px
--------------
Migration-script to ease the switch from version 3 to version 4. Many
@@ -84,10 +58,6 @@
@@ -84,10 +63,6 @@
may still need to do some things by hand, read `README.migration' for more
details.
@ -51,7 +46,7 @@
snmp-data.conf
--------------
Sample configuration for the SNMP plugin. This config includes a few standard
@@ -97,11 +67,6 @@
@@ -97,7 +72,3 @@
whatever people have send in. If you have some more definitions please send
them in, so others can profit from it.
@ -59,7 +54,3 @@
------------
- Manifest file for the Solaris SMF system and detailed information on how to
-register collectd as a service with this system.
-
collectd.service
----------------
Service file for systemd. Please ship this file as

View File

@ -1,11 +1,10 @@
diff --git a/configure.ac b/configure.ac
index 87d1502..15efa43 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
@@ -1,6 +1,6 @@
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ([2.60])
-AC_INIT([collectd],[m4_esyscmd(./version-gen.sh)])
+AC_INIT([collectd],[@@VERSION@@])
AC_CONFIG_SRCDIR(src/)
AC_CONFIG_SRCDIR(src/target_set.c)
AC_CONFIG_HEADERS(src/config.h)
AC_CONFIG_AUX_DIR([libltdl/config])

View File

@ -1,3 +1,433 @@
-------------------------------------------------------------------
Tue Jun 27 11:18:06 UTC 2017 - tchvatal@suse.com
- Disable NUT plugin on older distros (broken NUT devel package)
- Make sure we build lvm plugin
- Disable turbostat plugin as it does not work with new kernels
https://github.com/collectd/collectd/issues/2311
- Version update to 5.7.2:
* Various small fixes around, notable fix for CVE-2017-7401
- Update buildrequires to include dependencies not detected by
configure.ac (like python3)
- Disable Werror
- List all the modules in files and thus stick to --enable-all passed
to configure to avoid having to name them all
- Switch to python3 from python2 as plugin can be built only once...
- Fix build on Factory
- Remove unused collectd-pthread.pc SOURCE file as it does not
need to be done anymore
-------------------------------------------------------------------
Tue Jun 27 11:13:25 UTC 2017 - tchvatal@suse.com
- Remove all the always true conditionals for readability
- Convert to pkgconfig style dependencies
- Remove never applied patch collectd-pkgconfig_libnotify_add_gtk.patch
-------------------------------------------------------------------
Thu Jun 22 11:05:58 UTC 2017 - tchvatal@suse.com
- Disable libdb collectd integration as we would like to reduce
libdb exposure everywhere. There are other db backends in collectd
anyway
-------------------------------------------------------------------
Thu May 25 07:31:25 UTC 2017 - jengelh@inai.de
- Trim filler wording from descriptions, resolve orthographic
errors, and shorten a finddelete call.
-------------------------------------------------------------------
Sat May 6 15:29:29 UTC 2017 - benoit.monin@gmx.fr
- update to version 5.7.1:
* collectd: Handling of boolean configuration options has been
unified. Thanks to Sebastian Harl. #2083, #2098
* collectd: Reporting of internal statistics has been fixed.
Thanks to Florian Forster. #2108
* collectd, various plugins: Bugs and issues reported by
scan-build and coverity-scan have been fixed. Thanks to Ruben
Kerkhof and Florian Forster.
* Build system: Parallel build have been fixed. Thanks to Ruben
Kerkhof. #2110
* DPDKStat plugin: Portability issues and a double-close bug have
been fixed. Thanks to Ruben Kerkhof and Marc Fournier.
* Intel RDT plugin: A check for the libpqos library version has
been added. Thanks to Serhiy Pshyk.
* NetApp plugin: Compilation problems have been corrected. Thanks
to Florian Forster. #2120
* Write Prometheus plugin: A memory leak has been fixed. Thanks
to Ruben Kerkhof.
- additional changes from version 5.7.0
* Documentation: The Turbostat plugin section has been improved.
Thanks to Florian Forster
* Documentation: The semantics of the "TypesDB" option have been
improved. Thanks to Florian Forster.
* collectd: A generic interface for parsing the text protocol has
been added. Thanks to Sebastian Harl. #1749
* collectd: Threads now get named, making them easier to track
using tools such as top, ps, etc. Thanks to Manuel Luis
Sanmartín Rozada and Marc Fournier. #547
* AMQP plugin, Write Graphite plugin, Write Kafka plugin: The new
"[Graphite]PreserveSeparator" option allows retaining the
default dot separator rather than escaping it. Thanks to
Florian Forster. #419
* Battery plugin: A StateFS backend for gathering statistics has
been added. Thanks to Rinigus. #1795
* CPU plugin: CPU aggregation on AIX was fixed. Thanks to Chao
Yang. #1957
* Collectd::Unixsock: Fractional seconds support has been made
more robust. Thanks to Matthias Bethke. #2052
* DPDKStat plugin: This new plugin collects DPDK interface
statistics. Thanks to Maryam Tahhan, Harry van Haaren, Taras
Chornyi and Kim Jones. #1649
* gRPC plugin: The "DispatchValues" option has been renamed to
"PutValues". Thanks to Florian Forster.
* HDDTemp plugin: The 32 devices limit has been removed. Thanks
to Benjamin Gilbert. #631
* Hugepages plugin: This new plugin reports the number of used
and free hugepages on Linux. Thanks to Jaroslav Safka, Maryam
Tahhan, Kim Jones and Florian Forster. #1799
* Intel RDT plugin: This new plugin collects statistics exposed
by Intel's Resource Director Technology . Thanks to SerhiyX.
#1970
* memcached plugin: The new "Address" option allows connecting to
a different server than specified by the "Host" option. Thanks
to Pavel Rochnyack. #1975
* nginx plugin: Support for reporting failed connections has been
added. Thanks to Pavel Rochnyack. #1609
* Perl plugin: Significant internal reworking has been made. The
new "RegisterLegacyFlush" option has been added. Thanks to
Pavel Rochnyack. #1731
* PostgreSQL plugin: Timestamps are now RFC 3339-formatted local
time. Thanks to Igor Peshansky and Dave Cunningham. #1918
* Processes plugin: Internal performance improvements have been
made. Thanks to Pavel Rochnyack. #1980, #1981
* RRDCacheD plugin: The plugin now tries to reconnect upon failed
operations. Thanks to Sebastian Harl. #1959
* SpamAssassin: The plugin can now run in Perl's "tainted mode"
("-T"). Thanks to Akos Vandra. #1962
* Tail plugin: Support for calculating latency distribution of
matching values has been added. Thanks to Pavel Rochnyack and
Florian Forster. #1700
* Tail plugin: The new "GaugePersist" option has been added.
Thanks to Florian Forster. #2015
* Target:Set, Target:Replace, Match:RegEx: MetaData support has
been added . Thanks to Igor Peshansky. #1922, #1923, #1930
* turbostat plugin: The new "LogicalCoreNames" option allows
switching to per-core naming rather than per-CPU. Thanks to
Brock Johnson. #2056
* virt plugin: The new "BlockDeviceFormat" and
"BlockDeviceFormatBasename" options help controlling the names
reported for block-device metrics. Thanks to Deyan Chepishev.
#2004
* Write Graphite plugin: A new "DropDuplicateFields" option has
been added. Thanks to Michael Leinartas. #1915
* Write Kafka plugin: The "Key Random" setting has been
reintroduced. Thanks to Florian Forster. #1977
* Write Log plugin: Support for formatting output in JSON has
been added, using the new "Format" configuration option. Thanks
to Igor Peshansky. #1924
* Write Prometheus plugin: This new plugin publishes values using
an embedded HTTP server, in a format compatible with
Prometheus' collectd_exporter. Thanks to Florian Forster. #1967
- additional changes from version 5.6.2
* collectd: A compile error on AIX has been fixed: "MSG_DONTWAIT"
is not available on AIX. Thanks to Chao Yang.
* collectd: The capability checking has been rewritten to be more
portable. Thanks to Florian Forster. #2009
* collectd.conf(5): Various typos have been fixed. Thanks to Marc
Fournier.
* collectd-tg: Incorrect usage of "nanosleep()" has been fixed
which caused the tool to sleep (almost) indefinitely. Thanks to
Florian Forster.
* Build system: Detection of the Java environment has been made
deterministic to allow for reproducible builds. Thanks to Marc
Fournier. #1523
* Build system: Detection of the Lua headers has been improved.
Thanks to Ruben Kerkhof.
* APC UPS plugin: Unavailable metrics are now skipped instead of
reported as 0 (zero). Thanks to Florian Forster. #2025
* Modbus plugin: Build issues on FreeBSD have been fixed. Thanks
to Florian Forster.
* OpenVPN plugin: Gracefully handle empty configurations. Thanks
to Pavel Rochnyack. #1932
* PowerDNS plugin: The "recursor command" has been fixed so
PowerDNS can correctly parse all requested fields. Thanks to
Ruben Kerkhof.
* Write Graphite and AMQP plugins: A bug that could lead to a
missing null-termination has been fixed. Thanks to Markus
Linnala.
* Write HTTP plugin: A logic error when checking the correctness
of the data set has been fixed. Thanks to Pavel Rochnyack. #1996
* Write Kafka plugin: The "Key Random" config option has been
fixed. Thanks to Florian Forster. #1977
* Write Kafka plugin: Support for librdkafka 0.9.0 has been
added. Thanks to Florian Forster.
* Write Riemann plugin: Build issues on Solaris have been fixed.
Thanks to Florian Forster.
* ZFS ARC plugin: A duplicate metric has been removed. Thanks to
Ruben Kerkhof. #1963
- additional changes from version 5.6.1
* Build system: Unnecessary linking of the Write Graphite plugin
with libyajl has been removed. Thanks to Marc Fournier.
Debian#839771, #1976
* collectd: A bug in the "FlushInterval" option that caused a
segmentation fault in the Write HTTP plugin has been fixed.
Thanks to Florian Forster. #1954
* Apache plugin: A syntax error has been fixed. Thanks to Florian
Forster.
* cURL-JSON plugin: A segmentation fault that occurred when
handling JSON with unexpected structure has been fixed. Thanks
to Florian Forster. #1896
* PostgreSQL plugin: Handling of "NULL" values in the
"query_plans" and "query_plans_by_table" queries has been
fixed. Thanks to Bernd Zeimetz. #1905
* RRDCacheD plugin: Reconnection behavior has been added. Thanks
to Sebastian Harl. Debian#657877
* VServer plugin: Use of a deprecated API ("readdir_r()") has
been fixed. Thanks to Sebastian Harl.
* Write Graphite plugin: Make default values configurable at
compile time again. Thanks to Florian Forster. #1953
* Write HTTP plugin: A bug has been fixed that lead to flush
callbacks being registered twice. Thanks to Florian Forster.
#1955
- additional changes from version 5.6.0
* Build system: An option to to avoid building the DF plugin
against XFS has been added. Thanks to Ruben Kerkhof. #1878
* Build system: Autoconf ≥ 2.60, a C99-capable compiler and
pkg-config are now required. Thanks to Ruben Kerkhof.
* Build system: Building with "-Werror" is now optional. Thanks
to Ruben Kerkhof. #1222
* Build system: Many compilation issues on non-Linux platforms
have been fixed, leading to wider plugin support. Thanks to
Ruben Kerkhof, Dagobert Michelsen, Havard Eidnes and Robert
Viduya.
* Build system: The configuration summary now also ends up in
config.log. Thanks to Sebastian Harl.
* collectd: All command-line options now override global options
from the config file. Thanks to Sebastian Harl. #366
* collectd: A number of unit tests for commonly used functions
have been added. Thanks to Florian Forster.
* collectd: Plugins start up and read timeouts are now logged.
Thanks to Marc Fournier. #1293, #1254
* collectd: Support for a timeout has been added to "FLUSH"
callbacks. Thanks to Manuel Luis Sanmartín Rozada.
* collectd: The "-T" command line switch now reports more errors.
Thanks to Corey Kosak. #1642
* collectd: The max size of value list elements
("DATA_MAX_NAME_LEN") has been doubled and is now configurable
at build time. Thanks to Amy Lin, Florian Forster and Radu
Brumariu. #1120
* Set target: The "MetaData" option has been added. Thanks to
Yves Mettier and Kevin Bowling. #1106, #1656, #1913
* AMQP, Write_HTTP, Write_Kafka plugins: Support for libyajl < 2
has been added. Thanks to Florian Forster.
* APC UPS plugin: Parsing of end markers has been fixed. Thanks
to Florian Forster #617
* APC UPS plugin: The "PersistentConnection" option has been
added. Thanks to Florian Forster #617
* ceph, DNS, Exec, IPTables, Ping, turbostat plugins: When
running unprivileged, these plugins will now warn about
insuffiscient permissions or capabilities(7). Thanks to Marc
Fournier. #1530
* Chrony plugin: This new plugin collects NTP data from the
chrony NTP server. Thanks to Claudius Zingerli. #1548
* cpusleep plugin: This new plugin measures time spent by CPU in
deep sleep mode. Thanks to Rinigus. #1826
* CPU plugin: The "ReportNumCpu" option has been added. Thanks to
Fabien Wernli.
* cURL, cURL-JSON, cURL-XML plugins: The new "Statistics" reports
various per-HTTP connection timers. Thanks to Sebastian Harl.
#1004
* DBI plugin: The "Interval" option has been added to "Database"
blocks. Thanks to Michal Bebjak.
* Disk plugin: Support for FreeBSD has been added. Thanks to Xin
Li, Brad Davis, Ruben Kerfhof and Kevin Bowling.
* Empty Counter match: Support for derives has been implemented.
Thanks to Florian Forster. #1813
* GenericJMX plugin: Support for TabularData and the "PluginName"
option have been added. Thanks to David Crane. #1290, #1291
* GPS plugin: This new plugin reports the number of sattelites
seen by and precision of a GPS receiver. Thanks to Nicolas
Jourden. #1346
* gRPC plugin: This new client and server plugin allows sending
and receiving metrics using the gRPC protocol. Comparable to
the UnixSock plugin, but using TCP and TLS. Thanks to Sebastian
Harl and Florian Forster.
* Interface plugin: Reporting dropped packets has been added.
Thanks to Marc Falzon. #1555
* Interface plugin: The "ReportInactive" has been added, letting
users skip inactive network interfaces. Thanks to Rinigus. #1791
* Interface plugin: The new, Solaris-only "UniqueName" option has
been added. Thanks to Yoga Ramalingam. #1416
* Lua plugin: This new language binding allows writing plugins
using the Lua programming language. Thanks to Julien Ammous,
Florian Forster and Ruben Kerkhof.
* Memory plugin: Reporting of ARC memory on Solaris has been
added. Thanks to Brian ONeill.
* MQTT plugin: This new plugin sends metrics to and/or receives
metrics from an MQTT broker. Thanks to Marc Falzon, Jan-Piet
Mens, Nicholas Humfrey and Florian Forster. #805, #1124
* MySQL plugin: Connection to the database server can now be done
over SSL. Thanks to Brian Lalor. #1256
* MySQL plugin: Monitoring slow queries has been added. Thanks to
skob. #1773
* MySQL plugin: mysql_bpool_pages-flushed has been renamed to
mysql_bpool_counters-pages_flushed because the value is
cumulative. Thanks to Marek Becka.
* MySQL plugin: Support for Galera statistics has been added.
Thanks to Rachid Zarouali. #1849
* MySQL plugin: Support for InnoDB metrics was improved. Thanks
to Aman Gupta. #1111
* MySQL plugin: The "mysql_sort" type has been split into 3
different types. Thanks to Pavel Rochnyack. #1592
* Network plugin: Decryption error logging has been improved.
Thanks to Pavel Rochnyack. #1735
* Notify Nagios plugin: This new plugin sends notifications to
Nagios as a passive check result. Thanks to Florian Forster.
* NTPd plugin: The plugin now detects if the ntp daemon reports
nanoseconds instead of microseconds. Thanks to Matwey V.
Kornilov. #1783
* OpenLDAP plugin: Several connection-related improvements have
been made. Thanks to Marc Fournier. #1308
* OpenLDAP plugin: Support for "simple authentication" has been
added. Thanks to Marek Becka. #1087
* Ping plugin: The "Size" option has been added, allowing the
ICMP data payload size to be configured. Thanks to Witold
Baryluk. #1395
* PostgreSQL, DBI, Oracle plugins: The new "PluginInstanceFrom"
option has been added. Thanks to Pavel Rochnyack. #1707
* PowerDNS plugin: The recursor metrics have been updated to
3.7.3 and missing rr types have been added. Thanks to Ruben
Kerkhof.
* Processes plugin: Counting of context switches was added for
Linux. Thanks to Manuel Luis Sanmartín Rozada. #1036
* Processes plugin: Improve reliability of thread counts on
Linux. Thanks to Manuel Luis Sanmartín Rozada.
* Python plugin: Minimal Python version requirement has been
bumped to 2.6. Thanks to Ruben Kerkhof. #1864
* Redis plugin: Several additional metrics are now collected.
Thanks to Marc Falzon and Matteo Contrini. #1807, #1483
* Sensors plugin: The "UseLabels" option has been added. Thanks
to Christian Fetzer.
* SMART plugin: The new "IgnoreSleepMode" option has been added.
Thanks to Scott Talbert. #1770
* SMART plugin: The new "UseSerial" option allows identifying
devices in a stable way. Thanks to Scott Talbert. #1794
* SNMP plugin: The "IpAddress" can now be used for instances.
Thanks to Vincent Bernat. #1397
* StatsD plugin: Latency calculation histogram is now able to
shrink automatically to optimal size. Thanks to Pavel
Rochnyack. #1622
* StatsD plugin: The "CounterSum" option has been added. Thanks
to Florian Forster. #929, #1282, #1311
* UUID plugin: The plugin now also looks in in smbios system
table and "/sys/class/dmi". Thanks to Ruben Kerkhof. #1490
* virt plugin: The "PluginInstanceFormat" option has been added.
Thanks to Ruben Kerkhof. #1100
* Write Graphite plugin: The "ReconnectInterval" option has been
added. Thanks to Toni Moreno and Florian Forster.
* Write HTTP plugin: A KairosDB formatter has been added. Thanks
to Aurélien Rougemont. #1809
* Write HTTP plugin: Notifications are now handled by this
plugin. Thanks to Florian Forster.
* Write HTTP plugin: The "LogHttpError" option has been added.
Thanks to vzubko.
* Write HTTP plugin: The new "Headers" option allows setting
custom HTTP headers in outgoing requests. Thanks to Brandon
Arp. #1634
* Write Kafka plugin: Key handling has been made more
comprehensive and reliable. Thanks to Florian Forster,
Pierre-Yves Ritschard and Vincent Bernat. #1765, #1695, #1393
* Write Redis plugin: The "Database", "MaxSetSize", "Prefix" and
"StoreRates" options have been added. Thanks to Brian Kelly and
Sebastian Pfahl.
* Write Riemann plugin: The new "BatchFlushTimeout" and "Timeout"
option have been added. Thanks to Pierre-Yves Ritschard and
Gergely Nagy.
* Write Riemann plugin: This plugin now requires the
riemann-c-client library, version 1.6.0+. This adds support for
submitting values to Riemann over TLS. Thanks to Gergely Nagy.
#986
* Write TSDB, Write Sensu, Write Riemann, Write Graphite, Write
TSDB plugin: TCP keepalive is now enabled, helping graceful
recovery from unclean network disconnections. Thanks to Marc
Fournier. #1549
* XenCPU plugin: This new plugin collects XEN Hypervisor CPU
stats. Thanks to Pavel Rochnyack. #1608
* ZFS ARC plugin: Several new statistics have been added and a
couple of obsolete ones removed. Thanks to Brad Davis, Brian
ONeill and Ruben Kerkhof.
* Zone plugin: This new plugin reads per-zone CPU usage on
Solaris. Thanks to Mathijs Mohlmann and Dagobert Michelsen.
- additional changes from version 5.5.3
* collectd: Write threads are stopped before shutdown callbacks
are called. Thanks to Florian Forster. #1110
* collectd: A compile error on AIX has been fixed: "MSG_DONTWAIT"
is not available on AIX. Thanks to Chao Yang.
* libcollectdclient: Lines printed to "STDERR" are now guarded by
the environment variable "COLLECTD_TRACE". Thanks to Florian
Forster. #105
* collectd.conf(5): Various typos have been fixed. Thanks to Marc
Fournier.
* Build system: Detection of the Java environment has been made
deterministic to allow for reproducible builds. Thanks to Marc
Fournier. #1523
* APC UPS plugin: Unavailable metrics are now skipped instead of
reported as 0 (zero). Thanks to Florian Forster. #2025
* Battery plugin: The minimum value has been removed from the
power type to allow the plugin to report discharging batteries
as negative power. Thanks to Florian Forster.
* DBI, Oracle and PostgreSQL plugins: An error message when the
type instance is truncated has been added. Thanks to Florian
Forster. #4
* cURL-JSON plugin: A possible segmentation fault when parsing
unexpected JSON has been fixed. Thanks to Florian Forster. #1896
* DF plugin: Compilation with xfsprogs ≥ 4.7.0 has been fixed.
Thanks to Thomas Deutschmann. #1877
* Modbus plugin: Build issues on FreeBSD have been fixed. Thanks
to Florian Forster.
* Network plugin: An error message has been corrected. Thanks to
Florian Forster.
* Network plugin: Handling of errors form secure memory
initialization has been improved: the plugin fails gracefully
now instead of calling "abort()". Thanks to Sebastian Harl.
* Network plugin: The gcrypt library is only initialized when it
is actually required due to the network plugin's configuration.
Thanks to Florian Forster. #1902
* Ping plugin: The init callback has been changed to be
idempotent, fixing errors being reported on Solaris. Thanks to
Florian Forster. #869
* PostgreSQL plugin: The query_plans and query_plans_by_table
queries have been improved to return 0 (zero) instead of "NULL"
when not available. Thanks to Bernd Zeimetz. #1905
* PowerDNS plugin: The "recursor command" has been fixed so
PowerDNS can correctly parse all requested fields. Thanks to
Ruben Kerkhof.
* Python plugin: Handling of data sets with multiple data sources
of different type has been fixed. Thanks to Sebastian Harl.
* RRDCacheD plugin: Reconnection behavior after failed operations
has been added. Thanks to Sebastian Harl. Debian#657877
* Write Graphite and AMQP plugins: A bug that could lead to a
missing null-termination has been fixed. Thanks to Markus
Linnala.
* Write Kafka plugin: Support for librdkafka 0.9.0 has been
added. Thanks to Florian Forster.
* Write Riemann plugin: Build issues on Solaris have been fixed.
Thanks to Florian Forster.
- refresh patches:
* collectd-fix_broken_perl-5.10.patch
* collectd-split_README.patch
* collectd-version.patch
- drop patch collectd-5.5.2-exec-no-output.diff: fixed upstream
- remove plugin write_riemann: not built anymore
- add new plugins chrony, cpusleep, hugepages, notify_nagios
- add lua-devel as BuildRequires and create a sub-package for
the lua plugin
- add gpsd-devel as BuildRequires and create a sub-package for
the gps plugin
-------------------------------------------------------------------
Sun Oct 30 15:53:07 UTC 2016 - seife+obs@b1-systems.com

View File

@ -17,14 +17,7 @@
#
%bcond_with modbus
%define madwifi_plugin madwifi
%define pcap_version %({rpm -q --qf='%{VERSION}\n' libpcap-devel 2>/dev/null || echo 0.0.0} | gawk -F. '{print $1*10000+$2*100+$3}')
%define snmp 1
%define with_esmtp 1
%define ipvs_plugin ipvs
%define plugins apache apcups battery %{expand:%{bind_plugin}} cgroups curl %{expand:%{curl_json_plugin}} %{expand:%{curl_xml_plugin}} conntrack contextswitch cpu cpufreq csv df disk %{expand:%{dns_plugin}} email entropy exec filecount fscache hddtemp interface %{expand:%{ipvs_plugin}} irq load logfile match_empty_counter match_hashed match_regex match_timediff match_value mbmon %{expand:%{memcached_plugin}} memory multimeter netlink network nfs nginx ntpd olsrd openvpn perl ping protocols powerdns processes rrdtool %{expand:%{sensors_plugin}} serial statsd swap syslog table tail target_notification target_replace target_scale target_set target_v5upgrade tcpconns teamspeak2 ted thermal threshold unixsock uptime users uuid vmem vserver wireless write_http %{expand:%{ascent_plugin}} %{expand:%{iptables_plugin}} %{expand:%{madwifi_plugin}} %{expand:%{rrdcached_plugin}} aggregation ethstat md numa tail_csv write_graphite write_riemann ceph drbd fhcount ipc log_logstash %{expand:%{turbostat_plugin}} write_log write_log write_sensu write_tsdb zfs_arc zookeeper
%define plugins apache apcups battery bind cgroups chrony curl curl_json curl_xml conntrack contextswitch cpu cpufreq cpusleep csv df disk dns email entropy exec filecount fscache hddtemp hugepages interface ipvs irq load logfile match_empty_counter match_hashed match_regex match_timediff match_value mbmon memcached memory multimeter netlink network nfs nginx notify_nagios ntpd olsrd openvpn perl ping protocols powerdns processes rrdtool %{expand:%{sensors_plugin}} serial statsd swap syslog table tail target_notification target_replace target_scale target_set target_v5upgrade tcpconns teamspeak2 ted thermal threshold unixsock uptime users uuid vmem vserver wireless write_http ascent iptables madwifi rrdcached aggregation ethstat md numa tail_csv write_graphite ceph drbd fhcount ipc log_logstash write_log write_sensu write_tsdb write_prometheus zfs_arc zookeeper
%ifnarch s390 s390x
%define sensors 1
%define sensors_plugin sensors
@ -32,104 +25,8 @@
%define sensors 0
%define sensors_plugin %{nil}
%endif
%ifarch %ix86 x86_64
%define turbostat_plugin turbostat
%else
%define turbostat_plugin %{nil}
%endif
%if 0%{?_with_xmms:1}0
%define xmms 1
%else
%define xmms 0
%endif
%if 0%{?_with_java:1} || 0%{?suse_version} > 1030 && ! 0%{?_without_java:1} && ! 0%{?sles_version}
%define java 1
%else
%define java 0
%endif
%if 0%{?_with_virt:1} || 0%{?suse_version} > 1030
%define virt 1
%else
%define virt 0
%endif
%if ! 0%{?_without_dbi:1}
%define dbi 1
%else
%define dbi 0
%endif
%if 0%{?suse_version} >= 1100 && ! 0%{?_without_memcachec:1}
%define memcachec 1
%define memcached_plugin memcached
%else
%define memcachec 0
%define memcached_plugin %{nil}
%endif
%if 0%{?suse_version} < 1000
%define libnotify 0
%else
%define libnotify 1
%endif
%if 0%{?suse_version} > 1020
%define ipmi 1
%define ascent 1
%define ascent_plugin ascent
%define iptables 1
%define iptables_plugin iptables
%else
%define ipmi 0
%define ascent 0
%define ascent_plugin %{nil}
%define iptables 0
%define iptables_plugin %{nil}
%endif
%if 0%{?suse_version} >= 1130
%define rrdcached_plugin rrdcached
%else
%define rrdcached_plugin %{nil}
%endif
%if %{pcap_version} >= 10000
%define dns 1
%define dns_plugin dns
%else
%define dns 0
%define dns_plugin %{nil}
%endif
%if 0%{?suse_version} >= 1000
%define yajl 1
%define curl_json_plugin curl_json
%define curl_xml_plugin curl_xml
%define with_snmp_plugin 1
%define with_pgsql 1
%define with_mysql 1
%define with_bind 1
%define bind_plugin bind
%define protobuf 1
%define pinba_plugin pinba
%else
%define yajl 0
%define curl_json_plugin %{nil}
%define curl_xml_plugin %{nil}
%define with_snmp_plugin 0
%define with_pgsql 0
%define with_mysql 0
%define with_bind 0
%define bind_plugin %{nil}
%define protobuf 0
%define pinba_plugin %{nil}
%endif
%if 0%{?suse_version} >= 1210
%define has_systemd 1
BuildRequires: systemd
%{perl_requires}
%{?libperl_requires}
%{?systemd_requires}
%else
# FIXME: use proper Requires(pre/post/preun/...)
PreReq: %insserv_prereq
%endif
Name: collectd
Version: 5.5.2
Version: 5.7.2
Release: 0
Summary: Statistics Collection Daemon for filling RRD Files
License: GPL-2.0
@ -139,9 +36,6 @@ Source: http://collectd.org/files/collectd-%{version}.tar.bz2
Source1: collectd.suse.init
Source2: collectd.apache2.conf
Source3: collectd-js.apache2.conf
# workaround for missing pthread.pc on openSUSE, required by OpenIPMIpthread.pc
# see https://bugzilla.novell.com/show_bug.cgi?id=388026
Source20: collectd-pthread.pc
Source99: collectd-rpmlintrc
Patch7: collectd-fix-config.patch
Patch9: collectd-version.patch
@ -153,8 +47,6 @@ Patch19: collectd-fix_spamassassin_doc.patch
Patch20: collectd-split_README.patch
Patch21: collectd-fix_collectd_config_path_in_snmp_probe.patch
Patch23: collectd-javac_target.patch
Patch25: collectd-5.5.2-exec-no-output.diff
# for /etc/apache2/... ownership (rpmlint):
BuildRequires: apache2
BuildRequires: autoconf
@ -162,135 +54,79 @@ BuildRequires: automake
BuildRequires: bind-devel
BuildRequires: bison
BuildRequires: flex
BuildRequires: freetype2-devel
BuildRequires: gcc
BuildRequires: gettext
BuildRequires: gdbm-devel
BuildRequires: gettext-devel
BuildRequires: intltool
# for ipvs and madwifi:
#BuildRequires: kernel-source
BuildRequires: libart_lgpl-devel
BuildRequires: libatasmart-devel
BuildRequires: libevent-devel
BuildRequires: libmnl-devel
BuildRequires: java-devel
BuildRequires: libesmtp-devel
BuildRequires: libgcrypt-devel
BuildRequires: libnetlink-devel
BuildRequires: liboping-devel
BuildRequires: libpcap
BuildRequires: libpcap-devel
BuildRequires: libpng-devel
BuildRequires: libstatgrab-devel
BuildRequires: libtool
BuildRequires: libudev-devel
BuildRequires: libxml2-devel
BuildRequires: libyajl-devel
BuildRequires: linux-kernel-headers
BuildRequires: make
BuildRequires: mysql-devel >= 4.1.0
BuildRequires: net-snmp-devel
BuildRequires: openldap2-devel
BuildRequires: perl
BuildRequires: pkgconfig
BuildRequires: python-devel
BuildRequires: postgresql-devel
BuildRequires: protobuf-c
BuildRequires: rrdtool
BuildRequires: systemd-rpm-macros
BuildRequires: xfsprogs-devel
BuildRequires: zlib-devel
BuildRequires: pkgconfig(OpenIPMI)
BuildRequires: pkgconfig(OpenIPMIpthread)
BuildRequires: pkgconfig(Qgpsmm)
BuildRequires: pkgconfig(dbi)
BuildRequires: pkgconfig(devmapper)
BuildRequires: pkgconfig(freetype2)
BuildRequires: pkgconfig(gail)
BuildRequires: pkgconfig(gdk-2.0)
BuildRequires: pkgconfig(gtk+-2.0)
BuildRequires: pkgconfig(libart-2.0)
BuildRequires: pkgconfig(libatasmart)
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(libevent)
BuildRequires: pkgconfig(libgpsd)
BuildRequires: pkgconfig(libiptc)
BuildRequires: pkgconfig(libmemcached)
BuildRequires: pkgconfig(libmicrohttpd)
BuildRequires: pkgconfig(libmnl)
BuildRequires: pkgconfig(libnotify)
BuildRequires: pkgconfig(liboping)
BuildRequires: pkgconfig(librrd)
BuildRequires: pkgconfig(libstatgrab)
BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(libupsclient)
BuildRequires: pkgconfig(libvirt)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(lua)
BuildRequires: pkgconfig(lvm2app)
BuildRequires: pkgconfig(python3)
BuildRequires: pkgconfig(xtables)
BuildRequires: pkgconfig(zlib)
Requires: rrdtool
Requires(post): %fillup_prereq
# play nice with collectd-beta:
Obsoletes: collectd-beta < %{version}
Provides: collectd-beta = %{version}-%{release}
%{?systemd_requires}
%if 0%{?suse_version} >= 1330
BuildRequires: pkgconfig(libnutclient)
%endif
%if %{sensors}
BuildRequires: sensors
Requires: sensors
%endif
# FIXME: use proper Requires(pre/post/preun/...)
PreReq: %fillup_prereq
# in case we'd like to split it later:
Provides: collectd-perl = %{version}-%{release}
# play nice with collectd-beta:
Obsoletes: collectd-beta < %{version}
Provides: collectd-beta = %{version}-%{release}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
# Should not be used - since Mon Apr 23 10:56:57 UTC 2012
# except for 11.4
%if 0%{?suse_version} <= 1140 && !0%{?sles_version}
Patch24: collectd-pkgconfig_libnotify_add_gtk.patch
%endif
%if 0%{?suse_version} > 1020
BuildRequires: libdb-4_5-devel
%else
BuildRequires: db-devel
%endif
%if 0%{?suse_version} > 910
BuildRequires: libgcrypt-devel
%else
BuildRequires: libgcrypt
%endif
%if %{libnotify}
BuildRequires: gtk2-devel
BuildRequires: libnotify-devel
%endif
%if %java
BuildRequires: java-devel
%endif #java
%if %{with_esmtp}
BuildRequires: libesmtp-devel
%endif
%if %{with_mysql}
BuildRequires: mysql-devel >= 4.1.0
%endif
%if %{with_pgsql}
BuildRequires: postgresql-devel
%endif
%if %{yajl}
BuildRequires: libyajl-devel
%endif
%if 0%{?suse_version} >= 1030
BuildRequires: rrdtool-devel
%endif
%if 0%{?suse_version} >= 1030
BuildRequires: libcurl-devel
%else
BuildRequires: curl-devel
%endif
%if %{ipmi}
# for ipmi:
BuildRequires: OpenIPMI-devel
BuildRequires: gdbm-devel
%endif #ipmi
%if %{snmp}
# for snmp:
BuildRequires: net-snmp-devel
%endif #snmp
%if 0%{?suse_version} >= 1030
BuildRequires: libpcap-devel
%endif
%if %{xmms}
# for xmms:
BuildRequires: xmms-devel
%endif
%if %{virt}
# for libvirt:
BuildRequires: libvirt-devel
%endif
%if %{dbi}
BuildRequires: libdbi-devel
%endif
%if %{memcachec}
BuildRequires: libmemcached-devel
%endif
%if %{with modbus}
BuildRequires: libmodbus-devel
%endif
%if %{protobuf}
BuildRequires: protobuf-c
%endif
%if 0%{?suse_version} < 1220
%if 0%{?suse_version} > 1020
BuildRequires: iptables-devel
%endif
%else
BuildRequires: libiptc-devel
BuildRequires: libxtables-devel
%endif
%description
collectd is a small daemon written in C for performance. It reads various
system statistics and updates RRD files, creating them if necessary.
Since the daemon doesn't need to startup every time it wants to update the
files it's very fast and easy on the system. Also, the statistics are very
fine grained since the files are updated every 10 seconds.
collectd is a daemon (written in C) that reads various system
statistics and updates RRD files. Statistics are very fine grained
with an update interval of 10 seconds.
%package web
Summary: Web Frontend for watching the %{name} Statistics
@ -328,18 +164,15 @@ a browser.
Please look at %{_sysconfdir}/apache2/conf.d/%{name}-js.conf on how to
enable.
%if %{libnotify}
%package plugin-notify-desktop
Summary: Desktop Notification Plugin for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description plugin-notify-desktop
Desktop Notification Support for %{name} allow you to receive
message delivered on your desktop.
%endif #libnotify
Desktop Notification Support for %{name} allow you to receive
message delivery on your desktop.
%if %{ipmi}
%package plugin-ipmi
Summary: OpenIPMI Monitoring Plugin for %{name}
Group: System/Monitoring
@ -347,10 +180,8 @@ Requires: %{name} = %{version}-%{release}
%description plugin-ipmi
Optional %{name} plugin to monitor sensors using the OpenIPMI
library, for IPMI enabled systems.
%endif #ipmi
library for IPMI enabled systems.
%if %{snmp}
%package plugin-snmp
Summary: SNMP Monitoring Plugin for %{name}
Group: System/Monitoring
@ -361,9 +192,7 @@ Requires: perl(Socket6)
%description plugin-snmp
Optional %{name} plugin to monitor devices using SNMP.
%endif #snmp
%if %{with_mysql}
%package plugin-mysql
Summary: MySQL Monitoring Plugin for %{name}
Group: System/Monitoring
@ -371,9 +200,34 @@ Requires: %{name} = %{version}-%{release}
%description plugin-mysql
Optional %{name} plugin to monitor MySQL server instances.
%endif #with_mysql
%if %{with_pgsql}
%package plugin-openldap
Summary: OpenLDAP plugin for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description plugin-openldap
This plugin for collectd reads monitoring information
from OpenLDAP's cn=Monitor subtree.
%if 0%{?suse_version} >= 1330
%package plugin-nut
Summary: Network UPS Tools plugin for collectd
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description plugin-nut
This plugin for collectd provides Network UPS Tools support.
%endif
%package plugin-lvm
Summary: LVM plugin for collectd
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description plugin-lvm
This plugin collects information from lvm.
%package plugin-postgresql
Summary: PostgreSQL Monitoring Plugin for %{name}
Group: System/Monitoring
@ -381,18 +235,16 @@ Requires: %{name} = %{version}-%{release}
%description plugin-postgresql
Optional %{name} plugin to monitor PostgreSQL server instances.
%endif #with_pgsql
%package plugin-python
Summary: Python API for %{name}
%package plugin-python3
Summary: Python3 API for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description plugin-python
Optional %{name} Python API in order to write %{name} plugins in
Python.
%description plugin-python3
Optional %{name} Python3 API in order to write %{name} plugins in
Python3.
%if %java
%package plugin-java
Summary: Java API for %{name}
Group: System/Monitoring
@ -401,9 +253,7 @@ Requires: %{name} = %{version}-%{release}
%description plugin-java
Optional %{name} Java API in order to write %{name} plugins in
Java.
%endif #java
%if %{virt}
%package plugin-virt
Summary: Virtual Machine Statistics Plugin for %{name}
Group: System/Monitoring
@ -412,20 +262,7 @@ Requires: %{name} = %{version}-%{release}
%description plugin-virt
Optional %{name} plugin to gather statistics from virtual
machines using libvirt.
%endif
%if %{xmms}
%package plugin-xmms
Summary: XMMS Monitoring Plugin for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description plugin-xmms
Optional %{name} plugin to gather sampling frequencies and file
bitrates of files played with XMMS.
%endif #xmms
%if %{dbi}
%package plugin-dbi
Summary: DBI Storage Plugin for %{name}
Group: System/Monitoring
@ -434,9 +271,7 @@ Requires: %{name} = %{version}-%{release}
%description plugin-dbi
Optional %{name} plugin to store sampling results into
various databases as supported by libdbi.
%endif #dbi
%if %{memcachec}
%package plugin-memcachec
Summary: Memcache Daemon Monitoring Plugin for %{name}
Group: System/Monitoring
@ -444,19 +279,7 @@ Requires: %{name} = %{version}-%{release}
%description plugin-memcachec
Optional %{name} plugin to sample memcached statistics.
%endif #memcachec
%if %{with modbus}
%package plugin-modbus
Summary: ModBus Plugin for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description plugin-modbus
Optional %{name} plugin to collect data using ModBus protocol.
%endif #modbus
%if %{protobuf}
%package plugin-pinba
Summary: Pinba Collector Plugin for %{name}
Group: System/Monitoring
@ -465,7 +288,6 @@ Requires: %{name} = %{version}-%{release}
%description plugin-pinba
Optional %{name} plugin to receive and dispatch timing values from Pinba, a
profiling extension for PHP.
%endif #protobuf
%package plugin-smart
Summary: SMART Monitoring Plugin for %{name}
@ -474,53 +296,54 @@ Requires: %{name} = %{version}-%{release}
%description plugin-smart
Optional %{name} plugin to monitor Self-Monitoring, Analysis and Reporting
Technology (SMART) information from hard disk drives.
Technology (SMART) information from disk drives.
%package plugin-lua
Summary: Lua API for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
Requires: lua
%description plugin-lua
Optional %{name} Lua API in order to write %{name} plugins in Lua.
%package plugin-gps
Summary: gpsd monitoring plugin for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description plugin-gps
Optional %{name} plugin to monitor gpsd.
%package plugins-all
Summary: All Monitoring Plugins for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
Requires: %{name}-plugin-python = %{version}-%{release}
Requires: %{name}-plugin-dbi = %{version}-%{release}
Requires: %{name}-plugin-gps = %{version}-%{release}
Requires: %{name}-plugin-ipmi = %{version}-%{release}
Requires: %{name}-plugin-java = %{version}-%{release}
Requires: %{name}-plugin-lua = %{version}-%{release}
Requires: %{name}-plugin-lvm = %{version}-%{release}
Requires: %{name}-plugin-memcachec = %{version}-%{release}
Requires: %{name}-plugin-mysql = %{version}-%{release}
Requires: %{name}-plugin-notify-desktop = %{version}-%{release}
Requires: %{name}-plugin-openldap = %{version}-%{release}
Requires: %{name}-plugin-pinba = %{version}-%{release}
Requires: %{name}-plugin-postgresql = %{version}-%{release}
Requires: %{name}-plugin-python3 = %{version}-%{release}
Requires: %{name}-plugin-smart = %{version}-%{release}
Requires: %{name}-plugin-snmp = %{version}-%{release}
Requires: %{name}-plugin-virt = %{version}-%{release}
Requires: %{name}-web = %{version}-%{release}
Requires: %{name}-web-js = %{version}-%{release}
%if %{ipmi}
Requires: %{name}-plugin-ipmi = %{version}-%{release}
%endif #ipmi
%if %{snmp}
Requires: %{name}-plugin-snmp = %{version}-%{release}
%endif #snmp
%if %{with_mysql}
Requires: %{name}-plugin-mysql = %{version}-%{release}
%endif #with_mysql
%if %{with_pgsql}
Requires: %{name}-plugin-postgresql = %{version}-%{release}
%if 0%{?suse_version} >= 1330
Requires: %{name}-plugin-nut = %{version}-%{release}
%endif
%if %java
Requires: %{name}-plugin-java = %{version}-%{release}
%endif #java
%if %{virt}
Requires: %{name}-plugin-virt = %{version}-%{release}
%endif #virt
%if %{libnotify}
Requires: %{name}-plugin-notify-desktop = %{version}-%{release}
%endif #libnotify
%if %{dbi}
Requires: %{name}-plugin-dbi = %{version}-%{release}
%endif #dbi
%if %{memcachec}
Requires: %{name}-plugin-memcachec = %{version}-%{release}
%endif #memcachec
%if %{with modbus}
Requires: %{name}-plugin-modbus = %{version}-%{release}
%endif #modbus
%if %{protobuf}
Requires: %{name}-plugin-pinba = %{version}-%{release}
%endif #protobuf
%description plugins-all
Metapackage that installs %{name} and all the available
monitoring plugin subpackages, except %{name}-plugin-xmms
monitoring plugin subpackages.
%package spamassassin
Summary: Spamassassin Monitoring for %{name}
@ -563,17 +386,9 @@ to write %{name} unixsock clients.
%patch20
%patch21
%patch23 -p1
%if 0%{?suse_version} <= 1140 && !0%{?sles_version}
%patch24 -p1
%endif
%patch25 -p1
sed -i 's|@@VERSION@@|%{version}|g' configure.ac
# workaround for missing pthread.pc on openSUSE, required by OpenIPMIpthread.pc
install -D -m0644 "%{SOURCE20}" pkgconfig/pthread.pc
sed 's|@@LIB@@|%{_lib}|g' pkgconfig/pthread.pc
perl -p -i -e 's|(-L\$withval/lib)\b|${1}64|g' configure.ac configure
# unneeded files:
@ -583,93 +398,24 @@ rm -fr \
contrib/redhat \
contrib/sles*
# remove -Werror everywhere
find . -name 'configure*' -o -name 'Makefile*' -exec sed -i 's|-Werror||g' {} \;
%build
export SUSE_ASNEEDED=0
autoreconf -fiv
# set JAVA_HOME properly
[ -n "$JAVA_HOME" -a -d "$JAVA_HOME" ] || export JAVA_HOME="%{_libdir}/jvm/java"
[ -n "$JDK_HOME" -a -d "$JDK_HOME" ] || export JDK_HOME="$JAVA_HOME"
[ -n "$JRE_HOME" -a -d "$JRE_HOME" ] || export JRE_HOME="$JAVA_HOME"
export PATH="$JDK_HOME/bin:$JRE_HOME/bin:$JAVA_HOME/bin:$PATH"
export CFLAGS="%{optflags} -fno-strict-aliasing"
export CXXFLAGS="$CFLAGS"
# workaround for missing pthread.pc on openSUSE, required by OpenIPMIpthread.pc
export PKG_CONFIG_PATH="$PWD/pkgconfig:$PKG_CONFIG_PATH"
export KERNEL_DIR=%{_prefix}/src/linux
%configure \
--with-libstatgrab \
--with-rrdtool \
--disable-werror \
--disable-silent-rules \
--disable-static \
%if %{dns}
--enable-dns \
%else
--disable-dns \
%endif
--disable-nut \
--enable-netlink \
--enable-python \
--with-librrd \
%if %{iptables}
--enable-iptables \
%else
--disable-iptables \
--without-iptc \
%endif #iptables
%if %{ascent}
--enable-ascent \
%else
--disable-ascent \
%endif #ascent
%if %{ipmi}
--enable-ipmi \
%else
--disable-ipmi \
%endif #ipmi
%if %java
--enable-java \
--with-java="$JAVA_HOME/" \
%else
--disable-java \
%endif #java
%if %{dbi}
--enable-dbi \
%else
--disable-dbi \
%endif #dbi
%if %{memcachec}
--enable-memcached \
%else
--disable-memcached \
%endif #memcachec
%if %{with modbus}
--enable-modbus \
%else
--disable-modbus \
%endif #modbus
%if 0%{?suse_version} < 930
--disable-mysql \
%endif
%ifos linux
--enable-serial
%else
--disable-serial
%endif #os linux
--without-included-ltdl \
--disable-turbostat
make %{?_smp_flags} V=1 \
%if 0%{?suse_version} < 1120
JAVAC_TARGET="-source 1.5 -target 1.5"
%else
JAVAC_TARGET="-source 1.5 -target 1.6"
%endif
make %{?_smp_mflags}
%install
make DESTDIR=%{buildroot} install %{?_smp_mflags}
%make_install
# delete .la files
rm -f "%{buildroot}%{_libdir}"/*.{a,la}
@ -680,10 +426,6 @@ sed -i '/^dependency_libs=/ s|-L'"${RPM_BUILD_DIR}/%{name}-%{version}"'/src||g'
# delete if it exists (not packaged any more on openSUSE):
rm -rf "%{buildroot}%{_localstatedir}/adm/perl-modules/%{name}"
%if !%java
rm -f "%{buildroot}%{_mandir}/man5"/collectd-java.5*
rm -rf "%{buildroot}%{_datadir}/collectd/java"
%endif #!java
mkdir -p _rpmdoc_/java
mv contrib/GenericJMX.conf _rpmdoc_/java/
@ -758,15 +500,7 @@ install -D -m0755 contrib/snmp-probe-host.px "%{buildroot}%{_bindir}/collectd-sn
rm contrib/snmp-probe-host.px
install -d "%{buildroot}%{_mandir}/man1"
find contrib/ -name '*.orig' -exec rm {} \;
%if !%{with_pgsql}
rm -f "%{buildroot}%{_datadir}/collectd/postgresql_default.conf"
%endif
%if !%{with_snmp_plugin}
rm -f "%{buildroot}%{_mandir}/man5/collectd-snmp.5"
%endif
find contrib/ -name '*.orig' -delete
# plugin list:
echo -n > plugins.lst
@ -776,55 +510,31 @@ for plugin in %{plugins}; do
done
done
cat<<EOF >README.plugins-all
cat <<EOF >README.plugins-all
This package is empty but depends on all collectd plugin subpackages.
EOF
install -d -m 0755 "%{buildroot}%{_prefix}/sbin"
%if 0%{?has_systemd}
install -D -m0644 contrib/systemd.collectd.service %{buildroot}%{_unitdir}/collectd.service
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
%else
# init script:
install -D -m 0755 "%{SOURCE1}" "%{buildroot}%{_initddir}/collectd"
ln -s "../..%{_initddir}/collectd" "%{buildroot}%{_sbindir}/rccollectd"
%endif
%preun
%stop_on_removal collectd
%if 0%{?has_systemd}
%service_del_preun %{name}.service
%endif
%postun
%restart_on_update collectd
%insserv_cleanup
%if 0%{?has_systemd}
%service_del_postun %{name}.service
%endif
%pre
%if 0%{?has_systemd}
%service_add_pre %{name}.service
%endif
%post
%{fillup_only collectd}
%if 0%{?has_systemd}
%service_add_post %{name}.service
%endif
%post -n libcollectdclient1 -p /sbin/ldconfig
%postun -n libcollectdclient1 -p /sbin/ldconfig
%files -f plugins.lst
%defattr(-,root,root)
%doc AUTHORS ChangeLog COPYING README
%doc contrib
%config(noreplace) %{_sysconfdir}/collectd.conf
@ -837,46 +547,38 @@ ln -s "../..%{_initddir}/collectd" "%{buildroot}%{_sbindir}/rccollectd"
%{_sbindir}/collectdmon
%{_sbindir}/rccollectd
%dir %{_libdir}/collectd
%if %{with_esmtp}
%{_libdir}/collectd/notify_email.so
%{_libdir}/collectd/notify_email.la
%endif #with_esmtp
%dir %{_datadir}/collectd
%{_datadir}/collectd/types.db
%{perl_vendorlib}/Collectd.pm
%dir %{perl_vendorlib}/Collectd
%{perl_vendorlib}/Collectd/*
%{perl_vendorarch}/auto/Collectd
%doc %{_mandir}/man1/collectd.1%{ext_man}
%doc %{_mandir}/man1/collectdctl.1%{ext_man}
%doc %{_mandir}/man1/collectdmon.1%{ext_man}
%doc %{_mandir}/man1/collectd-tg.1%{ext_man}
%doc %{_mandir}/man1/collectd-nagios.1%{ext_man}
%doc %{_mandir}/man1/cussh.1%{ext_man}
%doc %{_mandir}/man5/collectd.conf.5%{ext_man}
%doc %{_mandir}/man5/collectd-email.5%{ext_man}
%doc %{_mandir}/man5/collectd-exec.5%{ext_man}
%doc %{_mandir}/man5/collectd-perl.5%{ext_man}
%doc %{_mandir}/man5/collectd-threshold.5%{ext_man}
%doc %{_mandir}/man5/collectd-unixsock.5%{ext_man}
%doc %{_mandir}/man5/types.db.5%{ext_man}
%{_mandir}/man1/collectd.1%{ext_man}
%{_mandir}/man1/collectdctl.1%{ext_man}
%{_mandir}/man1/collectdmon.1%{ext_man}
%{_mandir}/man1/collectd-tg.1%{ext_man}
%{_mandir}/man1/collectd-nagios.1%{ext_man}
%{_mandir}/man1/cussh.1%{ext_man}
%{_mandir}/man5/collectd.conf.5%{ext_man}
%{_mandir}/man5/collectd-email.5%{ext_man}
%{_mandir}/man5/collectd-exec.5%{ext_man}
%{_mandir}/man5/collectd-perl.5%{ext_man}
%{_mandir}/man5/collectd-threshold.5%{ext_man}
%{_mandir}/man5/collectd-unixsock.5%{ext_man}
%{_mandir}/man5/types.db.5%{ext_man}
%doc %{perl_man3dir}/Collectd::Unixsock.%{perl_man3ext}%{ext_man}
%dir %{_localstatedir}/lib/collectd
%if 0%{?has_systemd}
%{_unitdir}/collectd.service
%else
%{_initddir}/collectd
%endif
%files web
%defattr(-,root,root)
%config(noreplace) %{_sysconfdir}/apache2/conf.d/%{name}.conf
%dir %{_sysconfdir}/collectd
%config(noreplace) %{_sysconfdir}/collectd/collection.conf
/srv/www/collectd
%files web-js
%defattr(-,root,root)
%doc _rpmdoc_/web-js/README
%config(noreplace) %{_sysconfdir}/apache2/conf.d/%{name}-js.conf
%dir %{_sysconfdir}/collectd
@ -884,113 +586,87 @@ ln -s "../..%{_initddir}/collectd" "%{buildroot}%{_sbindir}/rccollectd"
/srv/www/collectd-js
%{_libexecdir}/collectd-js
%if %{libnotify}
%files plugin-notify-desktop
%defattr(-,root,root)
%{_libdir}/collectd/notify_desktop.so
%{_libdir}/collectd/notify_desktop.la
%endif #libnotify
%if %{ipmi}
%files plugin-ipmi
%defattr(-,root,root)
%{_libdir}/collectd/ipmi.so
%{_libdir}/collectd/ipmi.la
%endif #ipmi
%if %{snmp}
%files plugin-snmp
%defattr(-,root,root)
%doc _rpmdoc_/snmp/*
%{_bindir}/collectd-snmp-probe-host
%doc %{_mandir}/man1/collectd-snmp-probe-host.1%{ext_man}
%if %{with_snmp_plugin}
%{_mandir}/man1/collectd-snmp-probe-host.1%{ext_man}
%{_libdir}/collectd/snmp.so
%{_libdir}/collectd/snmp.la
%doc %{_mandir}/man5/collectd-snmp.5%{ext_man}
%endif #with_snmp_plugin
%endif #snmp
%{_mandir}/man5/collectd-snmp.5%{ext_man}
%files plugin-lvm
%{_libdir}/collectd/lvm.so
%{_libdir}/collectd/lvm.la
%if %{protobuf}
%files plugin-pinba
%defattr(-,root,root)
%{_libdir}/collectd/pinba.so
%{_libdir}/collectd/pinba.la
%endif #protobuf
%if 0%{?suse_version} >= 930
%files plugin-mysql
%defattr(-,root,root)
%{_libdir}/collectd/mysql.so
%{_libdir}/collectd/mysql.la
%endif
%if %{with_pgsql}
%files plugin-postgresql
%defattr(-,root,root)
%{_libdir}/collectd/postgresql.so
%{_libdir}/collectd/postgresql.la
%config %{_datadir}/collectd/postgresql_default.conf
%endif #with_pgsql
%files plugin-python
%defattr(-,root,root)
%files plugin-python3
%{_libdir}/collectd/python.so
%{_libdir}/collectd/python.la
%doc %{_mandir}/man5/collectd-python.5%{ext_man}
%{_mandir}/man5/collectd-python.5%{ext_man}
%if %java
%files plugin-java
%defattr(-,root,root)
%doc _rpmdoc_/java/GenericJMX.conf
%{_libdir}/collectd/java.so
%{_libdir}/collectd/java.la
%{_datadir}/collectd/java
%doc %{_mandir}/man5/collectd-java.5%{ext_man}
%endif #java
%{_mandir}/man5/collectd-java.5%{ext_man}
%if %{virt}
%files plugin-virt
%defattr(-,root,root)
%{_libdir}/collectd/virt.so
%{_libdir}/collectd/virt.la
%endif #virt
%if %{xmms}
%files plugin-xmms
%defattr(-,root,root)
%{_libdir}/collectd/xmms.so
%{_libdir}/collectd/xmms.la
%endif #xmms
%if %{dbi}
%files plugin-dbi
%defattr(-,root,root)
%{_libdir}/collectd/dbi.so
%{_libdir}/collectd/dbi.la
%endif #dbi
%if %{memcachec}
%files plugin-memcachec
%defattr(-,root,root)
%{_libdir}/collectd/memcachec.so
%{_libdir}/collectd/memcachec.la
%endif #memcachec
%if %{with modbus}
%files plugin-modbus
%defattr(-,root,root)
%{_libdir}/collectd/modbus.so
%{_libdir}/collectd/modbus.la
%endif #modbus
%files plugin-smart
%defattr(-,root,root)
%{_libdir}/collectd/smart.so
%{_libdir}/collectd/smart.la
%files plugin-lua
%{_libdir}/collectd/lua.so
%{_libdir}/collectd/lua.la
%{_mandir}/man5/collectd-lua.5%{ext_man}
%files plugin-gps
%{_libdir}/collectd/gps.so
%{_libdir}/collectd/gps.la
%files plugin-openldap
%{_libdir}/collectd/openldap.so
%{_libdir}/collectd/openldap.la
%if 0%{?suse_version} >= 1330
%files plugin-nut
%{_libdir}/collectd/nut.so
%{_libdir}/collectd/nut.la
%endif
%files spamassassin
%defattr(-,root,root)
%dir %{_datadir}/spamassassin
%config(noreplace) %{_datadir}/spamassassin/99_%{name}.cf
%dir %{perl_vendorlib}/Mail
@ -1000,16 +676,13 @@ ln -s "../..%{_initddir}/collectd" "%{buildroot}%{_sbindir}/rccollectd"
%doc %{perl_man3dir}/Mail::SpamAssassin::Plugin::Collectd.%{perl_man3ext}%{ext_man}
%files plugins-all
%defattr(-,root,root)
%doc README.plugins-all
%files -n libcollectdclient1
%defattr(-,root,root)
%{_libdir}/libcollectdclient.so.1
%{_libdir}/libcollectdclient.so.1.*.*
%files -n libcollectdclient-devel
%defattr(-,root,root)
%{_includedir}/collectd
%{_libdir}/libcollectdclient.so
%{_libdir}/pkgconfig/libcollectdclient.pc