Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

RSS

hekad (23) Versions 5.0.0

Installs/Configures heka

Berkshelf/Librarian
Policyfile
Knife
cookbook 'hekad', '~> 5.0.0'
cookbook 'hekad', '~> 5.0.0', :supermarket
knife cookbook site install hekad
knife cookbook site download hekad
README
Dependencies
Changelog
Quality

hekad cookbook Build Status

A Chef cookbook for installing & configuring Mozilla Heka.

Recipes

hekad::default

Includes the install, configure, and service recipes.

hekad::install

Downloads the configured release, and installs it.

hekad::configure

Creates the configuration template directory, and installs the heka_config[hekad] resource, with hekas global configuration.

See attributes documentation about how to set global configuration.

hekad::service

Installs and configures a heka user, group, and service.

Attributes

Attributes are namespaced under default['heka'].

Attribute Description Default Value
config_dir base path for configs /etc/heka/conf.d
config default global configuration maxprocs: 2
package_url url for release pkg varies by platform

Resources

heka_config

Base Heka configuration resource, maps to a file under /etc/heka.d/, allows a free-form configuration hash under the config property.

Attribute Description Default Value
path config base for rendered file node['heka']['config_dir']
config configuration hash {}

Example

A resource like:

heka_config "elasticsearch_output" do
  config(
    type: "ElasticSearchOutput",
    message_matcher: "TRUE",
    can_exit: false,
    encoder: "elasticsearch_json_encoder",
    use_buffering: false,
    buffering: {
      max_file_size: 10_485_760, # 10MiB
      max_buffer_size: 104_857_600, # 100MiB
      full_action: "block"
    },
    server: "http://1.2.3.4:9201"
  )
end

will render a config like:

[elasticsearch_output]
can_exit = false
encoder = "elasticsearch_json_encoder"
message_matcher = "TRUE"
server = "http://1.2.3.4:9201"
type = "ElasticSearchOutput"
use_buffering = false
[elasticsearch_output.buffering]
full_action = "block"
max_buffer_size = 104857600
max_file_size = 10485760

heka_global

Resource for global configuration section (i.e. the [hekad] block).

Attribute Description Default
path config base for rendered file node['heka']['config_dir']
config configuration hash {}
cpuprof String. see docs nil
max_message_loops Integer. see docs nil
max_process_inject Integer. see docs nil
max_process_duration Integer. see docs nil
max_timer_inject Integer. see docs nil
max_pack_idle String. see docs nil
maxprocs Integer. see docs nil
memprof String. see docs nil
poolsize Integer. see docs nil
plugin_chansize Integer. see docs nil
base_dir String. see docs nil
share_dir String. see docs nil
sample_denominator Integer. see docs nil
pid_file String. see docs nil
hostname String. see docs nil
max_message_size Integer. see docs nil
log_flags Integer. see docs nil
full_buffer_max_retries Integer. see docs nil

Example

A resource like:

heka_global 'hekad' do
  maxprocs 2
  base_dir '/var/cache/hekad'
  full_buffer_max_retries 5
end

will render a config like:

[hekad]
base_dir = "/var/cache/hekad"
full_buffer_max_retries = 5
maxprocs = 2

heka_input

Resource for configuring input plugins

Attribute Description Default
path config base for rendered file node['heka']['config_dir']
config configuration hash {}
decoder String. See docs. nil
synchronous_decode [TrueClass, FalseClass]. See docs. nil
send_decode_failures [TrueClass, FalseClass]. See docs. nil
can_exit [TrueClass, FalseClass]. See docs. nil
splitter String. See docs. nil
log_decode_failures [TrueClass, FalseClass]. See docs. nil
script_type String. See docs. nil
filename String. See docs. nil
preserve_data [TrueClass, FalseClass]. See docs. nil
memory_limit Integer. See docs. nil
instruction_limit Integer. See docs. nil
output_limit Integer. See docs. nil
module_directory String. See docs. nil
sandbox_config Hash. See docs. nil
server_name String. See docs. nil
cert_file String. See docs. nil
key_file String. See docs. nil
client_auth String. See docs. nil
ciphers Array. See docs. nil
insecure_skip_verify [TrueClass, FalseClass]. See docs. nil
prefer_server_ciphers [TrueClass, FalseClass]. See docs. nil
session_tickets_disabled [TrueClass, FalseClass]. See docs. nil
session_ticket_key String. See docs. nil
min_version String. See docs. nil
max_version String. See docs. nil
client_cafile String. See docs. nil
root_cafile String. See docs. nil
max_jitter String. See docs. nil
max_delay String. See docs. nil
delay String. See docs. nil
max_retries Integer. See docs. nil

Example

A resource like:

heka_input 'load_avg_input' do
  type 'FilePollingInput'
  decoder 'load_avg_decoder'
  config file_path: '/proc/loadavg', ticker_interval: 1
end

will render a config like:

[load_avg_input]
decoder = "load_avg_decoder"
file_path = "/proc/loadavg"
ticker_interval = 1
type = "FilePollingInput"

heka_splitter

Resource for configuring splitter plugins.

Attribute Description Default
path config base for rendered file node['heka']['config_dir']
config configuration hash {}
keep_truncated [TrueClass, FalseClass]. See docs. nil
use_message_bytes [TrueClass, FalseClass]. See docs. nil
min_buffer_size Integer. See docs. nil
deliver_incomplete_final [TrueClass, FalseClass]. See docs. nil
max_jitter String. See docs. nil
max_delay String. See docs. nil
delay String. See docs. nil
max_retries Integer. See docs. nil

Example

A resource like:

heka_splitter 'split_on_space' do
  type 'TokenSplitter'
  deliver_incomplete_final false
  config delimiter: ' '
end

will render a config like:

[split_on_space]
delimiter = " "
deliver_incomplete_final = false
type = "TokenSplitter"

heka_decoder

Attribute Description Default
path config base for rendered file node['heka']['config_dir']
config configuration hash {}
script_type String. See docs. nil
filename String. See docs. nil
preserve_data [TrueClass, FalseClass]. See docs. nil
memory_limit Integer. See docs. nil
instruction_limit Integer. See docs. nil
output_limit Integer. See docs. nil
module_directory String. See docs. nil
sandbox_config Hash. See docs. nil
max_jitter String. See docs. nil
max_delay String. See docs. nil
delay String. See docs. nil
max_retries Integer. See docs. nil

Example

A resource like:

heka_decoder 'load_avg_decoder' do
  type 'SandboxDecoder'
  filename 'lua_decoders/linux_loadavg.lua'
  sandbox_config payload_keep: false
end

will render a config like:

[load_avg_decoder]
filename = "lua_decoders/linux_loadavg.lua"
type = "SandboxDecoder"
[load_avg_decoder.config]
payload_keep = false

heka_filter

Attribute Description Default
path config base for rendered file node['heka']['config_dir']
config configuration hash {}
message_matcher String. See docs. nil
message_signer String. See docs. nil
ticker_interval Integer. See docs. nil
can_exit [TrueClass, FalseClass]. See docs. nil
use_buffering [TrueClass, FalseClass]. See docs. nil
max_file_size Integer. See docs. nil
max_buffer_size Integer. See docs. nil
full_action String. See docs. nil
cursor_update_count Integer. See docs. nil
script_type String. See docs. nil
filename String. See docs. nil
preserve_data [TrueClass, FalseClass]. See docs. nil
memory_limit Integer. See docs. nil
instruction_limit Integer. See docs. nil
output_limit Integer. See docs. nil
module_directory String. See docs. nil
sandbox_config Hash. See docs. nil
max_jitter String. See docs. nil
max_delay String. See docs. nil
delay String. See docs. nil
max_retries Integer. See docs. nil

Example

A resource like:

heka_filter 'load_avg_filter' do
  type 'SandboxFilter'
  filename 'lua_filters/loadavg.lua'
  ticker_interval 5
  preserve_data true
  message_matcher "Type == 'stats.loadavg'"
  sandbox_config preservation_version: 1
  use_buffering true
  buffering_config do
    max_file_size 1024 ** 2
    max_buffer_size 1024 ** 3
    full_action 'block'
  end
end

will render a config like:

[load_avg_filter]
filename = "lua_filters/loadavg.lua"
message_matcher = "Type == 'stats.loadavg'"
preserve_data = true
ticker_interval = 5
type = "SandboxFilter"
use_buffering = true
[load_avg_filter.buffering]
full_action = "block"
max_buffer_size = 1073741824
max_file_size = 1048576
[load_avg_filter.config]
preservation_version = 1

heka_encoder

Attribute Description Default
path config base for rendered file node['heka']['config_dir']
config configuration hash {}
script_type String. See docs. nil
filename String. See docs. nil
preserve_data [TrueClass, FalseClass]. See docs. nil
memory_limit Integer. See docs. nil
instruction_limit Integer. See docs. nil
output_limit Integer. See docs. nil
module_directory String. See docs. nil
sandbox_config Hash. See docs. nil
max_jitter String. See docs. nil
max_delay String. See docs. nil
delay String. See docs. nil
max_retries Integer. See docs. nil

Example

A resource like:

heka_encoder 'RstEncoder'

will render a config like:

[RstEncoder]

heka_output

Attribute Description Default
path config base for rendered file node['heka']['config_dir']
config configuration hash {}
message_matcher String. See docs. nil
message_signer String. See docs. nil
encoder String. See docs. nil
use_framing [TrueClass, FalseClass]. See docs. nil
can_exit [TrueClass, FalseClass]. See docs. nil
use_buffering [TrueClass, FalseClass]. See docs. nil
script_type String. See docs. nil
filename String. See docs. nil
preserve_data [TrueClass, FalseClass]. See docs. nil
memory_limit Integer. See docs. nil
instruction_limit Integer. See docs. nil
output_limit Integer. See docs. nil
module_directory String. See docs. nil
sandbox_config Hash. See docs. nil
max_file_size Integer. See docs. nil
max_buffer_size Integer. See docs. nil
full_action String. See docs. nil
cursor_update_count Integer. See docs. nil
server_name String. See docs. nil
cert_file String. See docs. nil
key_file String. See docs. nil
client_auth String. See docs. nil
ciphers Array. See docs. nil
insecure_skip_verify [TrueClass, FalseClass]. See docs. nil
prefer_server_ciphers [TrueClass, FalseClass]. See docs. nil
session_tickets_disabled [TrueClass, FalseClass]. See docs. nil
session_ticket_key String. See docs. nil
min_version String. See docs. nil
max_version String. See docs. nil
client_cafile String. See docs. nil
root_cafile String. See docs. nil
max_jitter String. See docs. nil
max_delay String. See docs. nil
delay String. See docs. nil
max_retries Integer. See docs. nil

Example

A resource like:

heka_output 'debug_output' do
  type 'FileOutput'
  message_matcher 'TRUE'
  encoder 'RstEncoder'
  config path: '/tmp/heka-debug.log'
  use_buffering  true
  buffering_config do
    max_file_size 1024 ** 2
    max_buffer_size 1024 ** 3
    full_action 'block'
  end
end

will render a config like:

[debug_output]
encoder = "RstEncoder"
message_matcher = "TRUE"
path = "/tmp/heka-debug.log"
type = "FileOutput"
use_buffering = true
[debug_output.buffering]
full_action = "block"
max_buffer_size = 1073741824
max_file_size = 1048576

--

Dependent cookbooks

homebrew >= 0.0.0
systemd >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

5.0.0 / 2017-03-08

  • switch toml gems

4.1.0 / 2016-02-25

  • full osx support (yay!)
  • use mixed KillMode under systemd

4.0.2 / 2016-02-02

  • fix delete action

4.0.1 / 2016-01-21

  • recommended to skip 3.0.1, and go straight to 4.0.1, simplifies upgrade process
  • add reload recipe with conditional reload event-handler

3.0.1 / 2016-01-20

  • big updates: update to heka 0.10.0, change conf root, templatize some things... use caution upgrading.

2.0.3 / 2015-10-06

  • rebase resources on lwrp base
  • simplify service helpers
  • update test matrix

2.0.2 / 2015-08-19

  • fix cops
  • notify service to restart on unit change
  • add mac_os_x support

2.0.1 / 2015-08-19

  • fix systemd service definition

2.0.0 / 2015-08-19

  • change version selection attributes (breaking change!)
  • use systemd cookbook to manage systemd service definition
  • clean up service provider selection rules

1.0.0 / 2015-07-24

  • enforce plugin name uniqueness by using chef resource name. note that this will break pre-existing configurations by requiring (partial) flattening of the config hash

0.3.3 / 2015-07-09

  • now with TOML 0.4.0 compatibility (thanks @funzoneq!)

0.3.2 / 2015-07-06

  • update service provider selection

0.3.1 / 2015-07-05

  • update sysv init file (thanks @jsh2134!)

0.3.0 / 2015-05-02

  • manage system user/group, run hekad service non-privileged (thanks @jsh2134!)
  • pull in sysv script (thanks @jsh2134!) for Ubuntu 1{2,4}.04
  • rework service mgmt

0.2.3 / 2015-04-23

  • update to latest heka bugfix release

0.2.2 / 2015-04-16

  • fix chef 11 service provider mis-identification

0.2.1 / 2015-03-30

  • add recipe to help with capturing journald logs via syslog

0.2.0/ 2015-03-15

  • simplify resource/provider by using toml to encode config

0.1.3 / 2015-02-26

  • testing improvements
  • add support for fedora
  • update to latest release

0.1.2 / 2015-02-14

  • updated docs
  • use value_for_platform for package attribute

0.1.1 / 2015-02-14

  • add heka_config resource

0.1.0 / 2015-02-14

  • initial release

Collaborator Number Metric
            

5.0.0 failed this metric

Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Contributing File Metric
            

5.0.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file

Foodcritic Metric
            

5.0.0 failed this metric

FC066: Ensure chef_version is set in metadata: hekad/metadata.rb:1
FC069: Ensure standardized license defined in metadata: hekad/metadata.rb:1
Run with Foodcritic Version 11.1.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any

License Metric
            

5.0.0 failed this metric

hekad does not have a valid open source license.
Acceptable licenses include Apache-2.0, apachev2, Apache 2.0, MIT, mit, GPL-2.0, gplv2, GNU Public License 2.0, GPL-3.0, gplv3, GNU Public License 3.0.

No Binaries Metric
            

5.0.0 passed this metric

Publish Metric
            

5.0.0 passed this metric

Supported Platforms Metric
            

5.0.0 passed this metric

Testing File Metric
            

5.0.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file

Version Tag Metric
            

5.0.0 passed this metric