Code

sysdb: Use a custom output format instead of pretty-printed JSON.
[sysdb.git] / doc / sysdbd.conf.5.txt
index 6b41dabbab83db5be9ff996a5187affe7e77cadf..e3af5daadc5f52156a980e1fe009dd3acdeadae0 100644 (file)
@@ -1,7 +1,5 @@
 sysdbd.conf(5)
 ==============
 sysdbd.conf(5)
 ==============
-Sebastian "tokkee" Harl <sh@tokkee.org>
-version {package_version}, {build_date}
 :doctype: manpage
 
 NAME
 :doctype: manpage
 
 NAME
@@ -14,12 +12,18 @@ SYNOPSIS
   Interval 300
 
   Listen "unix:/var/run/sysdbd.sock"
   Interval 300
 
   Listen "unix:/var/run/sysdbd.sock"
+  <Listen "tcp:some.host.name:12345">
+      SSLCertificate "/etc/sysdb/ssl/cert.pem"
+      SSLCertificateKey "/etc/sysdb/ssl/key.pem"
+  </Listen>
 
   LoadPlugin "syslog"
 
   LoadBackend "collectd::unixsock"
   LoadBackend "mk-livestatus"
 
 
   LoadPlugin "syslog"
 
   LoadBackend "collectd::unixsock"
   LoadBackend "mk-livestatus"
 
+  LoadPlugin "timeseries::rrdtool"
+
   <LoadBackend "puppet::store-configs">
       Interval 1800
   </LoadBackend>
   <LoadBackend "puppet::store-configs">
       Interval 1800
   </LoadBackend>
@@ -38,12 +42,12 @@ any real (user-facing) functionality, the most important part of the
 configuration is loading and configuring plugins.
 
 The syntax of this configuration file is similar to that of the Apache
 configuration is loading and configuring plugins.
 
 The syntax of this configuration file is similar to that of the Apache
-webserver. It is made up of _options_ and _sections_. Each option contains a
+webserver. It is made up of _options_ and _blocks_. Each option contains a
 _key_ and one or more _values_ separated by spaces and terminated by a newline
 _key_ and one or more _values_ separated by spaces and terminated by a newline
-character. Sections are enclosed in a start- and end-tag, each on a line of
+character. Blocks are enclosed in a start- and end-tag, each on a line of
 their own. These tags are enclosed in angle brackets and also contain a key
 their own. These tags are enclosed in angle brackets and also contain a key
-and value. Section end-tags only contain the key of the start-tag prepended by
-a forward-slash ("/"). Empty lines are ignored as well as any unquoted hash
+and value. A block's end-tag only contain the key of the start-tag prepended
+by a forward-slash ("/"). Empty lines are ignored as well as any unquoted hash
 symbol ("#") including anything following up to the following newline. Keys
 are unquoted strings consisting only of alphanumeric characters and the
 underscore character ("_"). Values may either be unquoted strings, quoted
 symbol ("#") including anything following up to the following newline. Keys
 are unquoted strings consisting only of alphanumeric characters and the
 underscore character ("_"). Values may either be unquoted strings, quoted
@@ -70,32 +74,66 @@ GLOBAL SETTINGS
 
 *Listen* '<socket>'::
        Sets the address on which sysdbd is to listen for client connections. It
 
 *Listen* '<socket>'::
        Sets the address on which sysdbd is to listen for client connections. It
-       supports UNIX domain sockets. The path name needs to be prefixed by
-       'unix:'.
+       supports UNIX domain sockets and TCP sockets using TLS encryption. UNIX
+       socket addresses are specified by the path name of the socket, optionally
+       prefixed with 'unix:'. TCP listen addresses may be specified as
+       '<host>:<port>', optionally prefixed with 'tcp:'. The host may be a
+       hostname, an IPv4 address or and IPv6 address. It may be empty or
+       '0.0.0.0' / '::' to listen on all local addresses. *Listen* may optionally
+       be a block containing any of the following options:
+
+       *SSLCertificate* '<filename>';;
+               Specify the SSL server certificate file to use for SSL connections.
+
+       *SSLCertificateKey* '<filename>';;
+               Specify the SSL server private key file to use for SSL connections.
+
+       *SSLCACertificates* '<filename>';;
+               Specify the file containing certificate authority (CA) certificates
+               for client verification purposes to use for SSL connnections.
 
 *LoadBackend* '<name>'::
        Loads the backend named '<name>'. Backends are special plugins taking care
 
 *LoadBackend* '<name>'::
        Loads the backend named '<name>'. Backends are special plugins taking care
-       of collecting values from external systems. This may optionally be a
-       section containing any of the following options:
+       of collecting values from external systems. This may optionally be a block
+       containing any of the following options:
 
        *Interval* '<seconds>';;
                Overwrite the global interval setting by setting a custom interval to
                be used for this backend. See the global *Interval* option for more
                details.
 
 
        *Interval* '<seconds>';;
                Overwrite the global interval setting by setting a custom interval to
                be used for this backend. See the global *Interval* option for more
                details.
 
+*LoadPlugin* '<name>'::
+       Loads the plugin named '<name>'. Plugins provide additional functionality
+       for sysdbd.
+
+*PluginDir* '<directory>'::
+       Sets the base directory for plugins to '<directory>'. When loading a
+       plugin, it is expected to be found below this directory. This option
+       affects all following *LoadBackend* or *LoadPlugin* statements up to the
+       following *PluginDir* option.
+
 PLUGINS
 -------
 Some plugins support additional configuration options. Each of these are
 enclosed in a *Plugin* or *Backend* section. The following plugins are shipped
 PLUGINS
 -------
 Some plugins support additional configuration options. Each of these are
 enclosed in a *Plugin* or *Backend* section. The following plugins are shipped
-with SysDB. See *sysdb*-'<name>'(5) manpages for more details.
+with SysDB. See *sysdbd*-'<name>'(5) manpages for more details.
+
+Backends:
+~~~~~~~~~
 
 *collectd::unixsock*::
 This backend module accesses the system statistics collection daemon
 *collectd* through its UNIX socket interface. It periodically queries all host
 
 *collectd::unixsock*::
 This backend module accesses the system statistics collection daemon
 *collectd* through its UNIX socket interface. It periodically queries all host
-and service information.
+and metric information.
 +
 See also: http://collectd.org
 
 +
 See also: http://collectd.org
 
+*facter*::
+This backend module retrieves local facter fact values and submits them as
+host attributes.
++
+See also: https://github.com/puppetlabs/cfacter
+
 *mk-livestatus*::
 This backend modules accesses monitoring systems supporting the *livestatus*
 addon (e.g., *Nagios*, *Icinga*, and *Shinken*). It periodically queries all
 *mk-livestatus*::
 This backend modules accesses monitoring systems supporting the *livestatus*
 addon (e.g., *Nagios*, *Icinga*, and *Shinken*). It periodically queries all
@@ -112,21 +150,53 @@ facter facts information storing the latter as host attributes.
 See also: http://puppetlabs.com/puppet,
 http://puppetlabs.com/puppet/related-projects/facter/
 
 See also: http://puppetlabs.com/puppet,
 http://puppetlabs.com/puppet/related-projects/facter/
 
+Time-series fetcher:
+~~~~~~~~~~~~~~~~~~~~
+
+*timeseries::rrdtool*::
+This plugin adds support for fetching time-series data from RRD files.
++
+See also: http://oss.oetiker.ch/rrdtool
+
+Plugins:
+~~~~~~~~
+
+*cname::dns*::
+Canonicalize hostnames based on a reverse DNS query.
+
 *syslog*::
 This logging module sends log messages of the daemon and plugins to the local
 system's syslog service.
 
 SEE ALSO
 --------
 *syslog*::
 This logging module sends log messages of the daemon and plugins to the local
 system's syslog service.
 
 SEE ALSO
 --------
-*sysdbd*(1)
+manpage:sysdbd[1], manpage:sysdb[7]
+
+The SysDB homepage: https://sysdb.io/
+
+Backend documentation:
+~~~~~~~~~~~~~~~~~~~~~~
+
+manpage:sysdbd-collectd-unixsock[5], manpage:sysdbd-facter[5],
+manpage:sysdbd-mk-livestatus[5], manpage:sysdbd-puppet-store-configs[5]
+
+Time-series fetcher documentation:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+manpage:sysdbd-timeseries-rrdtool[5]
+
+Plugin documentation:
+~~~~~~~~~~~~~~~~~~~~~
+
+manpage:sysdbd-cname-dns[5], manpage:sysdbd-syslog[5]
 
 AUTHOR
 ------
 
 AUTHOR
 ------
-sysdbd was written by Sebastian "tokkee" Harl <sh@tokkee.org>.
+SysDB was written by Sebastian "tokkee" Harl <sh@tokkee.org>.
 
 COPYRIGHT
 ---------
 
 COPYRIGHT
 ---------
-Copyright (C) 2012-2013 Sebastian "tokkee" Harl <sh@tokkee.org>
+Copyright (C) 2012-2014 Sebastian "tokkee" Harl <sh@tokkee.org>
 
 This is free software under the terms of the BSD license, see the source for
 copying conditions. There is NO WARRANTY; not even for MERCHANTABILITY or
 
 This is free software under the terms of the BSD license, see the source for
 copying conditions. There is NO WARRANTY; not even for MERCHANTABILITY or