An open API service indexing awesome lists of open source software.

https://github.com/deric/puppet-hindsight

Manages Hindsight log processing engine
https://github.com/deric/puppet-hindsight

hindsight log-analysis logging

Last synced: 9 months ago
JSON representation

Manages Hindsight log processing engine

Awesome Lists containing this project

README

          

# puppet-hindsight

[![Puppet
Forge](http://img.shields.io/puppetforge/v/deric/hindsight.svg)](https://forge.puppetlabs.com/deric/hindsight) [![Puppet Forge
Downloads](http://img.shields.io/puppetforge/dt/deric/hindsight.svg)](https://forge.puppetlabs.com/deric/hindsight/scores) [![Test](https://github.com/deric/puppet-hindsight/actions/workflows/test.yml/badge.svg)](https://github.com/deric/puppet-hindsight/actions/workflows/test.yml)

Module for managing Mozilla's Hindsight configuration and service.

## Related projects

Hindsight is a log forwarding engine (successor of Mozilla's Heka) implemented in low-level C with Lua scripting support.

* [hindsight](https://github.com/mozilla-services/hindsight)
* [lua_sandbox](https://github.com/mozilla-services/lua_sandbox)
* [lua_sandbox_extensions](https://github.com/mozilla-services/lua_sandbox_extensions)

## Usage

All module names are expected to be available via package manager.

```puppet
class{'::hindsight':
modules => [ 'luasandbox','luasandbox-elasticsearch',
'luasandbox-kafka','luasandbox-lpeg','luasandbox-systemd']
}
```
plugin configuration:

```puppet
hindsight::plugin {'tcp':
filename => 'tcp.lua',
target => 'input/tcp',
config => {
instruction_limit => 0,
address => "0.0.0.0",
port => 5858,
keep_payload => false,
send_decode_failures => true,
}
}
```
`target` is file location in `run_dir` without extension (`.cfg`).

The simplest plugin is probably `debug`:

```puppet
hindsight::plugin {'debug':
filename => 'heka_debug.lua',
target => 'output/debug',
config => {
message_matcher => 'TRUE',
}
}
```
in order to disable plugin use `ensure => absent`:

```puppet
hindsight::plugin {'debug':
ensure => absent,
filename => 'heka_debug.lua',
target => 'output/debug',
}
```

New since version `0.3.0`

```puppet
hindsight::plugin {'debug':
filename => '',
target => output/debug',
content => template('path/to/template.erb');
}
# or
hindsight::plugin {'debug':
filename => '',
target => output/debug',
source => 'puppet:///fubarmodule/debug.cfg';
}
```

## Service pre-start commands

Before starting Hindsight service custom commands can be provided:

```puppet
class{'::hindsight':
service_prestart => [ '/bin/echo foo', '/bin/echo bar']
}
```