honeycombio/fluent-plugin-honeycomb

Name: fluent-plugin-honeycomb

Owner: Honeycomb

Description: Fluentd plugin for Honeycomb

Created: 2017-02-07 02:16:46.0

Updated: 2018-01-26 18:53:05.0

Pushed: 2018-02-05 20:09:12.0

Homepage: null

Size: 44

Language: Ruby

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Build Status

Send your logs to Honeycomb. (For more information about using Honeycomb, see our docs.)

Getting started
  1. Install this plugin with gem install fluent-plugin-honeycomb

  2. Edit your fluentd.conf configuration file. A minimal configuration looks like this:

ch your_match>
ype honeycomb
itekey "YOUR_WRITEKEY"
taset "fluentd_test_dataset"
tch>
Configuration
Basic options

Parameter | Type | Required? | Description | — | — | — | — | | writekey | string | yes | Your Honeycomb write key. | | dataset | string | yes | The name of the destination dataset in your Honeycomb account. | | sample_rate | integer | no | Sample your event stream by sending 1 out of every N events. | | include_tag_key | bool | no | Whether to include the Fluentd tag in the submitted event. | | tag_key | string | no | If include_tag_key is true, the tag key name in the event (default: fluentd_tag). | flatten_keys | array | no | Flatten nested JSON data under these keys into the top-level event. | dataset_from_key | string | no | Look for this key in each event, and use its value as the destination dataset. If an event doesn't contain the key, it'll be sent to the dataset given by the dataset parameter. | presampled_key | string | no | Look for this key in each event, and use its value as the sample rate for the record. If an event doesn't contain the key, the logic around sample_rate will be used (1 out of every N events will be sent instead). If an event's presampled_key value is not a positive integer, the value is discarded, and the event is sent to Honeycomb with a samplerate of 1 (the default), ignoring the sample_rate configuration option. |

Buffering options

fluent-plugin-honeycomb supports the standard configuration options for buffered output plugins.

Development

I recommend using rbenv for development.

To set up Fluentd, run:

install fluentd
ntd --setup ./fluent

Edit the configuration file at ./fluent/fluent.conf, then run

ntd -c ./fluent/fluent.conf -v

A note about naming: This gem must be named fluent-plugin-xxx in order to automatically be included in Fluentd's plugin list. See http://www.fluentd.org/faqs.

Releasing a new version

Travis will automatically upload tagged releases to Rubygems. To release a new version:

  1. Update the value of HONEYCOMB_PLUGIN_VERSION in lib/plugin/out_honeycomb_version.rb`

  2. Run

     patch --tag   # Or bump minor --tag, etc.
    push --follow-tags
    

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.