Annotate meta data for db plugins

Provide a MetadataFrom setting to name columns whose content is to be
added as metadata to the data collected.  Similar in usage to the
ValuesFrom setting.
add log_logstash plugin to emit logstash json_event messages.
Add SNMPv3 authentication and encryption support

Adds the following configuration options to support SNMPv3 authentication:
* SecurityLevel - authPriv | authNoPriv | noAuthNoPriv
* Username - username for authentication
* AuthPassphrase - passphrase for authentication
* AuthProtocol - MD5 or SHA
* PrivacyPassphrase - passphrase for encryption
* PrivacyProtocol - AES or DES
* Context - Optional authentication context
check if libpcap has PCAP_ERROR_IFACE_NOT_UP

This should prevent DNS plugin from being built on systems with libpcap
older than 1.0.0.

GitHub issue #373
curl_json plugin: avoid cache aliasing by using all fields instead of the final two

The following two keys

  Key workers/*/requests
  Key workers/*/apps/*/requests

can both lead to type_instance's of say

  0-requests

which would alias in the cache.  If, instead of just the final two key
name components, we use all of them it would lead to these

  Key workers-0-requests
  Key workers-0-apps-0-requests

which would not overlap.
RedHat RPM spec: updates for 5.4.0
curl_json plugin: avoid unlikely overrun

Signed-off-by: Florian Forster <octo@collectd.org>
curl_json plugin: avoid accessing off the end of the avl_tree_s

It's not written this way, but really we have a union { *key; *tree; }
which is differentiated by checking for the presence a magic field
which only exists in key.  This leads to accesses off the end of the
tree.  Putting the magic at start of the key avoids this.

Signed-off-by: Florian Forster <octo@collectd.org>
zfs_arc plugin: Collect "allocated" and "stolen" on FreeBSD only.

The appropriate log messages have been demoted to WARNING.

Github: #305
cgroups: don't fail parsing when colon not found

The format of cpuacct.stat seems to not always have a colon as separator.

It appears to *not* have the colon at least on debian's kernel 3.2.41 and
3.2.35, as well as on RHEL6 with 2.6.32. All of them have decent support for
cgroups/lxc, and the cgroups plugin fails to work with them without this patch.

Also, looking at other implementations shows that they *don't* expect a colon:
https://bitbucket.org/dotcloud/liblxcstats/src/2558b4fbbf589c609895b0badbfc7d413466d716/probes/cpuacct.c?at=default#cl-71
https://github.com/BrightcoveOS/Diamond/blob/master/src/collectors/cpuacct_cgroup/cpuacct_cgroup.py#L55
correct typo
src/utils_mount.c: Fix wrong behavior in cu_mount_getoptionvalue().

Github: #412
cgroups plugin: Use cu_mount_checkoption().

cu_mount_checkoption() behaves a bit like strstr() in that it returns a pointer
into the buffer. cu_mount_getoptionvalue() allocated memory that was never
freed, slowly leaking memory (although very little).

Github: #412
Merge remote-tracking branch 'github/pr/413' into collectd-5.4
correct default write_graphite protocol in manpage
Merge remote-tracking branch 'origin/pr/409' into collectd-5.4
collectd.conf: Added example cgroups plugin config section.
collectd.conf: Added example df plugin ValuesAbsolute/Percentage options.
collectd.conf: Added an example write_riemann TTLFactor option.
version-gen.sh: Ensure only collectd repository versions are used

When cross compiling in hosted environments using RPM,
the extracted tar-ball can be located in a parent .git repository.

The version-gen.sh script will then take the version number from
this repository as if it represents collectd.

This can be even more erroneous when the version returned is non
numerical and breaks the build

Signed-off-by: Kieran Bingham <kieran.bingham@st.com>