Loggly plugin for [Fluentd](http://www.fluentd.org)
=============
[![Gem](https://img.shields.io/gem/dt/fluent-plugin-loggly.svg)](https://rubygems.org/gems/fluent-plugin-loggly)
[![Gem Version](https://badge.fury.io/rb/fluent-plugin-loggly.svg)](https://badge.fury.io/rb/fluent-plugin-loggly)
With fluent-plugin-loggly you will be able to use [Loggly](http://loggly.com) as output the logs you collect with Fluentd.
## Getting Started
* Install [Fluentd](http://www.fluentd.org/download)
* `gem install fluent-plugin-loggly` or if you are using the agent `td-agent-gem install fluent-plugin-loggly`
* Make sure you have an account with Loggly.
* Configure Fluentd as below:
~~~~~
type loggly
loggly_url https://logs-01.loggly.com/inputs/xxx-xxxx-xxxx-xxxxx-xxxxxxxxxx
~~~~~
or if you want to use buffered plugin:
~~~~~
type loggly_buffered
loggly_url https://logs-01.loggly.com/bulk/xxx-xxxx-xxxx-xxxxx-xxxxxxxxxx
output_include_time true # add 'timestamp' record into log. (default: true)
time_precision_digits 3 # Include 3 digits of sub-second precision (default: 0)
buffer_type file
buffer_path /path/to/buffer/file
flush_interval 10s
~~~~~
Note that buffered plugin uses bulk import to improve performance, so make sure to set Bulk endpoint to loggly_url.
The `xxx-xxxx...` is your Loggly access token.
## Parameters
**loggly_url** the url to your loggly input (string).
## Annotations
If you're running on Kubernetes you can use annotations to redirect logs to alternate Loggly URLs.
Simply enable the [fluent-plugin-kubernetes_metadata_filter](https://github.com/fabric8io/fluent-plugin-kubernetes_metadata_filter) gem in your Fluentd setup and configure it to match annotations on the namespace and pod:
```
type kubernetes_metadata
include_namespace_metadata true
annotation_match ["solarwinds.io/*"]
```
Then add the following annotation to each namespace or pod that you'd like to redirect logs for:
```
solarwinds.io/loggly_url: 'https://logs-01.loggly.com/inputs/xxx-xxxx-xxxx-xxxxx-xxxxxxxxxx'
```
If both a pod and the namespace it's in have this annotation, the pod's annotation takes precedence.