Merge branch 'collectd-5.3'
Conflicts:
src/collectd.conf.pod
Conflicts:
src/collectd.conf.pod
Merge branch 'collectd-5.2' into collectd-5.3
rrdtool, rrdcached plugins: Re-implement value_list_to_filename().
Faster version without snprintf().
Faster version without snprintf().
csv plugin: Re-implement value_list_to_filename().
The new implementation is faster, because it doesn't use snprintf().
The new implementation is faster, because it doesn't use snprintf().
src/common.c: Reimplement format_name for performance.
This is used from uc_update(), i.e. for every value list dispatched, and was
one of the most expensive functions thanks to snprintf().
This reduces total time spent in the format_name() function from 7.78% to 1.89%
during a network stress test.
This is used from uc_update(), i.e. for every value list dispatched, and was
one of the most expensive functions thanks to snprintf().
This reduces total time spent in the format_name() function from 7.78% to 1.89%
during a network stress test.
Test for end of oid tree without breaking collection loop.
Merge branch 'fix-stringio-python2.7' of git://github.com/aelse/collectd
Merge branch 'fix-dstype-ordinal-decode_network_values' of git://github.com/aelse/collectd
Merge branch 'vbartoni/df'
df plugin: Remove trailing white space.
fixes StringIO unicode handling in python 2.7
decode_network_values dstype is ordinal value of string literal
collectd-threshold(5): Correct the description of the "Interesting" config option.
threshold plugin: Fix the "Interesting" configuration option.
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Merge branch 'feature-write_graphite-udp' of git://github.com/jjmaestro/collectd
write_graphite plugin: avoid flooding the log with the protocol error check
Moving the protocol error checking from `wg_callback_init` to `wg_config_node`.
This avoids flooding the log, as suggested by Florian Forster (@octo).
Moving the protocol error checking from `wg_callback_init` to `wg_config_node`.
This avoids flooding the log, as suggested by Florian Forster (@octo).
write_graphite plugin: config should fail on error
This is the preferred way of handling config, as it can be seen in snmp.c. It's
important to fail on a config error to simplify code in other callbacks.
This is the preferred way of handling config, as it can be seen in snmp.c. It's
important to fail on a config error to simplify code in other callbacks.
Unbreak type_inst value in collectd psql view.
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Fix typo
recive -> receive
recive -> receive
Plugin df - reporting both percentage and absolute values
write_graphite plugin: Adding myself to AUTHORS :)
Merge branch 'xl/zfs'
zfs_arc plugin: Fix indentation.
zfs_arc plugin: Use a buffer with fixed size rather than allocating on the heap.
The key length is very predicable, so buffer length is not a problem.
The key length is very predicable, so buffer length is not a problem.
zfs_arc plugin: Add copyright information for Xin Li.
write_graphite plugin: Adding LogSendErrors to docs, README, etc.
write_graphite plugin: Adding LogSendErrors boolean flag
Sometimes we don't want to hog the syslog with errors that are produced
when the graphite server is down.
Especially for UDP, we want to be able to truly fire-and-forget
(remember to monitor UDP packet receipt failures though :) and having
errors written to the syslog is a burden that should be avoided.
Sometimes we don't want to hog the syslog with errors that are produced
when the graphite server is down.
Especially for UDP, we want to be able to truly fire-and-forget
(remember to monitor UDP packet receipt failures though :) and having
errors written to the syslog is a burden that should be avoided.
write_graphite plugin: Adding UDP support to docs, README, etc.
write_graphite plugin: Adding TCP/UDP support via config
UDP allows to "fire-and-forget" data while not bringing the servers down
due to TCP's connection oriented overhead.
The new versions of Graphite support both TCP and UDP streams so it made
sense to add UDP support.
UDP allows to "fire-and-forget" data while not bringing the servers down
due to TCP's connection oriented overhead.
The new versions of Graphite support both TCP and UDP streams so it made
sense to add UDP support.
write_riemann plugin: Implement the "TTLFactor" option.
Github: #336
Github: #336
Merge branch 'yaccz/curl-status'
Merge branch 'vb/df'
curl plugin: Fix compiler warning.
The compiler thinks the "start" variable may be used uninitialized.
The compiler thinks the "start" variable may be used uninitialized.
collectd.conf(5): Minor fixes.
df plugin: Rename the percent metrics.
* Change type to "percent".
* Use "<disk>-bytes" and "<disk>-inodes" as plugin instance. This way we're
able to use "percent" for both.
* Remove one level of indentation.
* Make casting more explicit (e.g. don't divide a float by a size_t).
* Change type to "percent".
* Use "<disk>-bytes" and "<disk>-inodes" as plugin instance. This way we're
able to use "percent" for both.
* Remove one level of indentation.
* Make casting more explicit (e.g. don't divide a float by a size_t).
df plugin: Remove trailing whitespace.
And fix indentation.
And fix indentation.
Plugin df: ReportPercentage
Plugin df free space as percentage.
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Implement ARC data collection on FreeBSD.
Merge branch 'collectd-5.2' into collectd-5.3
src/configfile.c: Let errors in included files propagate up to cf_read().
cf_read_generic() returned NULL in two cases: Unable to read file and
file was empty. Since we wanted to allow empty includes, the "include
file with errors" case was not handled properly.
Github: #323
cf_read_generic() returned NULL in two cases: Unable to read file and
file was empty. Since we wanted to allow empty includes, the "include
file with errors" case was not handled properly.
Github: #323
contrib/redhat/init.d-collectd: Rename variable to …PIDDIR.
Github: #298
Github: #298
allow for non-root user to run script.
As collectdmon handles its pidfile, this would require to change
COLLECTMONPIDIR to something else than only-root writeable /var/run
Change-Id: I45d2de9dcc976f3b1e18cef5b6b78eeca1d270b2
Signed-off-by: Florian Forster <octo@collectd.org>
As collectdmon handles its pidfile, this would require to change
COLLECTMONPIDIR to something else than only-root writeable /var/run
Change-Id: I45d2de9dcc976f3b1e18cef5b6b78eeca1d270b2
Signed-off-by: Florian Forster <octo@collectd.org>
Merge branch 'collectd-4.10' into collectd-5.2
Don't notify continuously when MySQL slave SQL thread is running
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Add "=encoding" header to all manual pages.
http://bugs.debian.org/708718
http://bugs.debian.org/708718
Merge branch 'yaccz/curl-status'
curl plugin: Use cdtime to calculate response times.
curl plugin: Don't abort when reading the response code failed.
curl plugin: Remove the curl-only auxiliary configuration functions.
curl plugin: Fix compile issue (long vs. long*).
exec plugin: Document that defaulting to PUTVAL is no longer done
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Merge branch 'more-varnish-stats'
Merge branch 'document-varnish-instance-block' into collectd-5.2
modbus plugin: Refactor the new reconnection code.
Avoid the goto() and switch() statements.
Github: #294
Avoid the goto() and switch() statements.
Github: #294
Cleanup modbus connection if wrong result
Change-Id: I1b7520442d7663d5bc2529369e27e3e858fe2168
Signed-off-by: Florian Forster <octo@collectd.org>
Change-Id: I1b7520442d7663d5bc2529369e27e3e858fe2168
Signed-off-by: Florian Forster <octo@collectd.org>
Fix modbus segfault / New strategy for connecting
The previous implementation had a reconnection loop which should not
really be necessary. Idea tried here is to check if connection is alive,
and establish it if not. Change was begun because previously connection
would only be attempted as a retry, so on first pass a NULL was handed to
libmodbus which caused segmentation faults reproducibly.
Signed-off-by: Florian Forster <octo@collectd.org>
The previous implementation had a reconnection loop which should not
really be necessary. Idea tried here is to check if connection is alive,
and establish it if not. Change was begun because previously connection
would only be attempted as a retry, so on first pass a NULL was handed to
libmodbus which caused segmentation faults reproducibly.
Signed-off-by: Florian Forster <octo@collectd.org>
src/configfile.c: Add the "AutoLoadPlugin" option.
When enabled, <Plugin ...> blocks will automatically load plugins.
Thanks to Tim Bunce for suggesting this!
Github: #333
When enabled, <Plugin ...> blocks will automatically load plugins.
Thanks to Tim Bunce for suggesting this!
Github: #333
src/plugin.c: Fix a comment regarding duplicate plugin_load() calls.
src/plugin.c: Move the perl and python "global" magic to plugin_load().
The config file handling is really not the best place to have this. Also,
the feature I'm working on would have to copy this magic if left in the
config code, and I *really* don't want that.
The config file handling is really not the best place to have this. Also,
the feature I'm working on would have to copy this magic if left in the
config code, and I *really* don't want that.
collectd.conf(5): Document the new "LoadPlugin" behavior.
Github: #333
Github: #333
src/plugin.c: Make plugin_load() idempotent, i.e. don't load plugins twice.
Previously, multiple 'LoadPlugin "foo"' lines would dlopen the same .so file
twice and call its module_register function twice. This would eventually result
in complaints about callbacks with the same name being registered. With this
patch each plugin is only loaded only once, allowing people to write "self
contained" configuration segments.
Thanks to Tim Bunce for suggesting this!
Github: #333
Previously, multiple 'LoadPlugin "foo"' lines would dlopen the same .so file
twice and call its module_register function twice. This would eventually result
in complaints about callbacks with the same name being registered. With this
patch each plugin is only loaded only once, allowing people to write "self
contained" configuration segments.
Thanks to Tim Bunce for suggesting this!
Github: #333
Merge branch 'ef/mic'
README: Document power consumption being collected by the mic plugin.
mic plugin: Fix indentation issue.
mic plugin: Change the name of the power settings …
… to reflec the names documented in the manpage.
… to reflec the names documented in the manpage.
varnish plugin: update config docs for new collectors
varnish: hint about missing <Instance> block
The warning when the Collect* configuration options where used outside
of an <Instance> block was confusing. This patch warns the user the same
way the apache plugin does.
The warning when the Collect* configuration options where used outside
of an <Instance> block was confusing. This patch warns the user the same
way the apache plugin does.
Improve varnish section in manpage.
There previously was no mention of the mandatory <Instance> block.
There previously was no mention of the mandatory <Instance> block.
Drop suffixes, now that we are putting them in correct types
Do proper storage of power numbers, do conversion to base units.
Add Documentaion for Power collection in the mic plugin
mic plugin: Code for power readings.
add MeasureResponseCode refs #319
curl_xml plugin: Allow arbitrarily long callback names.
Fixes issue #286.
Fixes issue #286.
src/common.[ch]: Add the ssnprintf_alloc() function.
src/plugin.c: Allocate read-callback names on the heap.
This allows to use arbitrarily long callback names.
Prerequisite for fixing #286.
This allows to use arbitrarily long callback names.
Prerequisite for fixing #286.
collectd.conf(5): Add documentation for the MIC plugin.
configure.in: Remove the unused "plugin_mic" variable.
mic plugin: Use the "core number" as plugin instance.
Previously, per-core CPU statistics would be dispatched as (e.g.):
<host>/mic-0/cpu-1-user
This makes graping hard, because it required to parse the type instance to
seperate out different graphs. The core number has therefore been moved to the
plugin instance, so the "mic" plugin behaves more like the "cpu" plugin, e.g.:
<host>/mic-0-cpu-1/cpu-user
Previously, per-core CPU statistics would be dispatched as (e.g.):
<host>/mic-0/cpu-1-user
This makes graping hard, because it required to parse the type instance to
seperate out different graphs. The core number has therefore been moved to the
plugin instance, so the "mic" plugin behaves more like the "cpu" plugin, e.g.:
<host>/mic-0-cpu-1/cpu-user
mic plugin: Some more coding style changes. Mostly breaking long lines.
mic plugin: Remove the NUM_THERMS define.
Also some coding style changes: Limit line length, move temporary variables
to an innter scope, print the temperature name in an error message (rather
than its ID).
Also some coding style changes: Limit line length, move temporary variables
to an innter scope, print the temperature name in an error message (rather
than its ID).
AUTHORS, README: Add Evan and the mic plugin.
cleanup mic number initializing. Prefix Debug and error messages
Use proper values out of memory utilization
Fix input parameter
Cleanup errors from upstream review, cleanup typeographical errors.
here's some bits to fix CFLAGS to CPPFLAGS
rework dependencies for mic plugin
fix copy framework error
AUTHORS, README: Add the "cgroups" plugin.
cgroups plugin: Rename the "cgroups_cpuacct" plugin.
The new name is sufficient and much easier to type / remember.
The new name is sufficient and much easier to type / remember.
varnish plugin: add missing fields
This commit adds a large number of fields exported by the varnish stats
interface which have not previously been collected. A number are still missing,
as it is not immediately obvious which stat group they should go in:
accept_fail
client_drop_late
and, from Varnish 3.X:
vmods
n_gzip
n_gunzip
In addition, there are a number of fields which were added at the end of the 2.X
series, but in the absence of a way of detecting whether we're compiling against
2.0.X or 2.1.X, are necessarily disabled when compiling against 2.X:
dir_dns_lookups
dir_dns_failed
dir_dns_hit
dir_dns_cache_full
backend_retry
fetch_1xx
fetch_204
fetch_304
This commit adds a large number of fields exported by the varnish stats
interface which have not previously been collected. A number are still missing,
as it is not immediately obvious which stat group they should go in:
accept_fail
client_drop_late
and, from Varnish 3.X:
vmods
n_gzip
n_gunzip
In addition, there are a number of fields which were added at the end of the 2.X
series, but in the absence of a way of detecting whether we're compiling against
2.0.X or 2.1.X, are necessarily disabled when compiling against 2.X:
dir_dns_lookups
dir_dns_failed
dir_dns_hit
dir_dns_cache_full
backend_retry
fetch_1xx
fetch_204
fetch_304
collectd.conf(5): Fixed documentation for include filter patterns.
The syntax has been changed from a positional argument to using an <Include>
block with additional arguments.
The syntax has been changed from a positional argument to using an <Include>
block with additional arguments.
collectd.conf(5): Fixed a typo (comma vs. dot) and markup fixes.
src/types.db: Remove the unused "cpuacct" type.
cgroups_cpuacct plugin: Read file line-by-line.
Use the field name from the file as type instance when dispatching values.
Use the field name from the file as type instance when dispatching values.
dns plugin: Sleep for an interval before re-trying to read from interface.
Otherwise we'd just have the CPU hogging behavior shifted from libpcap
to collectd …
Github: #308
Otherwise we'd just have the CPU hogging behavior shifted from libpcap
to collectd …
Github: #308
varnish plugin: missing definition in default config
dns plugin: Resume after receiving a PCAP_ERROR from pcap_loop().
If an interface goes down while capturing, libpcap returns PCAP_ERROR.
Handle this case gracefully.
Github: #308
If an interface goes down while capturing, libpcap returns PCAP_ERROR.
Handle this case gracefully.
Github: #308