Skip to content
This repository has been archived by the owner on Jul 7, 2023. It is now read-only.

Input plugin for fluentd to support Heroku HTTPS log drains

License

Notifications You must be signed in to change notification settings

ApplauseOSS/fluent-plugin-heroku-http

Repository files navigation

fluent-plugin-heroku-http

Gem Version

NOTE: This plugin is no longer maintained

The plugin still works, as of last use, but it is no longer maintained or in use due to Heroku/DataDog native log drains

Introduction

This is a fluent input plugin to accept Heroku HTTPS log drains.

This plugin is heavily derived from hakobera/fluent-plugin-heroku-syslog and includes code from the dblN/fluent-plugin-heroku-syslog and gmile/fluent-plugin-heroku-syslog forks of that code. Unlike that plugin, this plugin focuses exclusively on HTTPS log drains and gets its tags from the request PATH, rather than configuration. This allows the input to more easily be integrated into complex pipelines.

Installation

Install with gem or td-agent-gem commands:

# using fluentd/gem
$ gem install fluent-plugin-heroku-http

# using td-agent
$ td-agent-gem install fluent-plugin-heroku-http

Install using bundler in Gemfile:

gem 'fluent-plugin-heroku-http'

Configuration

This plugin implements HerokuHttpInput which extends the built-in HttpInput plugin to accept RFC-5424 formatted syslog messages, framed using syslog TCP protocol octet counting framing method from RFC-6587, from Heroku HTTPS drains. This plugin support all of the in_http plugin configuration parameters.

Basic configuration

<source>
  @type heroku_http
  port 9880
</source>

Filtered by drain IDs

<source>
  @type heroku_http
  port 9880
  drain_ids ["YOUR-HEROKU-DRAIN-ID","ANOTHER-HEROKU-DRAIN-ID"]
</source>

Heroku configuration

The fluent tag is parsed from the input request PATH, in the same way as the in_http plugin.

# add logdrain to heroku application
$ heroku drains:add https://YOUR-FLUENTD-HOST/DESIRED-FLUENT-TAG

License

FOSSA Status