• Stars
    star
    219
  • Rank 181,133 (Top 4 %)
  • Language
    Ruby
  • License
    Apache License 2.0
  • Created about 10 years ago
  • Updated 2 months ago

Reviews

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

Repository Details

Logstash Plugin

Travis Build Status

This is a plugin for Logstash.

It is fully free and fully open source. The license is Apache 2.0, meaning you are pretty much free to use it however you want in whatever way.

Documentation

Logstash provides infrastructure to automatically generate documentation for this plugin. We use the asciidoc format to write documentation so any comments in the source code will be first converted into asciidoc and then into html. All plugin documentation are placed under one central location.

Need Help?

Need help? Try #logstash on freenode IRC or the https://discuss.elastic.co/c/logstash discussion forum.

Developing

1. Plugin Development and Testing

Code

  • To get started, you'll need JRuby with the Bundler gem installed.

  • Create a new plugin or clone and existing from the GitHub logstash-plugins organization. We also provide example plugins.

  • Install dependencies

bundle install

Test

  • Update your dependencies
bundle install
  • Run unit tests
bundle exec rspec
  • Run integration tests
export INTEGRATION=true
export ES_VERSION=5.1.1
./travis-run.sh 

2. Running your unpublished Plugin in Logstash

2.1 Run in a local Logstash clone

  • Edit Logstash Gemfile and add the local plugin path, for example:
gem "logstash-filter-awesome", :path => "/your/local/logstash-filter-awesome"
  • Install plugin
# Logstash 2.3 and higher
bin/logstash-plugin install --no-verify

# Prior to Logstash 2.3
bin/plugin install --no-verify
  • Run Logstash with your plugin
bin/logstash -e 'filter {awesome {}}'

At this point any modifications to the plugin code will be applied to this local Logstash setup. After modifying the plugin, simply rerun Logstash.

2.2 Run in an installed Logstash

You can use the same 2.1 method to run your plugin in an installed Logstash by editing its Gemfile and pointing the :path to your local plugin development directory or you can build the gem and install it using:

  • Build your plugin gem
gem build logstash-filter-awesome.gemspec
  • Install the plugin from the Logstash home
# Logstash 2.3 and higher
bin/logstash-plugin install --no-verify

# Prior to Logstash 2.3
bin/plugin install --no-verify
  • Start Logstash and proceed to test the plugin

Contributing

All contributions are welcome: ideas, patches, documentation, bug reports, complaints, and even something you drew up on a napkin.

Programming is not a required skill. Whatever you've seen about open source and maintainers or community members saying "send patches or die" - you will not see that here.

It is more important to the community that you are able to contribute.

For more information about contributing, see the CONTRIBUTING file.

More Repositories

1

logstash-patterns-core

Ruby
2,167
star
2

logstash-input-jdbc

Logstash Plugin for JDBC Inputs
Ruby
449
star
3

logstash-input-kafka

Kafka input for Logstash
Ruby
138
star
4

logstash-filter-grok

Grok plugin to parse unstructured (log) data into something structured.
Ruby
112
star
5

logstash-input-beats

Java
86
star
6

logstash-codec-netflow

Ruby
79
star
7

logstash-output-kafka

Kafka Output for Logstash
Ruby
74
star
8

logstash-input-file

Ruby
66
star
9

logstash-filter-geoip

Ruby
62
star
10

logstash-output-influxdb

Ruby
58
star
11

logstash-input-s3

Ruby
57
star
12

logstash-output-s3

Ruby
56
star
13

logstash-integration-jdbc

Logstash Integration Plugin for JDBC, including Logstash Input and Filter Plugins
Ruby
53
star
14

logstash-input-http

Ruby
51
star
15

logstash-input-journald

Logstash input plugin for journald
Ruby
46
star
16

logstash-input-kinesis

Logstash Plugin for AWS Kinesis Input
Ruby
45
star
17

logstash-filter-aggregate

The aim of this filter is to aggregate informations available among several events (typically log lines) belonging to a same task, and finally push aggregated information into final task event.
Ruby
43
star
18

logstash-input-cloudwatch

A Logstash input to pull events from the Amazon Web Services CloudWatch API
Ruby
43
star
19

logstash-input-http_poller

Create Logstash events by polling HTTP endpoints!
Ruby
43
star
20

logstash-input-elasticsearch

Ruby
39
star
21

logstash-output-slack

Ruby
38
star
22

logstash-input-syslog

Ruby
38
star
23

logstash-output-mongodb

Ruby
36
star
24

logstash-output-http

Ruby
34
star
25

logstash-integration-kafka

Kafka Integration for Logstash, providing Input and Output Plugins
Ruby
32
star
26

logstash-input-tcp

Ruby
31
star
27

logstash-input-redis

Ruby
31
star
28

logstash-input-rabbitmq

Ruby
30
star
29

logstash-codec-nmap

NMap XML decoding for logstash
Ruby
28
star
30

logstash-input-twitter

Ruby
28
star
31

logstash-output-webhdfs

Web hdfs output for logstash
Ruby
28
star
32

logstash-input-couchdb_changes

This plugin captures the _changes stream from a CouchDB instance
Ruby
27
star
33

logstash-codec-protobuf

Codec plugin for parsing Protobuf messages
Ruby
26
star
34

logstash-output-zabbix

Zabbix output plugin for Logstash 1.5+
Ruby
24
star
35

logstash-codec-json

Ruby
23
star
36

logstash-output-file

Ruby
23
star
37

logstash-codec-cef

CEF codec for Logstash
Ruby
22
star
38

logstash-filter-elasticsearch

Elasticsearch filter for Logstash
Ruby
22
star
39

logstash-filter-translate

Translate filter for Logstash
Ruby
21
star
40

logstash-input-example

Example input plugin. This should help bootstrap your effort to write your own input plugin!
Ruby
21
star
41

logstash-input-gelf

Ruby
20
star
42

logstash-filter-example

Example filter plugin. This should help bootstrap your effort to write your own filter plugin!
Ruby
20
star
43

logstash-output-syslog

Ruby
20
star
44

logstash-input-google_pubsub

Logstash input for pulling events from Google Pub/Sub service
Ruby
19
star
45

logstash-filter-multiline

Ruby
18
star
46

logstash-filter-ruby

Ruby
18
star
47

logstash-input-azure_event_hubs

Logstash input for consuming events from Azure Event Hubs
Ruby
18
star
48

logstash-input-github

Accept Github Webhooks into Logstash
Ruby
18
star
49

logstash-filter-java_filter_example

EXPERIMENTAL: Example Java filter plugin for Logstash to bootstrap your effort to write your own Java filter plugin!
Java
18
star
50

logstash-output-google_bigquery

Ruby
17
star
51

logstash-input-jmx

Ruby
17
star
52

logstash-input-snmp

Ruby
17
star
53

logstash-output-rabbitmq

Ruby
17
star
54

logstash-filter-kv

Ruby
16
star
55

logstash-input-sqs

Ruby
16
star
56

logstash-input-salesforce

Logstash input for pulling objects from salesforce
Ruby
16
star
57

logstash-filter-json

Ruby
15
star
58

logstash-filter-mutate

Ruby
15
star
59

logstash-input-rss

RSS input for Logstash
Ruby
15
star
60

logstash-filter-csv

Ruby
15
star
61

logstash-filter-metrics

Ruby
15
star
62

logstash-output-redis

Ruby
15
star
63

logstash-codec-avro

A logstash codec plugin for decoding and encoding Avro records
Ruby
15
star
64

logstash-input-lumberjack

Ruby
15
star
65

logstash-input-log4j

Ruby
15
star
66

logstash-output-gelf

Ruby
15
star
67

logstash-input-udp

Ruby
14
star
68

logstash-output-email

Ruby
14
star
69

logstash-filter-elapsed

Ruby
13
star
70

logstash-filter-dissect

Extract structured fields from an unstructured line
Java
13
star
71

logstash-input-websocket

Ruby
13
star
72

logstash-input-snmptrap

Ruby
12
star
73

logstash-input-jms

Ruby
12
star
74

logstash-filter-jdbc_streaming

A Logstash filter that can enrich events with data from a database
Ruby
12
star
75

logstash-output-neo4j

A Logstash neo4j output
Ruby
12
star
76

logstash-input-imap

Ruby
12
star
77

logstash-filter-xml

Ruby
11
star
78

logstash-filter-prune

Ruby
11
star
79

logstash-output-cloudwatch

Ruby
11
star
80

logstash-filter-jdbc_static

Loads a DB query's result set in memory and uses it as lookup table for events.
Ruby
11
star
81

logstash-filter-fingerprint

Ruby
11
star
82

logstash-filter-throttle

Ruby
10
star
83

logstash-input-varnishlog

Ruby
10
star
84

logstash-codec-json_lines

Ruby
10
star
85

logstash-output-tcp

Ruby
9
star
86

logstash-input-heartbeat

Ruby
9
star
87

logstash-output-google_cloud_storage

Ruby
9
star
88

logstash-filter-useragent

Java
9
star
89

logstash-output-graphite

Ruby
9
star
90

logstash-codec-cloudtrail

Ruby
9
star
91

logstash-input-java_input_example

EXPERIMENTAL: Example Java input plugin for Logstash to bootstrap your effort to write your own Java input plugin!
Java
9
star
92

logstash-input-heroku

Ruby
8
star
93

logstash-output-loggly

Ruby
8
star
94

logstash-output-example

Example output plugin. This should help bootstrap your effort to write your own output plugin!
Ruby
8
star
95

logstash-input-eventlog

Ruby
7
star
96

logstash-output-google_pubsub

Logstash output for sending events to the Google Pub/Sub service
Ruby
7
star
97

logstash-output-csv

Ruby
7
star
98

logstash-output-udp

Ruby
7
star
99

logstash-filter-dns

Ruby
7
star
100

logstash-codec-multiline

Ruby
7
star