2db9867da9
Add explicit support for the write_prometheus plugin, it requires the libmicrohttpd and protobuf-c libraries. [Peter: add note about where dependencies come from] Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
608 lines
14 KiB
Plaintext
608 lines
14 KiB
Plaintext
menuconfig BR2_PACKAGE_COLLECTD
|
|
bool "collectd"
|
|
# Uses fork()
|
|
depends on BR2_USE_MMU
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS
|
|
depends on !BR2_STATIC_LIBS
|
|
help
|
|
collectd is a daemon which collects system performance
|
|
statistics periodically and provides mechanisms to store
|
|
the values in a variety of ways, for example in RRD files.
|
|
|
|
http://collectd.org/
|
|
|
|
if BR2_PACKAGE_COLLECTD
|
|
|
|
menu "match plugins"
|
|
|
|
config BR2_PACKAGE_COLLECTD_EMPTY_COUNTER
|
|
bool "empty counter"
|
|
help
|
|
Match counter values which are currently zero.
|
|
|
|
config BR2_PACKAGE_COLLECTD_HASHED
|
|
bool "hashed"
|
|
help
|
|
Match values using a hash function of the hostname.
|
|
|
|
config BR2_PACKAGE_COLLECTD_REGEX
|
|
bool "regex"
|
|
help
|
|
Match values by their identifier based on regular expressions.
|
|
|
|
config BR2_PACKAGE_COLLECTD_TIMEDIFF
|
|
bool "timediff"
|
|
help
|
|
Match values with an invalid timestamp.
|
|
|
|
config BR2_PACKAGE_COLLECTD_VALUE
|
|
bool "value"
|
|
help
|
|
Select values by their data sources' values.
|
|
|
|
endmenu
|
|
|
|
menu "misc plugins"
|
|
|
|
config BR2_PACKAGE_COLLECTD_AGGREGATION
|
|
bool "aggregation"
|
|
help
|
|
The Aggregate plugin allows to aggregate multiple values into
|
|
a single value using one or several consolidation functions,
|
|
e.g. summation and average.
|
|
|
|
config BR2_PACKAGE_COLLECTD_LOGFILE
|
|
bool "logfile"
|
|
default y
|
|
help
|
|
Writes log messages to a file or STDOUT/STDERR.
|
|
|
|
config BR2_PACKAGE_COLLECTD_LOGSTASH
|
|
bool "logstash"
|
|
select BR2_PACKAGE_YAJL
|
|
help
|
|
Writes log messages formatted as logstash JSON events.
|
|
|
|
config BR2_PACKAGE_COLLECTD_NOTIFY_EMAIL
|
|
bool "notify_email"
|
|
depends on !BR2_STATIC_LIBS # libesmtp
|
|
select BR2_PACKAGE_LIBESMTP
|
|
select BR2_PACKAGE_OPENSSL
|
|
help
|
|
Send an E-mail with the notification message to the
|
|
configured recipients.
|
|
|
|
comment "notify_email needs a toolchain w/ dynamic library"
|
|
depends on BR2_STATIC_LIBS
|
|
|
|
config BR2_PACKAGE_COLLECTD_NOTIFY_NAGIOS
|
|
bool "notify_nagios"
|
|
help
|
|
Sends notifications to Nagios as a passive check result.
|
|
|
|
config BR2_PACKAGE_COLLECTD_SYSLOG
|
|
bool "syslog"
|
|
default y
|
|
help
|
|
Logs to the standard UNIX logging mechanism.
|
|
|
|
config BR2_PACKAGE_COLLECTD_THRESHOLD
|
|
bool "threshold"
|
|
help
|
|
Checks values against configured thresholds and creates notifications
|
|
if values are out of bounds.
|
|
|
|
endmenu
|
|
|
|
menu "read plugins"
|
|
|
|
comment "Select at least one for collectd to be useful"
|
|
|
|
config BR2_PACKAGE_COLLECTD_APACHE
|
|
bool "apache"
|
|
select BR2_PACKAGE_LIBCURL
|
|
help
|
|
Collects Apache's mod_status information.
|
|
|
|
config BR2_PACKAGE_COLLECTD_APCUPS
|
|
bool "apcups"
|
|
help
|
|
Collects UPS statistics from apcupsd.
|
|
|
|
config BR2_PACKAGE_COLLECTD_BATTERY
|
|
bool "battery"
|
|
help
|
|
Collects the battery's charge, the drawn current and voltage.
|
|
|
|
config BR2_PACKAGE_COLLECTD_BIND
|
|
bool "bind"
|
|
select BR2_PACKAGE_LIBCURL
|
|
select BR2_PACKAGE_LIBXML2
|
|
help
|
|
Collects BIND DNS statistics.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CEPH
|
|
bool "ceph"
|
|
select BR2_PACKAGE_YAJL
|
|
help
|
|
Statistics from the Ceph distributed storage system.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CHRONY
|
|
bool "chrony"
|
|
help
|
|
Collects NTP data from the chrony NTP server.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CGROUPS
|
|
bool "cgroups"
|
|
help
|
|
Collects CGroups CPU usage accounting.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CONNTRACK
|
|
bool "conntrack"
|
|
help
|
|
Collects the number of entries in Linux's connection tracking table.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CONTEXTSWITCH
|
|
bool "contextswitch"
|
|
help
|
|
Collects the number of context switches done by the operating system.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CPU
|
|
bool "cpu"
|
|
help
|
|
Collects the amount of time spent by the CPU in various states.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CPUFREQ
|
|
bool "cpufreq"
|
|
help
|
|
Collects the current CPU's frequency.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CPUSLEEP
|
|
bool "cpusleep"
|
|
help
|
|
Measures time spent by CPU in deep sleep mode.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CURL
|
|
bool "curl"
|
|
select BR2_PACKAGE_LIBCURL
|
|
help
|
|
Uses libcurl to read files and then parses them according
|
|
to the configuration.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CURL_JSON
|
|
bool "curl-json"
|
|
select BR2_PACKAGE_LIBCURL
|
|
select BR2_PACKAGE_YAJL
|
|
help
|
|
Queries JSON data using the cURL library and parses it
|
|
according to the user's configuration using YAJL.
|
|
|
|
config BR2_PACKAGE_COLLECTD_CURL_XML
|
|
bool "curl-xml"
|
|
select BR2_PACKAGE_LIBCURL
|
|
select BR2_PACKAGE_LIBXML2
|
|
help
|
|
Reads files using libcurl and parses it as XML.
|
|
|
|
config BR2_PACKAGE_COLLECTD_DF
|
|
bool "df"
|
|
help
|
|
Collects file system usage information.
|
|
|
|
config BR2_PACKAGE_COLLECTD_DISK
|
|
bool "disk"
|
|
help
|
|
Collects performance statistics of hard-disks and partitions.
|
|
|
|
config BR2_PACKAGE_COLLECTD_DNS
|
|
bool "dns"
|
|
select BR2_PACKAGE_LIBPCAP
|
|
help
|
|
Collects statistics of DNS traffic using libpcap.
|
|
|
|
config BR2_PACKAGE_COLLECTD_DRBD
|
|
bool "drbd"
|
|
help
|
|
Collect individual drbd resource statistics.
|
|
|
|
config BR2_PACKAGE_COLLECTD_ENTROPY
|
|
bool "entropy"
|
|
help
|
|
Collects the available entropy on a system.
|
|
|
|
config BR2_PACKAGE_COLLECTD_ETHSTAT
|
|
bool "ethstat"
|
|
help
|
|
Collects network interface card statistics.
|
|
|
|
config BR2_PACKAGE_COLLECTD_EXEC
|
|
bool "exec"
|
|
help
|
|
Executes scripts and reads values back that are printed
|
|
to STDOUT by that program.
|
|
|
|
config BR2_PACKAGE_COLLECTD_FHCOUNT
|
|
bool "fhcount"
|
|
help
|
|
File handles statistics.
|
|
|
|
config BR2_PACKAGE_COLLECTD_FILECOUNT
|
|
bool "filecount"
|
|
help
|
|
Counts the number of files in a directory and all its subdirectories.
|
|
|
|
config BR2_PACKAGE_COLLECTD_FSCACHE
|
|
bool "fscache"
|
|
help
|
|
Collects information about the file-system based caching
|
|
infrastructure for network file-systems and other slow media.
|
|
|
|
config BR2_PACKAGE_COLLECTD_GPS
|
|
bool "gps"
|
|
select BR2_PACKAGE_GPSD
|
|
help
|
|
Reports the number of sattelites seen by and precision
|
|
of a GPS receiver.
|
|
|
|
config BR2_PACKAGE_COLLECTD_HUGEPAGES
|
|
bool "hugepages"
|
|
help
|
|
Reports the number of used and free hugepages on Linux.
|
|
|
|
config BR2_PACKAGE_COLLECTD_INTERFACE
|
|
bool "interface"
|
|
help
|
|
Collects information about the traffic of network interfaces.
|
|
|
|
config BR2_PACKAGE_COLLECTD_IPC
|
|
bool "ipc"
|
|
help
|
|
IPC counters: semaphores used, number of allocated segments
|
|
in shared memory and more.
|
|
|
|
config BR2_PACKAGE_COLLECTD_IPTABLES
|
|
bool "iptables"
|
|
select BR2_PACKAGE_IPTABLES
|
|
help
|
|
Gather statistics from iptables packet filter.
|
|
|
|
config BR2_PACKAGE_COLLECTD_IPVS
|
|
bool "ipvs"
|
|
help
|
|
Extracts statistics from IP Virtual Server (IPVS), the
|
|
transport-layer load-balancer of the LVS project.
|
|
It stores traffic and connections history for each of the
|
|
Real Servers (RS) behind a local Virtual Server (VS).
|
|
Collectd must be run on Directors (in LVS jargon).
|
|
|
|
config BR2_PACKAGE_COLLECTD_IRQ
|
|
bool "irq"
|
|
help
|
|
Collects the number of interrupts.
|
|
|
|
config BR2_PACKAGE_COLLECTD_LOAD
|
|
bool "load"
|
|
help
|
|
Collects the system load.
|
|
|
|
config BR2_PACKAGE_COLLECTD_MD
|
|
bool "md"
|
|
help
|
|
Collects software-RAID device information.
|
|
|
|
config BR2_PACKAGE_COLLECTD_MEMCACHEC
|
|
bool "memcachec"
|
|
depends on BR2_INSTALL_LIBSTDCPP
|
|
select BR2_PACKAGE_LIBMEMCACHED
|
|
help
|
|
Query and parse data from a memcache daemon.
|
|
|
|
comment "memcachec needs a toolchain w/ C++"
|
|
depends on !BR2_INSTALL_LIBSTDCPP
|
|
|
|
config BR2_PACKAGE_COLLECTD_MEMCACHED
|
|
bool "memcached"
|
|
help
|
|
Collects statistics from a memcached daemon.
|
|
|
|
config BR2_PACKAGE_COLLECTD_MEMORY
|
|
bool "memory"
|
|
help
|
|
Collects physical memory utilization.
|
|
|
|
config BR2_PACKAGE_COLLECTD_MODBUS
|
|
bool "modbus"
|
|
select BR2_PACKAGE_LIBMODBUS
|
|
help
|
|
Reads register values from a modbus "slave" via Modbus/TCP.
|
|
|
|
config BR2_PACKAGE_COLLECTD_MYSQL
|
|
bool "mysql"
|
|
depends on BR2_INSTALL_LIBSTDCPP # mysql
|
|
depends on BR2_USE_MMU # mysql
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS # mysql
|
|
select BR2_PACKAGE_MYSQL
|
|
help
|
|
Connects to a MySQL database and issues a "show status" command.
|
|
|
|
config BR2_PACKAGE_COLLECTD_NETLINK
|
|
bool "netlink"
|
|
select BR2_PACKAGE_LIBMNL
|
|
help
|
|
Get statistics for interfaces, qdiscs, classes, and filters.
|
|
|
|
config BR2_PACKAGE_COLLECTD_NFS
|
|
bool "nfs"
|
|
help
|
|
Collects information about the usage of the Network File System.
|
|
|
|
config BR2_PACKAGE_COLLECTD_NGINX
|
|
bool "nginx"
|
|
select BR2_PACKAGE_LIBCURL
|
|
help
|
|
Collects the number of requests handled by the nginx daemon
|
|
since startup and the number of current connections by state.
|
|
|
|
config BR2_PACKAGE_COLLECTD_NTPD
|
|
bool "ntpd"
|
|
help
|
|
Queries an NTP server and extracts parameters.
|
|
|
|
config BR2_PACKAGE_COLLECTD_OLSRD
|
|
bool "olsrd"
|
|
help
|
|
Reads information about meshed networks from olsrd.
|
|
|
|
config BR2_PACKAGE_COLLECTD_OPENLDAP
|
|
bool "openldap"
|
|
depends on BR2_USE_WCHAR
|
|
select BR2_PACKAGE_OPENLDAP
|
|
help
|
|
Read monitoring information from OpenLDAP's cn=Monitor subtree.
|
|
|
|
comment "openldap support needs a toolchain w/ wchar"
|
|
depends on !BR2_USE_WCHAR
|
|
|
|
config BR2_PACKAGE_COLLECTD_OPENVPN
|
|
bool "openvpn"
|
|
help
|
|
Reads the status file of OpenVPN to collect statistics.
|
|
|
|
config BR2_PACKAGE_COLLECTD_PING
|
|
bool "ping"
|
|
select BR2_PACKAGE_LIBOPING
|
|
help
|
|
Mesures network latency using ICMP "echo requests".
|
|
|
|
config BR2_PACKAGE_COLLECTD_POSTGRESQL
|
|
bool "postgresql"
|
|
select BR2_PACKAGE_POSTGRESQL
|
|
help
|
|
Connects to and executes SQL statements on a PostgreSQL
|
|
database. It then reads back the results and, depending on the
|
|
configuration, the returned values are then converted into
|
|
collectd “value lists”.
|
|
|
|
config BR2_PACKAGE_COLLECTD_PROCESSES
|
|
bool "processes"
|
|
help
|
|
Collects the number of processes gruped by state.
|
|
|
|
config BR2_PACKAGE_COLLECTD_PROTOCOLS
|
|
bool "protocols"
|
|
help
|
|
Collects information about the network protocols.
|
|
|
|
config BR2_PACKAGE_COLLECTD_SENSORS
|
|
bool "sensors"
|
|
select BR2_PACKAGE_LM_SENSORS
|
|
help
|
|
Collects data from lm-sensors.
|
|
|
|
config BR2_PACKAGE_COLLECTD_SERIAL
|
|
bool "serial"
|
|
help
|
|
Collects the traffic on serial interfaces.
|
|
|
|
config BR2_PACKAGE_COLLECTD_SMART
|
|
bool "SMART"
|
|
depends on BR2_PACKAGE_HAS_UDEV # libatasmart
|
|
select BR2_PACKAGE_LIBATASMART
|
|
help
|
|
Collect SMART statistics, notably load cycle count, temperature
|
|
and bad sectors.
|
|
|
|
comment "SMART requires udev to be enabled"
|
|
depends on !BR2_PACKAGE_HAS_UDEV
|
|
|
|
config BR2_PACKAGE_COLLECTD_STATSD
|
|
bool "StatsD"
|
|
help
|
|
StatsD network protocol to allow clients to report "events".
|
|
|
|
config BR2_PACKAGE_COLLECTD_SNMP
|
|
bool "snmp"
|
|
select BR2_PACKAGE_NETSNMP
|
|
help
|
|
Reads values from SNMP devices.
|
|
|
|
config BR2_PACKAGE_COLLECTD_SWAP
|
|
bool "swap"
|
|
help
|
|
Collects the amount of memory currently written to disk.
|
|
|
|
config BR2_PACKAGE_COLLECTD_TABLE
|
|
bool "table"
|
|
help
|
|
Parses table-like structured plain-text files.
|
|
|
|
config BR2_PACKAGE_COLLECTD_TAIL
|
|
bool "tail"
|
|
help
|
|
Tails log files and each line is given to one or more matches
|
|
which test if the line is relevant for any statistics.
|
|
|
|
config BR2_PACKAGE_COLLECTD_TAIL_CSV
|
|
bool "tail csv"
|
|
help
|
|
Follows (tails) files in CSV format, parses each line and submits
|
|
extracted values.
|
|
|
|
config BR2_PACKAGE_COLLECTD_TCPCONNS
|
|
bool "tcpconns"
|
|
help
|
|
Counts the number of TCP connections to/from a specified port.
|
|
|
|
config BR2_PACKAGE_COLLECTD_THERMAL
|
|
bool "thermal"
|
|
help
|
|
Reads ACPI thermal zone information.
|
|
|
|
config BR2_PACKAGE_COLLECTD_UPTIME
|
|
bool "uptime"
|
|
help
|
|
Keeps track of the system uptime.
|
|
|
|
config BR2_PACKAGE_COLLECTD_USERS
|
|
bool "users"
|
|
help
|
|
Counts the number of users currently logged in.
|
|
|
|
config BR2_PACKAGE_COLLECTD_VMEM
|
|
bool "vmem"
|
|
help
|
|
Collects information about the virtual memory subsystem.
|
|
|
|
config BR2_PACKAGE_COLLECTD_WIRELESS
|
|
bool "wireless"
|
|
help
|
|
Collects signal quality, power and noise ratio for WLAN cards.
|
|
|
|
config BR2_PACKAGE_COLLECTD_ZOOKEEPER
|
|
bool "zookeeper"
|
|
help
|
|
Read data from Zookeeper's MNTR command.
|
|
|
|
endmenu
|
|
|
|
menu "target plugins"
|
|
|
|
config BR2_PACKAGE_COLLECTD_NOTIFICATION
|
|
bool "notification"
|
|
help
|
|
Create and dispatch a notification.
|
|
|
|
config BR2_PACKAGE_COLLECTD_REPLACE
|
|
bool "replace"
|
|
help
|
|
Replace parts of an identifier using regular expressions.
|
|
|
|
config BR2_PACKAGE_COLLECTD_SCALE
|
|
bool "scale"
|
|
help
|
|
Scale (multiply) values by an arbitrary number.
|
|
|
|
config BR2_PACKAGE_COLLECTD_SET
|
|
bool "set"
|
|
help
|
|
Set (overwrite) entire parts of an identifier.
|
|
|
|
endmenu
|
|
|
|
menu "write plugins"
|
|
|
|
comment "Select at least one for collectd to be useful"
|
|
|
|
config BR2_PACKAGE_COLLECTD_CSV
|
|
bool "csv"
|
|
help
|
|
Writes values to a plain-text file in Comma Separated Values format.
|
|
|
|
config BR2_PACKAGE_COLLECTD_GRAPHITE
|
|
bool "graphite"
|
|
help
|
|
Writes data collected to Carbon (Graphite's) storage API.
|
|
http://graphite.wikidot.com/start
|
|
|
|
config BR2_PACKAGE_COLLECTD_MQTT
|
|
bool "mqtt"
|
|
select BR2_PACKAGE_MOSQUITTO
|
|
help
|
|
Sends metrics to and/or receives metrics from an MQTT broker.
|
|
|
|
config BR2_PACKAGE_COLLECTD_NETWORK
|
|
bool "network"
|
|
help
|
|
Send/receive values from other instances of collectd.
|
|
|
|
config BR2_PACKAGE_COLLECTD_RRDTOOL
|
|
bool "rrdtool"
|
|
depends on BR2_USE_WCHAR # rrdtool
|
|
select BR2_PACKAGE_RRDTOOL
|
|
help
|
|
Writes values to RRD-files.
|
|
|
|
comment "rrdtool support needs a toolchain w/ wchar"
|
|
depends on !BR2_USE_WCHAR
|
|
|
|
config BR2_PACKAGE_COLLECTD_RIEMANN
|
|
bool "riemann"
|
|
depends on BR2_INSTALL_LIBSTDCPP # protobuf
|
|
# protobuf-c -> host-protobuf
|
|
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
|
|
select BR2_PACKAGE_PROTOBUF_C
|
|
select BR2_PACKAGE_LIBTOOL
|
|
help
|
|
Sends data to Riemann, a stream processing and monitoring system.
|
|
|
|
config BR2_PACKAGE_COLLECTD_UNIXSOCK
|
|
bool "unixsock"
|
|
help
|
|
Opens a UNIX domain socket and accepts connections.
|
|
One can send commands to the daemon and receive information.
|
|
|
|
config BR2_PACKAGE_COLLECTD_WRITEHTTP
|
|
bool "write_http"
|
|
select BR2_PACKAGE_LIBCURL
|
|
help
|
|
Sends values collected to a web-server using HTTP POST and PUTVAL.
|
|
|
|
config BR2_PACKAGE_COLLECTD_WRITELOG
|
|
bool "write_log"
|
|
help
|
|
Writes data to the log.
|
|
|
|
config BR2_PACKAGE_COLLECTD_WRITEPROMETHEUS
|
|
bool "write_prometheus"
|
|
depends on BR2_INSTALL_LIBSTDCPP # protobuf-c
|
|
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" # protobuf-c
|
|
select BR2_PACKAGE_LIBMICROHTTPD
|
|
select BR2_PACKAGE_PROTOBUF_C
|
|
help
|
|
Publishes values using an embedded HTTP server, in a format
|
|
compatible with Prometheus' collectd_exporter.
|
|
|
|
comment "write_prometheus needs a toolchain w/ C++"
|
|
depends on !BR2_INSTALL_LIBSTDCPP
|
|
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
|
|
|
|
config BR2_PACKAGE_COLLECTD_WRITESENSU
|
|
bool "write_sensu"
|
|
help
|
|
Sends data to Sensu, a stream processing and monitoring system,
|
|
via the Sensu client local TCP socket.
|
|
|
|
config BR2_PACKAGE_COLLECTD_WRITETSDB
|
|
bool "write_tsdb"
|
|
help
|
|
Sends data OpenTSDB, a scalable no master, no shared state time
|
|
series database.
|
|
|
|
endmenu
|
|
|
|
endif
|
|
|
|
comment "collectd needs a toolchain w/ threads, dynamic library"
|
|
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
|
|
depends on BR2_USE_MMU
|