Marc Fournier [Tue, 1 Nov 2016 10:15:24 +0000 (11:15 +0100)]
write_prometheus: add support for libmicrohttpd 0.9.45+
Add switch on MHD_VERSION to support both legacy and modern MHD functions.
`MHD_create_response_from_data()` is deprecated since libmicrohttpd
0.9.5 and makes the build fail since 0.9.45.
Florian Forster [Sat, 1 Oct 2016 19:22:12 +0000 (21:22 +0200)]
write_prometheus plugin: Improve performance of metric_cmp().
This function is a hotspot because it is used by bsearch() to look up
metrics in a metric family. This simple (though non-obvious) change
brings prom_write() complexity down from 3000 instructions/call to 2640
instructions/call, i.e. a 12% improvement.
Florian Forster [Sat, 1 Oct 2016 08:12:41 +0000 (10:12 +0200)]
write_prometheus plugin: Optimize metric_family_get_metric().
Profiling showed that prom_write() spent 73% of its time in this
function. 36% of time was spent in metric_create() and 19% was spent in
metric_destroy().
This patch replaces these two calls by a stack allocation, reducing the
time prom_write() spends in metric_family_get_metric() to 42%.
Florian Forster [Thu, 29 Sep 2016 19:38:24 +0000 (21:38 +0200)]
write_prometheus plugin: New plugin for exposing metrics to Prometheus.
Florian Forster [Wed, 2 Nov 2016 08:36:48 +0000 (09:36 +0100)]
Merge branch 'collectd-5.6'
Florian Forster [Wed, 2 Nov 2016 08:20:57 +0000 (09:20 +0100)]
Merge branch 'collectd-5.5' into collectd-5.6
Florian Forster [Wed, 2 Nov 2016 08:04:00 +0000 (09:04 +0100)]
src/daemon/utils_tail_match.c: Use match_value_reset().
Marc Fournier [Tue, 1 Nov 2016 10:54:26 +0000 (11:54 +0100)]
configure.ac: make finding java deterministic
The sort order of the `find` command proves to be dependent on external
factors, which makes `./configure` pick different java versions on
different systems, making the whole build non-reproducible (see
https://reproducible-builds.org/ for more details).
Adding a call to `sort`, with the locale forced, fixes this issue.
Fixes: #1523
Florian Forster [Tue, 1 Nov 2016 06:58:57 +0000 (07:58 +0100)]
src/daemon/utils_match.c: Add GAUGE_PERSIST logic to default_callback().
Florian Forster [Mon, 31 Oct 2016 15:57:40 +0000 (16:57 +0100)]
src/daemon/utils_match.c: Improve readability of reset logic.
Florian Forster [Mon, 31 Oct 2016 15:53:43 +0000 (16:53 +0100)]
collectd.conf(5): Fix typos.
Florian Forster [Sun, 30 Oct 2016 20:42:49 +0000 (21:42 +0100)]
battery plugin: Fix type in a warning.
Florian Forster [Sun, 30 Oct 2016 20:40:04 +0000 (21:40 +0100)]
tail plugin: Implement the "GaugePersist" type.
Ruben Kerkhof [Sun, 30 Oct 2016 10:58:51 +0000 (11:58 +0100)]
zfs_arc: remove double metric
I accidentally added prefetch_metadata_misses in
61635f3 but we
already had that metric.
Fixes #1963
Florian Forster [Sat, 29 Oct 2016 20:08:32 +0000 (22:08 +0200)]
Merge remote-tracking branch 'github/pr/2012' into collectd-5.6
Pavel Rochnyack [Sat, 29 Oct 2016 12:25:15 +0000 (18:25 +0600)]
openvpn: Fixed openvpn_read() on empty configuration.
When plugin loaded without configuration, it starts to spam logs with message
'read-function of plugin `openvpn' failed'.
Issue: #1932
Florian Forster [Fri, 28 Oct 2016 13:04:11 +0000 (15:04 +0200)]
src/daemon/common.c: Rewrite check_capability() using cap_get_bound().
capget(2) is Linux specific and the use of the raw syscalls is
discouraged. Also, there have been interesting crashes on some systems.
Issue: #2009
Florian Forster [Fri, 28 Oct 2016 11:44:05 +0000 (13:44 +0200)]
Merge branch 'pr/2004'
Florian Forster [Fri, 28 Oct 2016 11:32:27 +0000 (13:32 +0200)]
collectd.conf(5): Improve the "BlockDeviceFormat" and "BlockDeviceFormatBasename" sections.
Florian Forster [Fri, 28 Oct 2016 08:45:23 +0000 (10:45 +0200)]
virt plugin: Fix indentation and some whitespace.
Florian Forster [Fri, 28 Oct 2016 08:44:47 +0000 (10:44 +0200)]
virt plugin: Use the IS_TRUE() macro.
Florian Forster [Fri, 28 Oct 2016 11:43:46 +0000 (13:43 +0200)]
virt plugin: Add comment for <libgen.h> include.
Deyan Chepishev [Fri, 28 Oct 2016 08:31:19 +0000 (11:31 +0300)]
virt.c modifications to bring it in accordance with "octo" comments
Deyan Chepishev [Fri, 28 Oct 2016 06:40:24 +0000 (09:40 +0300)]
plugin virt, collectd.conf.in, collectd.conf.pod eddited to be according to comments from collectd members
Florian Forster [Fri, 28 Oct 2016 05:17:17 +0000 (07:17 +0200)]
write_kafka plugin: Reintroduce the "Key Random" setting.
Fixes: #1977
Florian Forster [Fri, 28 Oct 2016 05:25:26 +0000 (07:25 +0200)]
Merge remote-tracking branch 'github/pr/2006'
Florian Forster [Fri, 28 Oct 2016 05:22:59 +0000 (07:22 +0200)]
Merge remote-tracking branch 'github/pr/2006'
Florian Forster [Thu, 27 Oct 2016 20:13:37 +0000 (22:13 +0200)]
src/daemon/common_test.c: Avoid nesting composite literals.
This crashed GCC 4.6 on Precise.
Florian Forster [Thu, 27 Oct 2016 19:29:43 +0000 (21:29 +0200)]
Merge remote-tracking branch 'github/pr/2001'
Florian Forster [Thu, 27 Oct 2016 19:19:35 +0000 (21:19 +0200)]
curl plugin: Don't use CDTIME_T_TO_DOUBLE() within a composite literal.
GCC 4.6 has a problem with the original code:
curl.c: In function 'cc_submit_response_time':
curl.c:644:26: internal compiler error: Segmentation fault
This is essentially a shot in the dark, trying to fix this issue.
Florian Forster [Wed, 26 Oct 2016 20:48:51 +0000 (22:48 +0200)]
gps plugin: Replace busy loop with pthread_cond_timedwait().
Florian Forster [Wed, 26 Oct 2016 18:59:32 +0000 (20:59 +0200)]
Various: Simplify code using composite literals.
Ruben Kerkhof [Wed, 26 Oct 2016 17:33:44 +0000 (19:33 +0200)]
Merge branch 'collectd-5.6'
Ruben Kerkhof [Wed, 26 Oct 2016 17:31:01 +0000 (19:31 +0200)]
Merge pull request #2005 from rpv-tomsk/issue-1996
write_http: Fixed DS type check
Pavel Rochnyack [Wed, 26 Oct 2016 17:27:36 +0000 (23:27 +0600)]
write_http: Fixed DS type check
Closes: #1996
Deyan Chepishev [Wed, 26 Oct 2016 15:16:29 +0000 (18:16 +0300)]
fixed typo in the Man
Deyan Chepishev [Wed, 26 Oct 2016 15:10:47 +0000 (18:10 +0300)]
Modified plugin virt.c
Added options:
BlockDeviceFormat
BlockDeviceFormatBasename
Florian Forster [Wed, 26 Oct 2016 15:09:17 +0000 (17:09 +0200)]
src/daemon/utils_time.h: Use composite literals in all macros.
This allows to take the address of all these macros. Unfortunately, this
means we require special macors for initializing static variables, but
fortunately this is not very commonly done.
Florian Forster [Wed, 26 Oct 2016 14:46:29 +0000 (16:46 +0200)]
src/daemon/utils_time.h: Return structs from CDTIME_T_TO_TIME{VAL,SPEC}.
Since these are macros use composite literals, you can even take the
address of these struct, which is very handy for calling nanosleep()
and friends.
Florian Forster [Wed, 26 Oct 2016 07:31:47 +0000 (09:31 +0200)]
src/daemon/utils_cache.c: Refactor uc_check_timeout().
Ruben Kerkhof [Mon, 24 Oct 2016 15:36:22 +0000 (17:36 +0200)]
Merge pull request #1997 from rpv-tomsk/issue-1995
powerdns plugin: Improved error reporting
Pavel Rochnyack [Thu, 20 Oct 2016 14:24:14 +0000 (20:24 +0600)]
powerdns plugin: Improved error reporting
Show socket path in log messages.
Closes: #1995
Florian Forster [Fri, 14 Oct 2016 20:51:04 +0000 (22:51 +0200)]
Merge remote-tracking branch 'github/pr/1749'
Florian Forster [Wed, 12 Oct 2016 14:57:19 +0000 (16:57 +0200)]
Merge branch 'pr/1609'
Florian Forster [Wed, 12 Oct 2016 14:56:58 +0000 (16:56 +0200)]
nginx plugin: Add comment, fix indentation.
Add a comment reminding us to remove the "handled" metric in a later
major release. Also fixes mixes tab/space indenting.
Ruben Kerkhof [Mon, 10 Oct 2016 14:44:40 +0000 (16:44 +0200)]
powerdns plugin: fix parsing of last key
I found this in my logs:
collectd[4678]: powerdns plugin: submit: Not found in lookup table: questions#012 =
98797645;
The octal #012 is '\n'. Add a space before the newline so the default
command is split into keys correctly.
Signed-off-by: Florian Forster <octo@collectd.org>
Markus Linnala [Tue, 11 Oct 2016 15:07:25 +0000 (18:07 +0300)]
utils_format_graphite: terminate buffer with \0
Signed-off-by: Florian Forster <octo@collectd.org>
Thomas Deutschmann [Tue, 11 Oct 2016 14:16:23 +0000 (16:16 +0200)]
common.c: Use _LINUX_CAPABILITY_VERSION_3 in cap_header
While check_capability() function already requires
_LINUX_CAPABILITY_VERSION_3 via "#ifdef" since commit
448627953c we still
set the cap_header's version to deprecated _LINUX_CAPABILITY_VERSION. This
results in a warning like
> capability: warning: `collectd' uses 32-bit capabilities (legacy support in use)
from the kernel when a plugin (like iptables) calls our check_capability()
function.
With this commit we will set cap_header to kernel's current capability
version (_LINUX_CAPABILITY_VERSION_3), which is default since
kernel 2.6.26.
Signed-off-by: Florian Forster <octo@collectd.org>
Florian Forster [Tue, 11 Oct 2016 06:49:29 +0000 (08:49 +0200)]
Merge remote-tracking branch 'github/pr/1981'
Florian Forster [Tue, 11 Oct 2016 06:36:15 +0000 (08:36 +0200)]
Merge remote-tracking branch 'github/pr/1980'
Marc Fournier [Mon, 10 Oct 2016 19:04:20 +0000 (21:04 +0200)]
bind: fix 2 typos spotted by Debian's lintian tool
authorative -> authoritative
dupliate -> duplicate
Despite this mistake is also found in the collectd-5.5 and 5.6 lines,
the fix is scheduled for 5.7.0 because it will change 2 VL's
type_instances, possibly breaking users' dashboards or alerting.
Marc Fournier [Mon, 10 Oct 2016 19:04:03 +0000 (21:04 +0200)]
Merge branch 'collectd-5.6'
Marc Fournier [Mon, 10 Oct 2016 18:58:19 +0000 (20:58 +0200)]
Merge branch 'collectd-5.5' into collectd-5.6
Marc Fournier [Mon, 10 Oct 2016 18:50:00 +0000 (20:50 +0200)]
fix one typo spotted by Debian's lintian tool
Marc Fournier [Mon, 10 Oct 2016 18:55:56 +0000 (20:55 +0200)]
fix a couple of typos spotted by Debian's lintian tool
Marc Fournier [Mon, 10 Oct 2016 18:47:30 +0000 (20:47 +0200)]
collectd.spec: increment changelog to mention 5.6.1
Marc Fournier [Mon, 10 Oct 2016 18:44:03 +0000 (20:44 +0200)]
collectd.spec: add new intel_rdt plugin
Pavel Rochnyack [Mon, 10 Oct 2016 04:33:28 +0000 (10:33 +0600)]
processes plugin: Do not gather processes IO and context switch data when unneeded
Victor Demonchy [Mon, 10 Oct 2016 13:28:22 +0000 (15:28 +0200)]
Bump version number in redhat spec
Pavel Rochnyack [Mon, 10 Oct 2016 07:25:07 +0000 (13:25 +0600)]
processes plugin: Fix counters initialization / spikes
processes plugin generates spikes on (re)start. That is caused by
wrong counter logic: When collectd (re)started, monitored processes,
which was started before collectd, have non-zero values in
cpu_user/cpu_system/vmem_minflt/vmem_majflt, so `want_init` is false.
What produces spike.
At other hand, processes which are started between read cycles, should
be fully accounted without initialization. So, we must skip only first
cycle for these counters.
Pavel Rochnyack [Mon, 10 Oct 2016 07:07:55 +0000 (13:07 +0600)]
processes plugin: Remove unused fields from structures
Fields cpu_user, cpu_system, vmem_minflt, vmem_majflt are always equal to zero for new entries (which are passed to ps_list_add()).
Values of these fields are not used in `procstat_t` entries too. So, that can be safely removed.
Pavel Rochnyack [Wed, 9 Mar 2016 10:39:22 +0000 (16:39 +0600)]
nginx plugin: Report failed connections
Florian Forster [Sat, 8 Oct 2016 05:48:15 +0000 (07:48 +0200)]
Merge remote-tracking branch 'github/pr/1958' into collectd-5.5
Florian Forster [Fri, 7 Oct 2016 13:52:00 +0000 (15:52 +0200)]
Bump version to 5.6.1; Update ChangeLog.
Florian Forster [Fri, 7 Oct 2016 06:51:29 +0000 (08:51 +0200)]
Merge branch 'collectd-5.5' into collectd-5.6
Florian Forster [Fri, 7 Oct 2016 06:44:53 +0000 (08:44 +0200)]
Merge remote-tracking branch 'github/pr/1961' into collectd-5.5
Florian Forster [Thu, 6 Oct 2016 20:41:24 +0000 (22:41 +0200)]
Merge branch 'pr/1970'
Florian Forster [Thu, 6 Oct 2016 20:39:58 +0000 (22:39 +0200)]
intel_rdt plugin: Filter through clang-format.
Florian Forster [Thu, 6 Oct 2016 20:36:53 +0000 (22:36 +0200)]
intel_rdt plugin: Include "collectd.h" as first header.
Pshyk, SerhiyX [Thu, 6 Oct 2016 11:19:56 +0000 (12:19 +0100)]
rdtmon: Rename 'rdtmon' plugin to 'intel_rdt'.
Change-Id: Id23eb96fd37e6d4fc5fdf7e7ed58d9e74a33cca0
Signed-off-by: Serhiy Pshyk <serhiyx.pshyk@intel.com>
Florian Forster [Wed, 5 Oct 2016 06:52:56 +0000 (08:52 +0200)]
Merge remote-tracking branch 'github/pr/1973'
Florian Forster [Wed, 5 Oct 2016 06:51:50 +0000 (08:51 +0200)]
Merge branch 'pr/1975'
Florian Forster [Wed, 5 Oct 2016 06:51:29 +0000 (08:51 +0200)]
memcached plugin: Clarify documentation and a comment.
Pshyk, SerhiyX [Tue, 4 Oct 2016 14:31:58 +0000 (15:31 +0100)]
rdtmon: Addressed PR comments
1. use size_t type for all arrays and indexes
2. change malloc()/memset() to calloc()
3. fix minor code style issues
4. add range validation of core id values
5. use 'bytes' type for LLC value
6. add 'memory_bandwidth' type for MBM values
Change-Id: I5e577dcda19bc9799e7b79f9d0334c6f21b60f0d
Signed-off-by: Serhiy Pshyk <serhiyx.pshyk@intel.com>
Marc Fournier [Tue, 4 Oct 2016 21:46:45 +0000 (23:46 +0200)]
write_graphite: remove linking against libyajl (#1976)
write_graphite doesn't have anything to do with json. This seems to have
been accidentally added in
30c1111.
Fixes https://bugs.debian.org/839771
Pavel Rochnyack [Tue, 4 Oct 2016 18:54:34 +0000 (00:54 +0600)]
memcached: Added Address option
Florian Forster [Tue, 4 Oct 2016 18:56:05 +0000 (20:56 +0200)]
CONTRIBUTING.md: Note that plugins must be added to README.
Florian Forster [Tue, 4 Oct 2016 14:39:57 +0000 (16:39 +0200)]
README: Move mqtt and grpc to the right section.
Florian Forster [Tue, 4 Oct 2016 08:42:14 +0000 (10:42 +0200)]
README: Improve build requirements.
Florian Forster [Tue, 4 Oct 2016 08:29:51 +0000 (10:29 +0200)]
docs/BUILD.java.md: Move java build instructions out of README.
Florian Forster [Tue, 4 Oct 2016 08:19:48 +0000 (10:19 +0200)]
docs/BUILD.dpdkstat.md: Move dpdkstat build instructions out of README.
Marc Fournier [Tue, 4 Oct 2016 18:53:00 +0000 (20:53 +0200)]
collectd.spec: the dpdk is actually called dpdkstat...
Marc Fournier [Mon, 3 Oct 2016 20:16:23 +0000 (22:16 +0200)]
collectd.spec: add dpdk plugin
Florian Forster [Fri, 30 Sep 2016 14:01:54 +0000 (16:01 +0200)]
grpc plugin: Fix compile error.
Weirdly, this only surfaces when building with CFLAGS="-O0 -g".
In file included from ./daemon/common.h:33:0,
from grpc.cc:44:
grpc.cc: In member function 'virtual grpc::Status CollectdImpl::PutValues(grpc::ServerContext*, grpc::ServerReader<collectd::PutValuesRequest>*, collectd::PutValuesResponse*)':
./daemon/plugin.h:113:56: sorry, unimplemented: non-trivial designated initializers not supported
#define VALUE_LIST_INIT { .values = NULL, .meta = NULL }
^
grpc.cc:294:22: note: in expansion of macro 'VALUE_LIST_INIT'
value_list_t vl = VALUE_LIST_INIT;
^
Pshyk, SerhiyX [Tue, 27 Sep 2016 11:02:30 +0000 (12:02 +0100)]
rdtmon: Fix formatting of collectd pod file.
Change-Id: I94d5e7c877bd99a5da8e725efef0bd700f339016
Signed-off-by: Serhiy Pshyk <serhiyx.pshyk@intel.com>
Pshyk, SerhiyX [Mon, 19 Sep 2016 13:21:43 +0000 (14:21 +0100)]
rdtmon: Implement RDT monitoring plugin
The rdtmon plugin collects information provided by monitoring features of
Intel Resource Director Technology (Intel(R) RDT) like Cache Monitoring
Technology (CMT), Memory Bandwidth Monitoring (MBM).
Change-Id: Ie45344c1035c522fcd918a1dd2427a2da2e173bb
Signed-off-by: Serhiy Pshyk <serhiyx.pshyk@intel.com>
Florian Forster [Wed, 28 Sep 2016 21:12:43 +0000 (23:12 +0200)]
CONTRIBUTING.md: Fix typos.
Florian Forster [Wed, 28 Sep 2016 20:13:08 +0000 (22:13 +0200)]
Merge branch 'collectd-5.6'
Florian Forster [Wed, 28 Sep 2016 11:54:00 +0000 (13:54 +0200)]
src/daemon/utils_cache.h: Improve documentation for uc_iterator_get_next().
Florian Forster [Wed, 28 Sep 2016 19:27:54 +0000 (21:27 +0200)]
src/daemon/plugin.[ch]: Make the user_data_t* const.
That is, user_data_t* passed to register_* functions. The actual callbacks
are still getting a user_data_t* since they, in theory, would be able to
modify the pointer stored in .data.
Issue: #1954
Florian Forster [Wed, 28 Sep 2016 19:23:49 +0000 (21:23 +0200)]
src/daemons/plugin.c: Don't modify user_data_t* in plugin_register_flush().
Fixes: #1954
Florian Forster [Wed, 28 Sep 2016 18:58:04 +0000 (20:58 +0200)]
Revert "write_graphite: remove #ifndefs"
This reverts commit
de80d27fe7023c2e377674b4cc341e539388b98e.
Fixes: #1953
Florian Forster [Wed, 28 Sep 2016 15:53:34 +0000 (17:53 +0200)]
write_http plugin: Don't register a flush callback unconditionally.
Fixes: #1955
Florian Forster [Wed, 28 Sep 2016 13:24:52 +0000 (15:24 +0200)]
Merge remote-tracking branch 'github/pr/1962'
Florian Forster [Wed, 28 Sep 2016 13:23:05 +0000 (15:23 +0200)]
Merge remote-tracking branch 'github/pr/1956'
Florian Forster [Wed, 28 Sep 2016 13:21:04 +0000 (15:21 +0200)]
Merge remote-tracking branch 'github/pr/1952'
Chao Yang [Mon, 26 Sep 2016 15:13:57 +0000 (11:13 -0400)]
cpu: Fix cpu aggregation on AIX change codeing style
Chao Yang [Fri, 23 Sep 2016 13:36:00 +0000 (09:36 -0400)]
cpu: Fix cpu aggregation on AIX
Taras Chornyi [Mon, 26 Sep 2016 09:37:01 +0000 (10:37 +0100)]
dpdkstat: Changed log severity to Error
Akos Vandra [Sun, 25 Sep 2016 15:01:11 +0000 (17:01 +0200)]
add missing ;