Hindsight is a C based data processing infrastructure based on the lua sandbox project. I have received several inquiries about a lighter weight and faster data pipeline with delivery guarantees to replace Heka. Hindsight is that light weight skeleton around the same lua sandbox offering 'at least once' delivery semantics. The skeleton is supplemented by extension packages including hundreds of data structures, algorithms, plugins, parsers and grammars. The extensions repository is where most of the active development is happening now as the core infrastructure (Hindsight and the Lua Sandbox) is stable and changes infrequently. There is also a Hindsight Administration UI available for monitoring, debugging and plugin management (you can check out a running instance here: hsadmin)
git clone https://github.com/mozilla-services/hindsight.git
cd hindsight
mkdir release
cd release
# Linux
cmake -DCMAKE_BUILD_TYPE=release ..
make
ctest
cpack -G TGZ # (DEB|RPM|ZIP)
# Cross platform support is planned but not supported yet
By default hindsight is linked against OpenSSL and configured to set locking callbacks in the
library to ensure proper threaded operation. If this functionality is not desired the cmake
build option -DWITHOUT_OPENSSL=true
can be used to disable this, for example if you are not
using any sandboxes/modules that make use of OpenSSL and do not want the dependency.
Docker images are constructed from the main and dev branches and can be pulled, or built using the Dockerfile.
Note that the Docker image built here is only a bare bones image containing just lua_sandbox and hindsight. For a more full featured image that also contains all of the extensions, see the Docker image for the extensions repo.