X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=README;h=bb72ac2c4de609b2051883283ccc52b7e4084dc8;hb=96dcfa56e3e5bddb15531eb72279da1f4c551ac5;hp=49cf56ebb6ebb51fd538c661eea6d0d08c7cae30;hpb=c041bc5ebbba910c8a18e728b24f57ae08b7b434;p=collectd.git diff --git a/README b/README index 49cf56eb..bb72ac2c 100644 --- a/README +++ b/README @@ -67,6 +67,9 @@ Features - cpufreq CPU frequency (For laptops with speed step or a similar technology) + - cpusleep + CPU sleep: Time spent in suspend (For mobile devices which enter suspend automatically) + - curl Parse statistics from websites using regular expressions. @@ -125,12 +128,20 @@ Features - gmond Receive multicast traffic from Ganglia instances. + - gps + Monitor gps related data through gpsd. + - grpc - Receive values over the network using the gRPC framework. + Send and receive values over the network using the gRPC framework. - hddtemp Hard disk temperatures using hddtempd. + - hugepages + Report the number of used and free hugepages. More info on + hugepages can be found here: + https://www.kernel.org/doc/Documentation/vm/hugetlbpage.txt. + - interface Interface traffic: Number of octets, packets and errors for each interface. @@ -165,6 +176,12 @@ Features Detailed CPU statistics of the “Logical Partitions” virtualization technique built into IBM's POWER processors. + - lua + The Lua plugin implements a Lua interpreter into collectd. This + makes it possible to write plugins in Lua which are executed by + collectd without the need to start a heavy interpreter every interval. + See collectd-lua(5) for details. + - lvm Size of “Logical Volumes” (LV) and “Volume Groups” (VG) of Linux' “Logical Volume Manager” (LVM). @@ -419,6 +436,10 @@ Features diskspace but is extremely portable and can be analysed with almost every program that can analyse anything. Even Microsoft's Excel.. + - lua + It's possible to implement write plugins in Lua using the Lua + plugin. See collectd-lua(5) for details. + - 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. @@ -700,6 +721,10 @@ Prerequisites Used by the `network' plugin for encryption and authentication. + * libgps (optional) + Used by the `gps' plugin. + + * libhal (optional) If present, the `uuid' plugin will check for UUID from HAL. @@ -722,6 +747,10 @@ Prerequisites Used by the `openldap' plugin. + * liblua (optional) + Used by the `lua' plugin. Currently, Lua 5.1 and later are supported. + + * liblvm2 (optional) Used by the `lvm' plugin. @@ -796,7 +825,7 @@ Prerequisites * libpython (optional) - Used by the `python' plugin. Currently, Python 2.3 and later and Python 3 + Used by the `python' plugin. Currently, Python 2.6 and later and Python 3 are supported. @@ -994,6 +1023,20 @@ Crosscompiling Configuring with DPDK --------------------- +Note: DPDK 16.04 is the minimum version and currently supported version of DPDK +required for the dpdkstat plugin. This is to allow the plugin to take advantage +of functions added to detect if the DPDK primary process is alive. + +Note: For Ubuntu, GCC 4.9 is the minimum version required to build collectd +with DPDK. Ubuntu 14.04, for example, has GCC 4.8 by default and will require +an upgrade: + $ sudo add-apt-repository ppa:ubuntu-toolchain-r/test + $ sudo apt-get update + $ sudo apt-get install gcc-4.9 +Alternatively, if you know that the platform that you wish to run collectd +on supports the SSSE3 instruction set, you can run make as follows: + $ make -j CFLAGS+='-mssse3' + Build DPDK for use with collectd: To compile DPDK for use with collectd dpdkstat start by: - Clone DPDK: @@ -1057,14 +1100,43 @@ Build DPDK for use with collectd: booted at system startup time. - Run ldconfig to update the shared library cache. + Build static DPDK library for use with collectd: + - To configure DPDK to build the combined static library libdpdk.a + ensure that CONFIG_RTE_BUILD_SHARED_LIB is set to n in + config/common_base in your DPDK as follows: + # + # Compile to share library + # + CONFIG_RTE_BUILD_SHARED_LIB=n + - Prepare the configuration for the appropriate target as specified at: + http://dpdk.org/doc/guides/linux_gsg/build_dpdk.html. + For example: + $ make config T=x86_64-native-linuxapp-gcc + - Build the target using -fPIC: + $ make EXTRA_CFLAGS=-fPIC -j + - Install DPDK to /usr + $ sudo make install prefix=/usr + Configure collectd with DPDK: +NOTE: The Address-Space Layout Randomization (ASLR) security feature in Linux should + be disabled, in order for the same hugepage memory mappings to be present in all + DPDK multi-process applications. Note that this has security implications. + To disable ASLR: + $ echo 0 > /proc/sys/kernel/randomize_va_space + To fully enable ASLR: + $ echo 2 > /proc/sys/kernel/randomize_va_space + See http://dpdk.org/doc/guides/prog_guide/multi_proc_support.html + - Generate the build script as specified below. (i.e. run `build.sh'). - - Configure collectd with the DPDK library: + - Configure collectd with the DPDK shared library: ./configure --with-libdpdk=/usr + NOTE: To configure collectd with the DPDK static library: + ./configure --with-libdpdk=/usr CFLAGS=" -lpthread -Wl,--whole-archive + -Wl,-ldpdk -Wl,-lm -Wl,-lrt -Wl,-lpcap -Wl,-ldl -Wl,--no-whole-archive" Libraries: ... - dpdk . . . . . . . . yes + libdpdk . . . . . . . . yes Modules: ... @@ -1075,8 +1147,9 @@ Configure collectd with DPDK: - Build collectd: $ make -j && make -j install. - NOTE: If you are building on Ubuntu 14.04 you need to use: - $ make -j CFLAGS+='-mavx' && make -j install + NOTE: As mentioned above, if you are building on Ubuntu 14.04 with GCC <= 4.8.X, + you need to use: + $ make -j CFLAGS+='-mssse3' && make -j install Usage of dpdkstat: - The same PCI device configuration should be passed to the primary process @@ -1101,6 +1174,5 @@ Author Sebastian tokkee Harl , and many contributors (see `AUTHORS'). - Please send bug reports and patches to the mailing list, see `Contact' - above. - + Please use GitHub reporting bugs and submitting pull requests. + See CONTRIBUTING.md for details.