X-Git-Url: https://git.octo.it/?p=collectd.git;a=blobdiff_plain;f=README;h=803fbaaf1d44b5bcad189a3f21a7dc7d3d0f2f14;hp=a1668fabf5e89f4cc4171ad5d1a5cd5120ff205b;hb=4fdd7193481b638a059d6fa047542312e41ea45e;hpb=f533bcdb2ea36aafaf46835616a476e37dc6f6cf diff --git a/README b/README index a1668fab..803fbaaf 100644 --- a/README +++ b/README @@ -96,7 +96,7 @@ Features DNS traffic: Query types, response codes, opcodes and traffic/octets transferred. - - dpdk + - dpdkstat Collect DPDK interface statistics. See docs/BUILD.dpdkstat.md for detailed build instructions. @@ -132,9 +132,6 @@ Features - gps Monitor gps related data through gpsd. - - grpc - Send and receive values over the network using the gRPC framework. - - hddtemp Hard disk temperatures using hddtempd. @@ -143,6 +140,15 @@ Features hugepages can be found here: https://www.kernel.org/doc/Documentation/vm/hugetlbpage.txt. + - intel_rdt + The intel_rdt plugin collects information provided by monitoring features + of Intel Resource Director Technology (Intel(R) RDT) like Cache Monitoring + Technology (CMT), Memory Bandwidth Monitoring (MBM). These features + provide information about utilization of shared resources like last level + cache occupancy, local memory bandwidth usage, remote memory bandwidth + usage, instructions per clock. + + - interface Interface traffic: Number of octets, packets and errors for each interface. @@ -168,7 +174,8 @@ Features - java Integrates a `Java Virtual Machine' (JVM) to execute plugins in Java - bytecode. See “Configuring with libjvm” below. + bytecode. + See docs/BUILD.java.md for detailed build instructions. - load System load average over the last 1, 5 and 15 minutes. @@ -191,14 +198,14 @@ Features Queries very detailed usage statistics from wireless LAN adapters and interfaces that use the Atheros chipset and the MadWifi driver. - - mbmon - Motherboard sensors: temperature, fan speed and voltage information, - using mbmon(1). - - md Linux software-RAID device information (number of active, failed, spare and missing disks). + - mbmon + Motherboard sensors: temperature, fan speed and voltage information, + using mbmon(1). + - memcachec Query and parse data from a memcache daemon (memcached). @@ -218,9 +225,6 @@ Features Reads values from Modbus/TCP enabled devices. Supports reading values from multiple "slaves" so gateway devices can be used. - - mqtt - Publishes and subscribes to MQTT topics. - - multimeter Information provided by serial multimeters, such as the `Metex M-4650CR'. @@ -399,7 +403,7 @@ Features CPU, memory, disk and network I/O statistics from virtual machines. - vmem - Virtual memory statistics, e. g. the number of page-ins/-outs or the + Virtual memory statistics, e.g. the number of page-ins/-outs or the number of pagefaults. - vserver @@ -437,10 +441,16 @@ Features diskspace but is extremely portable and can be analysed with almost every program that can analyse anything. Even Microsoft's Excel.. + - grpc + Send and receive values over the network using the gRPC framework. + - lua It's possible to implement write plugins in Lua using the Lua plugin. See collectd-lua(5) for details. + - mqtt + Publishes and subscribes to MQTT topics. + - network Send the data to a remote host to save the data somehow. This is useful for large setups where the data should be saved by a dedicated machine. @@ -490,6 +500,10 @@ Features - write_mongodb Sends data to MongoDB, a NoSQL database. + - write_prometheus + Publish values using an embedded HTTP server, in a format compatible + with Prometheus' collectd_exporter. + - write_redis Sends the values to a Redis key-value database server. @@ -660,12 +674,22 @@ Prerequisites * Usual suspects: C compiler, linker, preprocessor, make, ... + collectd makes use of some common C99 features, e.g. compound literals and + mixed declarations, and therefore requires a C99 compatible compiler. + + On Debian and Ubuntu, the "build-essential" package should pull in + everything that's necessary. + * A POSIX-threads (pthread) implementation. Since gathering some statistics is slow (network connections, slow devices, etc) collectd is parallelized. The POSIX threads interface is being used and should be found in various implementations for hopefully all platforms. + * When building from the Git repository, flex (tokenizer) and bison (parser + generator) are required. Release tarballs include the generated files – you + don't need these packages in that case. + * aerotools-ng (optional) Used by the `aquaero' plugin. Currently, the `libaquaero5' library, which is used by the `aerotools-ng' toolkit, is not compiled as a shared object @@ -740,8 +764,8 @@ Prerequisites * libjvm (optional) Library that encapsulates the `Java Virtual Machine' (JVM). This library is - used by the `java' plugin to execute Java bytecode. See “Configuring with - libjvm” below. + used by the `java' plugin to execute Java bytecode. + See docs/BUILD.java.md for detailed build instructions. (and others) * libldap (optional) @@ -760,6 +784,10 @@ Prerequisites Used by the `memcachec' plugin to connect to a memcache daemon. + * libmicrohttpd (optional) + Used by the write_prometheus plugin to run an http daemon. + + * libmnl (optional) Used by the `netlink' plugin. @@ -815,6 +843,11 @@ Prerequisites The PostgreSQL C client library used by the `postgresql' plugin. + * libpqos (optional) + The PQoS library for Intel(R) Resource Director Technology used by the + `intel_rdt' plugin. + + * libprotobuf, protoc 3.0+ (optional) Used by the `grpc' plugin to generate service stubs and code to handle network packets of collectd's protobuf-based network protocol. @@ -935,44 +968,6 @@ Configuring / Compiling / Installing prefixed to all installation directories. This might be useful when creating packages for collectd. -Configuring with libjvm ------------------------ - - To determine the location of the required files of a Java installation is not - an easy task, because the locations vary with your kernel (Linux, SunOS, …) - and with your architecture (x86, SPARC, …) and there is no ‘java-config’ - script we could use. Configuration of the JVM library is therefore a bit - tricky. - - The easiest way to use the `--with-java=$JAVA_HOME' option, where - `$JAVA_HOME' is usually something like: - /usr/lib/jvm/java-1.5.0-sun-1.5.0.14 - - The configure script will then use find(1) to look for the following files: - - - jni.h - - jni_md.h - - libjvm.so - - If found, appropriate CPP-flags and LD-flags are set and the following - library checks succeed. - - If this doesn't work for you, you have the possibility to specify CPP-flags, - C-flags, LD-flags and LIBS for the ‘Java’ plugin by hand, using the - following environment variables: - - - JAVA_CPPFLAGS - - JAVA_CFLAGS - - JAVA_LDFLAGS - - JAVA_LIBS - - For example (shortened for demonstration purposes): - - ./configure JAVA_CPPFLAGS="-I$JAVA_HOME/include -I$JAVA_HOME/include/linux" - - Adding "-ljvm" to JAVA_LIBS is done automatically, you don't have to - do that. - Generating the configure script ------------------------------- @@ -991,6 +986,7 @@ To generate the `configure` script, you'll need the following dependencies: The `build.sh' script takes no arguments. + Crosscompiling -------------- @@ -1021,11 +1017,16 @@ Crosscompiling * `endianflip' (12345678 -> 87654321) * `intswap' (12345678 -> 56781234) + Contact ------- - For questions, bug reports, development information and basically all other - concerns please send an email to collectd's mailing list at + Please use GitHub to report bugs and submit pull requests: + . + See CONTRIBUTING.md for details. + + For questions, development information and basically all other concerns please + send an email to collectd's mailing list at . For live discussion and more personal contact visit us in IRC, we're in @@ -1039,5 +1040,3 @@ Author Sebastian tokkee Harl , and many contributors (see `AUTHORS'). - Please use GitHub reporting bugs and submitting pull requests. - See CONTRIBUTING.md for details.