hindsight

pdk
Manage Hindsight log processing service

11,731 downloads

838 latest version

5.0 quality score

Version information

  • 1.0.0 (latest)
  • 0.6.0
  • 0.5.1
  • 0.5.0
  • 0.4.0
  • 0.3.0
  • 0.2.1
  • 0.2.0
  • 0.1.2
  • 0.1.1
  • 0.1.0
released Jun 22nd 2024
This version is compatible with:
  • Puppet Enterprise 2025.4.x, 2025.3.x, 2025.2.x, 2025.1.x, 2023.8.x, 2023.7.x, 2023.6.x, 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x
  • Puppet >= 6.21.0 < 9.0.0
  • Debian
    ,
    Ubuntu
    ,
    RedHat
    ,
    CentOS

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'deric-hindsight', '1.0.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add deric-hindsight
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install deric-hindsight --version 1.0.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

deric/hindsight — version 1.0.0 Jun 22nd 2024

puppet-hindsight

Puppet
Forge Puppet Forge
Downloads Test

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.

Usage

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

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

plugin configuration:

  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:

hindsight::plugin {'debug':
  filename => 'heka_debug.lua',
  target   => 'output/debug',
  config   => {
    message_matcher => 'TRUE',
  }
}

in order to disable plugin use ensure => absent:

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

New since version 0.3.0

  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:

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