Marc Fournier [Fri, 7 Nov 2014 16:37:40 +0000 (17:37 +0100)]
redhat initscript: add timeout when stopping the daemon
This mitigates the risk of having 2 daemons running simultaneously
during a short period, on restart.
The debian package's initscript does the same thing, using the same
timeout value.
Pierre-Yves Ritschard [Fri, 7 Nov 2014 16:37:09 +0000 (17:37 +0100)]
ignore new dirs
Pierre-Yves Ritschard [Fri, 7 Nov 2014 16:34:32 +0000 (17:34 +0100)]
Define _DEFAULT_SOURCE in addition to _BSD_SOURCE
This enables forward compatibility with the ongoing
deprecation of _BSD_SOURCE.
Pierre-Yves Ritschard [Fri, 7 Nov 2014 15:27:08 +0000 (16:27 +0100)]
Merge pull request #794 from vincentbernat/fix/kafka-warning
kafka: fix compilation for older versions of librdkafka
Vincent Bernat [Fri, 7 Nov 2014 14:51:58 +0000 (15:51 +0100)]
kafka: fix compilation for older versions of librdkafka
Since commit
f505691270f2317291c372fd5f004a4ffbce9f9a, kafka module was
broken. Enable definition of `kafka_log()` when using kafka logger
callback as well.
Vincent Bernat [Fri, 7 Nov 2014 14:20:22 +0000 (15:20 +0100)]
network: don't enable gcrypt thread callbacks when gcrypt recent enough
From `gcrypt.h`:
> NOTE: Since Libgcrypt 1.6 the thread callbacks are not anymore used.
> However we keep it to allow for some source code compatibility if used
> in the standard way.
Otherwise, we get a deprecation warning which is turned into an error:
```
CC libcollectdclient_la-network_buffer.lo
../../../src/libcollectdclient/network_buffer.c:58:15: error: 'gcry_thread_cbs' is deprecated (declared at /usr/include/gcrypt.h:213) [-Werror=deprecated-declarations]
GCRY_THREAD_OPTION_PTHREAD_IMPL;
```
Fixes: #632
Vincent Bernat [Fri, 7 Nov 2014 14:40:37 +0000 (15:40 +0100)]
build: fix out-of-tree build
When building collectd out of tree, `srcdir` and `builddir` are
different. We ask to search path in `$(top_srcdir)/src` since this is
needed to find `liboconfig/config.h`. Also fix search path for
libcollectdclient where only one header is in `builddir` while the
remaining are in `srcdir`.
Marc Fournier [Thu, 6 Nov 2014 20:08:37 +0000 (21:08 +0100)]
Merge pull request #791 from mfournier/fix-lvm-merge-conflict-mistake
lvm: remove duplicate call to lvm_submit()
Marc Fournier [Wed, 5 Nov 2014 15:18:03 +0000 (16:18 +0100)]
lvm: remove duplicate call to lvm_submit()
This got added by accident when solving the merge conflict in
103f05e0.
It led to the plugin triggering the classical "uc_update: Value too old"
error message.
Pierre-Yves Ritschard [Tue, 4 Nov 2014 16:41:38 +0000 (17:41 +0100)]
Merge pull request #764 from tokkee/sh/collectd-5.3
write_graphite plugin: Improved error reporting when connecting to the server.
Katelyn Perry [Mon, 3 Nov 2014 23:11:14 +0000 (17:11 -0600)]
fix grammar in plugin loading error message
"cause for this problem are" => "cause for this problem is"
Marc Fournier [Tue, 24 Jun 2014 15:47:08 +0000 (17:47 +0200)]
logfile: avoid total silence in case of a misconfiguration
Basically the same patch that was applied to syslog.c in
84c38056
Marc Fournier [Tue, 24 Jun 2014 15:48:26 +0000 (17:48 +0200)]
correct typo in error message
Wilfried Goesgens [Sat, 7 Jun 2014 10:01:32 +0000 (12:01 +0200)]
Syslog: if we can't find the loglevel specified by the configuration string default to 'info' and warn about the unknown configuration option. no way to make syslog totaly silent anymore.
Marc Fournier [Mon, 3 Nov 2014 10:24:38 +0000 (11:24 +0100)]
s/libvirt/virt/ in doc & rpm specfile
... as this plugin was renamed in
62f94860.
Marc Fournier [Mon, 3 Nov 2014 09:23:32 +0000 (10:23 +0100)]
build: update reference to files moved in
216c6246
Fixes #785
Marc Fournier [Fri, 31 Oct 2014 14:21:25 +0000 (15:21 +0100)]
Merge pull request #772 from mschenck/write_tsdb-type-type_instance-differentiate
Including vl->type, even when vl->type_instance is available to avoid ov...
Marc Fournier [Fri, 31 Oct 2014 13:23:11 +0000 (14:23 +0100)]
openldap: remove reference to shared LDFLAGS
following changes done in
4de560d2c.
Wilfried Goesgens [Thu, 30 Oct 2014 20:32:17 +0000 (21:32 +0100)]
curl_json: fix the array access implemented in
f1e1e37e
In the avl-tree we store two different structs, cj_key_t for the value
we search, c_avl_tree_t for sub-nodes.
The old version does assume when it will find a key, and when a tree,
which doesn't have to be right in all cases.
Therefore we utilize the magic to revalidate this cast.
Being able to tell tree from key, we now can also implement array access
on the right most node of the tree-path.
Pierre-Yves Ritschard [Thu, 30 Oct 2014 13:03:31 +0000 (14:03 +0100)]
Merge pull request #778 from landryb/openbsd_fix_processes_plugin
Fix the processes plugin on OpenBSD (#776)
Pierre-Yves Ritschard [Thu, 30 Oct 2014 13:03:10 +0000 (14:03 +0100)]
Merge pull request #779 from landryb/openbsd_build_fixes
Openbsd build fixes
Marc Fournier [Wed, 29 Oct 2014 15:16:46 +0000 (16:16 +0100)]
varnish: add some detail & references to manpage
Marc Fournier [Tue, 28 Oct 2014 23:38:21 +0000 (00:38 +0100)]
varnish: manpage & example cleanup
Consitently alphabetically ordered options and ensured all version
limitations are mentioned.
Marc Fournier [Tue, 28 Oct 2014 18:24:45 +0000 (19:24 +0100)]
varnish: correct an erroneous type
Affects Varnish 3 only.
Marc Fournier [Tue, 28 Oct 2014 17:35:55 +0000 (18:35 +0100)]
varnish: monitor VSM usage stats, made available in V4
Marc Fournier [Tue, 28 Oct 2014 17:28:56 +0000 (18:28 +0100)]
varnish: monitor 2 purge-relatad metrics added in V4
Marc Fournier [Tue, 28 Oct 2014 16:55:41 +0000 (17:55 +0100)]
varnish: add a couple of metrics available both in V3 & V4
Marc Fournier [Tue, 28 Oct 2014 14:46:20 +0000 (15:46 +0100)]
varnish: adapt to metrics renames & deprecations in varnish4
Summary of changes:
- connections: "accepted" & "dropped" are now found in the session section
- dirdns: doesn't exist in varnish 4 anymore
- objects: "n_obj*" were removed from varnish 4
- ban: "obj", "req" & "completed" bans were added. As a lot of new
"tested" metrics are available, so we only collectd the overall total
now
- session: metrics from "connections" and "threads" categories were
moved here
- struct: "n_sess*" were removed
- totals: new, more detailed *bytes metrics were made available
- threads: new metrics were made available. "queued" was moved the
session section.
Marc Fournier [Tue, 28 Oct 2014 07:32:53 +0000 (08:32 +0100)]
varnish: bare minimum changes to support varnish4
Marc Fournier [Tue, 28 Oct 2014 07:22:02 +0000 (08:22 +0100)]
configure: add varnish4 presence detection
Landry Breuil [Mon, 27 Oct 2014 09:13:42 +0000 (10:13 +0100)]
Recent NetBSD versions also use a TAILQ.
Landry Breuil [Mon, 27 Oct 2014 08:38:31 +0000 (09:38 +0100)]
Use cpu_stage() where expected in the CAN_USE_SYSCTL, HAVE_LIBSTATGRAB and HAVE_SYSCTLBYNAME codepaths.
cpu_state() isnt a function.
Landry Breuil [Mon, 27 Oct 2014 08:37:58 +0000 (09:37 +0100)]
inpt_queue is a TAILQ on OpenBSD
Landry Breuil [Mon, 27 Oct 2014 08:36:28 +0000 (09:36 +0100)]
Link collectd-tg with -lpthread if available
otherwise linking fails with undefined refs to pthread_mutex_* functions
Landry Breuil [Mon, 27 Oct 2014 08:12:26 +0000 (09:12 +0100)]
Fix swapctl() argument count detection on OpenBSD.
on OpenBSD swapctl() takes three arguments, but is defined in unistd.h
and also needs sys/param.h.
http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man2/swapctl.2
we need to add those headers to both detections to make sure the test
on 'swapctl takes two arguments' correctly fails.
Landry Breuil [Mon, 27 Oct 2014 07:38:53 +0000 (08:38 +0100)]
Include pthread.h in plugin.h to get pthread_t definition.
Landry Breuil [Mon, 27 Oct 2014 07:37:14 +0000 (08:37 +0100)]
Fix the processes plugin on OpenBSD (#776)
Properly check for struct kinfo_proc members in configure.ac
Use kvm_getprocs() like it was done on FreeBSD
Marc Fournier [Sun, 26 Oct 2014 18:45:02 +0000 (19:45 +0100)]
Merge remote-tracking branch 'origin/pr/488'
Sebastian Harl [Sat, 23 Nov 2013 12:55:32 +0000 (13:55 +0100)]
Let the config parser accept unquoted IPv6 addresses.
The parser supports raw IPv6 addresses, optional address and port (as
[<addr>]:<port>), and embedded IPv4 addresses.
Based on "Common Patterns" found in the flex manual.
Sebastian Harl [Sat, 25 Oct 2014 07:17:37 +0000 (09:17 +0200)]
Merge pull request #774 from trenkel/master
Adding get_dataset() to python
Sven Trenkel [Thu, 23 Oct 2014 19:01:13 +0000 (19:01 +0000)]
python: Add get_dataset() to the man page.
Sven Trenkel [Thu, 23 Oct 2014 16:58:50 +0000 (16:58 +0000)]
Add get_dataset() as a way to get the definition of a dataset from python.
https://github.com/collectd/collectd/issues/771
Michael Schenck [Tue, 21 Oct 2014 17:31:40 +0000 (13:31 -0400)]
Including vl->type, even when vl->type_instance is available to avoid over-writing values (i.e. with the 'df' plugin)
Marc Fournier [Mon, 20 Oct 2014 14:49:04 +0000 (16:49 +0200)]
mysql: correct 2 data types in innodb counters
Thanks to @ekilby for spotting this mistake ! Fixes #757
Sebastian Harl [Sun, 19 Oct 2014 18:25:50 +0000 (20:25 +0200)]
Use the complain mechanism to report write failures.
This ensures that we don't spam the log for each submitted value. Instead, an
exponential backup is used to report permanent errors starting at one message
per second.
Sebastian Harl [Sun, 19 Oct 2014 16:22:09 +0000 (18:22 +0200)]
write_graphite plugin: Improved error reporting when connecting to the server.
Michael Schenck [Tue, 7 Oct 2014 02:48:09 +0000 (22:48 -0400)]
missed the output_name
Michael Schenck [Tue, 7 Oct 2014 02:40:24 +0000 (22:40 -0400)]
Added support for the last two additional columns in add-linux-io-time
trenkel [Wed, 1 Oct 2014 14:10:10 +0000 (16:10 +0200)]
Merge pull request #751 from ptbrowne/prepend-sys-path
feat(python-plugin): prepend instead of append ModulePath to sys.path
Patrick Browne [Wed, 1 Oct 2014 09:18:40 +0000 (11:18 +0200)]
doc(collectd-python): update
Patrick Browne [Tue, 30 Sep 2014 08:31:05 +0000 (10:31 +0200)]
feat(python-plugin): prepend instead of append ModulePath to sys.path
When importing a module, you expect the plugin repertory to have higher priority
than your site-packages. It will prevent hard to debug clashing module names problems.
At least, if there is a problem, it will fail more loudly than "module did not register
any config callback"
Florian Forster [Fri, 26 Sep 2014 02:10:32 +0000 (19:10 -0700)]
cpu plugin: Don't report empty cpu states.
Marc Fournier [Thu, 25 Sep 2014 16:54:56 +0000 (18:54 +0200)]
statsd: clarify/simplify documentation & example
Florian Forster [Tue, 23 Sep 2014 14:52:04 +0000 (07:52 -0700)]
src/Makefile.am: Make sure plugins only export "module_register".
While there, put the LDFLAGS shared between all plugins into a separate
variable.
Florian Forster [Tue, 23 Sep 2014 14:13:52 +0000 (07:13 -0700)]
Merge remote-tracking branch 'github/pr/697'
Florian Forster [Tue, 23 Sep 2014 14:09:47 +0000 (07:09 -0700)]
Merge remote-tracking branch 'github/pr/734'
Denis Boulas [Tue, 23 Sep 2014 08:08:25 +0000 (11:08 +0300)]
Added documentation for StatsD module per added functionality in issue #403.
Victor Berger [Mon, 22 Sep 2014 14:51:36 +0000 (16:51 +0200)]
bind plugin: split bind_xml_stats to v3 and v1_v2.
And minor change to bind_parse_generic_name_attr_value_list.
Scott Sanders [Fri, 19 Sep 2014 14:31:18 +0000 (10:31 -0400)]
Bit shift right by 8 to get return code from exit status
Pull-Request: #741
Signed-off-by: Florian Forster <octo@collectd.org>
Victor Berger [Sat, 20 Sep 2014 13:15:51 +0000 (15:15 +0200)]
bind plugin: add support for the new XML v3 API.
Unfortunately, this new API does not provide per-zone data
any more, thus 'Zone' options like
Zone "example.com/IN"
are ignored if API version is 3.
Florian Forster [Sat, 20 Sep 2014 05:31:23 +0000 (07:31 +0200)]
COPYING: Add the MIT License and add a note about plugins being licensed individually.
Florian Forster [Sat, 20 Sep 2014 05:18:03 +0000 (07:18 +0200)]
Move utils_parse_option.[ch] out of the daemon/ directory.
Florian Forster [Sat, 20 Sep 2014 05:11:17 +0000 (07:11 +0200)]
common.[ch]: Move escape_string() to here.
Florian Forster [Sat, 20 Sep 2014 04:49:01 +0000 (06:49 +0200)]
Move collectd daemon files to the src/daemon/ directory.
Marc Fournier [Fri, 8 Aug 2014 09:34:20 +0000 (11:34 +0200)]
memory: make linux slab reporting work with older kernels
Marc Fournier [Fri, 8 Aug 2014 09:05:33 +0000 (11:05 +0200)]
memory: adjust safeguard to changes from previous commit
Florian Forster [Wed, 17 Sep 2014 08:52:36 +0000 (10:52 +0200)]
src/collectd.c: Set the LC_NUMERIC locale to "C".
When using ASCII protocols, such as the Graphite protocol, doubles are
converted to strings using sprintf(3) and parsed with strtod(3). If the
effective locale uses something different from a dot (".") as the
decimal separator (e.g. Portuguese, German), this breaks.
This patch sets the LC_NUMERIC locale to "C" on start-up, so that
strings are produced and parsed in a well-defined manner.
Fixes: #512
Florian Forster [Wed, 17 Sep 2014 06:24:57 +0000 (08:24 +0200)]
cpu plugin: Remove temperature code for Mac OS X.
This code would throw an error for some systems, because the temperature
couldn't be read. Since the plugin still works in general, this was very
confusing to users. Becaus the temperature, even when read sucessfully, was
never dispatched, remove the code entirely. We might want to add this back to
the apple_sensors plugin eventually.
Fixes: #22
Florian Forster [Wed, 17 Sep 2014 05:41:38 +0000 (07:41 +0200)]
swap plugin: Make "cached" optional under Linux.
This is the smallest possible fix for OpenVZ, where cached is not available.
master has a more complete fix which should be used going forward.
Fixes: #733
Florian Forster [Tue, 16 Sep 2014 14:05:52 +0000 (16:05 +0200)]
write_graphite plugin: Limit number of reconnection attempts per time.
Fixes: #625
Manuel CISSÉ [Thu, 20 Feb 2014 15:06:56 +0000 (16:06 +0100)]
memory plugin: Add slab memory stats (linux)
Pull-Request: #560
Florian Forster [Tue, 16 Sep 2014 09:17:55 +0000 (11:17 +0200)]
virt plugin: Rename the "libvirt" plugin to "virt".
"libvirt" confused libtool and caused problems when re-building from source.
Florian Forster [Tue, 16 Sep 2014 07:52:10 +0000 (09:52 +0200)]
cpu plugin: Various, random fixes and improvements:
* Add Pierre-Yves to the list of copyright holders.
* Make sure the entire file is consistently indented.
* Renamed the "ReportActive" config option to "ReportByState"
(with negated logic).
* Renamed internal functions to better reflect their use.
* Let cpu_stage() (née submit()) work on individual counters / derives
rather than an array, removing logic from the cpu_read() function.
* Rename CPU_SUBMIT_* to CPU_STATE_*.
* Move legacy behavior it its own function, cpu_commit_without_aggregation().
Florian Forster [Tue, 16 Sep 2014 05:19:09 +0000 (07:19 +0200)]
swap plugin: Make SwapCached optional under Linux.
OpenVZ doesn't provide the line, which caused swap collection to be
skipped entirely on these systems. Instead, "cached" should simply be
ignored, as it is on other systems. Thanks to @zerkms for reporting this
problem!
Fixes: #733
Florian Forster [Mon, 15 Sep 2014 17:21:22 +0000 (19:21 +0200)]
cpu plugin: Fix parsing of SoftIRQ under Linux.
Florian Forster [Sun, 14 Sep 2014 17:28:05 +0000 (19:28 +0200)]
openvpn plugin: Don't signal an error when no clients are connected.
In the multi1_read() function, an error (zero) was returned when no
clients were currently connected to the OpenVPN server, because the
"read" variable was initialized to zero and the while loop exited before
it was set to one. This is not the intended behavior.
Thanks to @srix for reporting this issue!
Fixes: #731
John Ferlito [Sat, 13 Sep 2014 01:24:14 +0000 (11:24 +1000)]
Add ReconnectInterval option to Network plugin
The Network plugin only performs DNS resolution at initialization. This
can be problematic when trying to performs migrations of collectd
infrastructure or when trying to create HA solutions which are dependant
on DNS.
The ReconnectInterval options forces a reconnect of all the sockets at
the defined number of seconds. By default no re-connections are attempted
if this option is not set.
John Ferlito [Sat, 13 Sep 2014 01:15:30 +0000 (11:15 +1000)]
Move sockent_client_disconnect above sockent_client_disconnect so we can use it there
Florian Forster [Sat, 13 Sep 2014 08:25:31 +0000 (10:25 +0200)]
collectd.conf(5): Document the ReportDegraded" option.
Florian Forster [Fri, 12 Sep 2014 15:06:53 +0000 (17:06 +0200)]
battery plugin: Implement the "ReportDegraded" option.
Florian Forster [Thu, 11 Sep 2014 05:16:19 +0000 (07:16 +0200)]
battery plugin: Implement the ValuesPercentage option.
Florian Forster [Wed, 10 Sep 2014 15:26:16 +0000 (17:26 +0200)]
battery plugin: Only report "current" when actually supplied by the battery.
I think the commend in the file sums it up pretty good, read that ;)
Florian Forster [Wed, 10 Sep 2014 15:04:41 +0000 (17:04 +0200)]
AUTHORS: Add Andy Parkins.
Vladimir Smirnov [Wed, 10 Sep 2014 19:08:50 +0000 (21:08 +0200)]
Fix typo in if caluse
Fixes #729
Signed-off-by: Florian Forster <octo@collectd.org>
Vladimir Smirnov [Wed, 10 Sep 2014 19:08:50 +0000 (21:08 +0200)]
Fix typo in if caluse
Fixes #729
Matthias Bethke [Wed, 10 Sep 2014 17:34:50 +0000 (19:34 +0200)]
add listval_filter method and corresponding tests
Rationale:
A frequent use case for LISTVAL is to retrieve a list of resources for a certain
host or host group that is not known in advance, such as when the hosts have
different disks installed. Using the existing listval() method,
Collectd::Unixsock retrieves the entire list, parses each entry into a hash and
returns the list, only to have the caller throw away the vast majority of
entries immediately. listval_filter() allows the caller to pass any attribute
that can be passed to getval() and filters the list of resources retrieved from
the socket before parsing it, resulting in a large speedup.
The current implemntation has some code duplication, although listval() could be
implemented as a small wrapper around listval_filter() with just a few percent
speed penalty due to the extra dynamically built regexp.
Matthias Bethke [Wed, 10 Sep 2014 16:48:44 +0000 (18:48 +0200)]
refactor common query-response code
Matthias Bethke [Wed, 10 Sep 2014 16:37:26 +0000 (18:37 +0200)]
clean up Perl style a bit
- Remove some superfluous parenthesis clutter
- Shorten a lot of single-line conditionals using postfix constructions
- Merge variable declarations
- Use $class/$self instead of $pkg/$obj as is customary
- Remove quotes around literal hash keys
Matthias Bethke [Wed, 10 Sep 2014 16:34:00 +0000 (18:34 +0200)]
replace Regexp::Common with core Scalar::Util
Matthias Bethke [Wed, 10 Sep 2014 16:32:39 +0000 (18:32 +0200)]
add a test suite
Florian Forster [Wed, 10 Sep 2014 15:15:24 +0000 (17:15 +0200)]
Merge branch 'collectd-5.3' into collectd-5.4
Florian Forster [Wed, 10 Sep 2014 14:53:51 +0000 (16:53 +0200)]
battery plugin: Import code to read metrics from sysfs.
This started as a simple import of Andy Parkins' sysfsbattery plugin into
the battery plugin. Since the battery plugin is ancient and hasn't been
touched in a while, this quickly escalated to a much bigger refactoring.
Sorry!
On the other hand, this fixes a couple of bugs. For example, all metrics
were always dispatched with plugin_instance "0". This is correct for the
majority of laptops, of course, but in theory this could be wrong.
Also ACPI charging / discharging rate is reported as "current", when
modern batteries actually report "power". The sysfs code does this
correctly, ACPI still needs to be patched.
Fixes: #725
Florian Forster [Wed, 10 Sep 2014 14:15:40 +0000 (16:15 +0200)]
src/common.[ch]: Implement strtogauge().
Florian Forster [Wed, 10 Sep 2014 14:54:26 +0000 (16:54 +0200)]
src/common.c: Fix strstripnewline().
Because the length of the string was decremented too late, the function
would actually overwrite the trailing null byte instead of the newline.
Florian Forster [Tue, 9 Sep 2014 21:43:11 +0000 (23:43 +0200)]
src/configfile.c: Fix the default interval setting.
Also fixes a bug in global_option_get_time(): Values smaller than or
equal to zero are illegal and the default value should be returned.
Thanks to @anandkarthik for spotting this!
Fixes: #727
Marc Fournier [Mon, 8 Sep 2014 13:10:18 +0000 (15:10 +0200)]
RPM specfile: take all new plugins and dependencies in account
Marc Fournier [Mon, 8 Sep 2014 15:32:54 +0000 (17:32 +0200)]
Merge branch 'collectd-5.4'
Marc Fournier [Mon, 8 Sep 2014 15:29:14 +0000 (17:29 +0200)]
RPM specfile: enable lvm plugin on RHEL7
Marc Fournier [Mon, 8 Sep 2014 15:21:38 +0000 (17:21 +0200)]
Merge branch 'collectd-5.3' into collectd-5.4
Conflicts:
contrib/redhat/collectd.spec
Florian Forster [Mon, 8 Sep 2014 15:11:56 +0000 (17:11 +0200)]
Merge remote-tracking branch 'github/master'