• This repository has been archived on 27/Dec/2022
  • Stars
    star
    271
  • Rank 150,949 (Top 3 %)
  • Language
    Ruby
  • License
    Other
  • Created over 12 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Semi-official Logstash cookbook

chef-logstash Build Status

Description

This is the semi-official 'all-in-one' Logstash cookbook.

This cookbook is primarily a library cookbook.

While you can still use the agent and server recipes, they are not recommended as they are very limited in what they do.

If you are using logstash < 1.2 you might want to use the 0.6.x branch. If you are using logstash < 1.4 you might want to use the 0.7.x branch.

Requirements

All of the requirements are explicitly defined in the recipes. Every effort has been made to utilize Community Cookbooks.

However if you wish to use an external ElasticSearch cluster, you will need to install that yourself and change the relevant attributes for discovery. The same applies to integration with Graphite.

This cookbook has been tested together with the following cookbooks, see the Berksfile for more details

Attributes

Default

see attributes/default.rb

Beaver (alternative to Logstash Agent)

no longer used. see Community Beaver cookbook

Source

no longer supports installing from source.

Lightweight Resource Providers

These now do all the heavy lifting.

logstash_instance

This will install a logstash instance. It will take defaults from attributes for most attributes.

see resources/instance.rb

logstash_service

This will create system init scripts for managing logstash instance. It will take defaults from attributes for most attributes.

see resources/service.rb

experimental support for pleaserun has been added. Only native for Ubuntu 12.04 has been thoroughly tested.

logstash_config

This will create logstash config files. It will take defaults from attributes for most attributes.

see resources/config.rb

logstash_pattern

This will install custom grok patterns for logstash. It will take defaults from attributes for most attributes:

see resources/pattern.rb

logstash_plugins

This will install the logstash community plugins:

see resources/plugins.rb

logstash_curator

This will install the ElasticSearch Curator and setup a cron job. This replaces the deprecated index_cleaner:

see resources/curator.rb

attribute precidence in logstash LWRPs

We've done our best to make this intuitive and easy to use.

  1. the value directly in the resource block.
  2. the value from the hash node['logstash']['instance'][name]
  3. the value from the hash node['logstash']['instance_default']

You should be able to override settings in any of the above places. It is recommended for readability that you set non-default options in the LWRP resource block. But do whichever makes sense to you.

Searching

There is a search helper library libraries/search.rb which will help you search for values such as elasticsearch_ip. see the server recipe for an example of its usage.

Testing

Rubocop, FoodCritic, Rspec, Test-Kitchen

$ bundle exec rake

Test Kitchen

$ kitchen converge server_ubuntu

Contributing

Any and all contributions are welcome. We do ask that you test your contributions with the testing framework before you send a PR. All contributions should be made against the master branch.

Please update tests and changelist with your contributions.

Documentation contributions will earn you lots of hugs and kisses.

Usage

A proper readme is forthcoming but in the interim....

These two recipes show how to install and configure logstash instances via the provided LWRPs

See the elkstack community cookbook for a great example of using the LWRPs provided by this cookbook.

License and Author

  • Author: John E. Vincent
  • Author: Bryan W. Berry ([email protected])
  • Author: Richard Clamp (@richardc)
  • Author: Juanje Ojeda (@juanje)
  • Author: @benattar
  • Author: Paul Czarkowski (@pczarkowski)
  • Copyright: 2012, John E. Vincent
  • Copyright: 2012, Bryan W. Berry
  • Copyright: 2012, Richard Clamp
  • Copyright: 2012, Juanje Ojeda
  • Copyright: 2012, @benattar
  • Copyright: 2014, Paul Czarkowski

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

More Repositories

1

Noah

Lightweight node/service registry inspired by Apache Zookeeper
Ruby
322
star
2

chef-kibana

A Chef cookbook for Kibana3
Ruby
86
star
3

lua-httpclient

A unified http/s client library for lua
Lua
70
star
4

sensu_influxdb_handler

A sensu handler for sending metrics to influxdb
Ruby
43
star
5

go-rundeck

Library and Utilities for interacting with Rundeck from Go
Go
36
star
6

logstash-shipper

Lightweight log shipper for logstash
Python
33
star
7

nginx-sticky-module

Fork of https://code.google.com/p/nginx-sticky-module/ with important patches applied
C
28
star
8

sample-python-omnibus-app

A sample omnibus project for building a python package
Ruby
23
star
9

vogeler

Python-based CMDB
Python
22
star
10

lua-github

Lua wrapper for talking to the github api
Lua
22
star
11

go-artifactory

Go library and utilities for interacting with Artifactory
Go
21
star
12

zmq-appender

log4j zeromq appender
Java
19
star
13

lusis-cookbooks

Some custom cookbooks for Opscode's Chef
Ruby
18
star
14

logstash_handler

Ruby
17
star
15

lubot

Lua Chatbot running inside OpenResty
Lua
16
star
16

htmxtools

Go code for working with htmx
Go
14
star
17

slack-test

Golang library for testing slack RTM chatbots
Go
12
star
18

exabgp_exporter

Promtheus exporter for exabgp
Shell
10
star
19

ngx_stream_upstream_check_module

Upstream health checks for nginx streams
Perl
9
star
20

sysadvent-2014

Repo to go along with my sysadvent 2014 post
Lua
9
star
21

discotheque

Discovery in a gem
7
star
22

padrino-ripple-demo

Demonstration of Padrino and Ripple
Ruby
7
star
23

opentsdb-ruby

Ruby interface to OpenTSDB - Nothing here yet. Just starting work
Ruby
7
star
24

padrino-ohm-demo

Demonstration of Padrino and Redis via Ohm with Admin Console
Ruby
6
star
25

zombie-rss

Because RSS is dead....
JavaScript
6
star
26

padrino-mongomatic-example

An example application using mongomatic with padrino
Ruby
6
star
27

rasskey

Ruby ASCII Drawing Library
Ruby
5
star
28

erlang-and-centos

Some notes/tarballs for erlang applications on CentOS
5
star
29

omnibus-riak

Omnibus packaging of Riak
Ruby
5
star
30

gelfd

A standalone server + library for handling GELF messages
Ruby
5
star
31

fpm-scripts

Set of scripts to build various packages with fpm
Shell
5
star
32

outputter

A small library for handling cli output in a few common formats
Go
4
star
33

enterprise-zeromq-broker

Previously unreleased private Enterprise-class clustering ZeroMQ Broker
Ruby
4
star
34

boat

Ruby Command-line and REST API client for Noah
Ruby
4
star
35

hubot-dnsmadeeasy

Hubot script for interacting with the DNS Made Easy API
CoffeeScript
4
star
36

vim-configs

My personal vim configs
Vim Script
4
star
37

opgine

Reusable functional option engine
Go
3
star
38

test-sinatra-app

A Test Sinatra Application for MRI and JRuby packaging tests
Ruby
3
star
39

omnibus-redis

Ruby
3
star
40

chef-gitpaste

Chef cookbook for gitpaste
Ruby
3
star
41

apithings

Collection of api-first tools and utilities
Go
3
star
42

noah-cloudfoundry-demo

Ruby
3
star
43

omnibus-omnibus-omnibus

Inception
Ruby
3
star
44

commandeer

Ruby
3
star
45

irccloud-chrome-ssb

Makes irccloud.com into a chrome hosted app
3
star
46

Ruby-EWS

Simple example of accessing Microsoft Exchange Web Services via Ruby
Ruby
2
star
47

noah-agent

Core Noah Watch Processor
Ruby
2
star
48

logrus_sumologic_hook

Sumologic hook for logrus. Pretty basic at the moment
Go
2
star
49

enstratus-ruby

Ruby Library for interacting with the enStratus API
Ruby
2
star
50

code-katas

Just some "knock the cobwebs out" code katas I keep around
2
star
51

noah-agents-dummy2

Sample Noah watcher agent plugin
Ruby
1
star
52

pkg

Some various go packages I tend to reuse in my projects
Go
1
star
53

noah-callbackd

Official watcher callback daemon for Noah
Ruby
1
star
54

sqlvgo

RIP John. Nerdsnipped
TSQL
1
star
55

Ruby-Downtime

Simple utility for scheduling reoccuring downtime in Nagios
Ruby
1
star
56

lusis.github.com

My blog - on the Hubs
HTML
1
star
57

leverage

Ruby
1
star
58

dropwizard-opencensus

OpenCensus Dropwizard Bundle for Tracing
Java
1
star
59

ark

Git-backed not-so-schema-less data store
Ruby
1
star
60

statusthing

Open source statuspage platform
Go
1
star
61

noah-agents-core

Core callback agents for Noah
Ruby
1
star
62

experiments

Me experimenting with random shit - usually in random languages
Ruby
1
star
63

old-one-offs

Just some old code I found laying around on my old web server
1
star
64

chef-client-mysql

Omnibus project for chef-client with the mysql gem preinstalled
Ruby
1
star