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_LVM bool "lvm" depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2 app library select BR2_PACKAGE_LVM2 select BR2_PACKAGE_LVM2_APP_LIBRARY help Collects the size of logical volumes (LV) and free space inside a volume group (VG) from Linux' Logical Volume Manager (LVM). comment "lvm needs a glibc or uClibc toolchain" depends on BR2_TOOLCHAIN_USES_MUSL 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_ONEWIRE bool "onewire" select BR2_PACKAGE_OWFS help Collects temperature information from sensors connected over the OneWire bus. 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" depends on BR2_USE_WCHAR # 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'. comment "postgresql support needs a toolchain w/ wchar" depends on !BR2_USE_WCHAR 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_REDIS bool "redis" select BR2_PACKAGE_HIREDIS help Connects to one or more instances of Redis. 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_AMQP bool "amqp" select BR2_PACKAGE_RABBITMQ_C help Send/receive values via the Advanced Message Queuing Protocol (AMQP). 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_GRPC bool "grpc" depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_ATOMIC # grpc depends on BR2_INSTALL_LIBSTDCPP # grpc -> protobuf depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS # grpc -> protobuf depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # grpc -> protobuf select BR2_PACKAGE_GRPC help Send/receive values using the gRPC protocol. comment "grpc needs a toolchain w/ C++, gcc >= 4.8" depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS config BR2_PACKAGE_COLLECTD_MQTT bool "mqtt" depends on BR2_TOOLCHAIN_HAS_SYNC_4 # mosquitto 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" # riemann-c-client -> protobuf-c depends on BR2_INSTALL_LIBSTDCPP depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" select BR2_PACKAGE_RIEMANN_C_CLIENT 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_WRITEREDIS bool "write_redis" select BR2_PACKAGE_HIREDIS help Sends data to Redis. 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