AnyCollect
1.1.2
|
This project aims to collect metrics by reading files or executing commands, and parsing their contents/outputs with regular expressions. It is designed to work with Snap Telemetry.
This repo is organized as the following:
The Snap plugins require a special version of the C++ Snap plugin library.
Refer to USAGE.md for more information on how to use these programs.
AnyCollect's documentation is available on GitHub pages.
All OSs currently supported by plugin:
A C++ 17 compiler such as GCC 7 is required.
The libraries and standalone interfaces do not have additional dependencies. The Snap plugin interface requires the C++ Snap plugin library and its dependencies, which should be installed on the system first. AnyCollect uses static linking of those libraries for the programs to be portable.
Refer to the DEPENDENCIES.md file for more information.
If the Snap and its dependencies are built in the /usr/local/lib
, execute ldconfig /usr/local/lib/
to allow the ld
linker to look for installed libraries there.
Then you can compile with CMake:
Other build configured types are Debug
, Release
, and RelWithDebInfo
(to profile with Linux Perf or GPerfTools).
The buildall.sh
script can be used to build AnyCollect Snap Plugin library and its dependencies automatically. It can either download the dependencies from GitHub or use local ones in the third_party
folder.
Refer to USAGE.md. Please be careful about the metric instantiation rules detailed in this usage file.
The documentation can be built with Doxygen from the build
directory. It is installed in doc/html
.
This repository is one of many plugins in Snap, a powerful telemetry framework. The full project is at http://github.com/intelsdi-x/snap. To reach out on other use cases, visit Slack.
Snap, along with this plugin, is an Open Source software released under the Apache 2.0 [License](LICENSE).