Loggly plugin for Fluentd
With fluent-plugin-loggly you will be able to use Loggly as output the logs you collect with Fluentd.
Getting Started
- Install Fluentd
gem install fluent-plugin-loggly
or if you are using the agenttd-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 gem in your Fluentd setup and configure it to match annotations on the namespace and pod:
<filter kubernetes.**>
type kubernetes_metadata
include_namespace_metadata true
annotation_match ["solarwinds.io/*"]
</filter>
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.