Log Drains
Integration Purposes
Scalingo’s logging service makes it easy to collect logs from your applications and addons for archival.
You can also add your own log drain to forward logs to third party providers for high level search and alerting capabilities.
Scalingo also supports sending applications logs using the standard syslog protocol over UDP, TCP or TCP+TLS.
Third-Party Provider Integrations
Our system is able to send logs to the following SaaS logs processing providers:
- Scalingo hosted ELK stack (how to setup)
- AppSignal
- Better Stack Logs (formerly Logtail)
- Datadog
- Graylog
- Papertrail
- Syslog
If you would like another provider to be added, feel free to contact Scalingo support.
Configuration of your Application on Scalingo
The log drains configuration is done using the CLI.
Add a Log Drain
To add a log drain you have to use the log-drains-add
command. Parameters depend on the chosen provider.
It is possible to add multiple log drains to a single application.
Here is the exhaustive list of supported providers.
Scalingo Hosted ELK Stack
scalingo --app my-app log-drains-add --type elk \
--url https://my-user:123456789abcdef@logstash-app-name.osc-fr1.scalingo.io
Parameters:
-
url
: authentication url to access to the ELK server. More information on ELK Stack on Scalingo
AppSignal
scalingo --app my-app log-drains-add --type appsignal \
--token 123456789abcdef
Parameters:
-
token
: Appsignal’s API key
This variable is available on AppSignal documentation.
Better Stack Logs
scalingo --app my-app log-drains-add --type logtail \
--token 123456789abcdef
Parameters:
-
token
: Better Stack Logs’s Bearer Token
This variable is available on
Better Stack documentation.
When connecting a new source in Better Stack Logs, please select the HTTP
platform.
Datadog
scalingo --app my-app log-drains-add --type datadog \
--token 123456789abcdef --drain-region eu
Parameters:
-
token
: Datadog API key you can find here. -
region
:eu
orus
depending on your Datadog account region.
OVH Hosted Graylog
scalingo --app my-app log-drains-add --type ovh-graylog \
--token 123456789abcdef --host tag3.logs.ovh.com
Parameters:
-
token
: graylog token -
host
: access point provided by OVH. Instructions to get the these variables are available on OVH documentation.
Papertrail
scalingo --app my-app log-drains-add --type papertrail \
--host logs2.papertrailapp.com --port 12345
Parameters:
-
host
: host shown under log destination. -
port
: port number shown under log destination.
Syslog TCP+TLS
scalingo --app my-app log-drains-add --type syslog \
--host custom.logstash.com --port 12345 --token 132456789abcdef
Parameters:
-
host
: host of the syslog server -
port
: port number of the syslog server -
token
: token provided for the syslog server
Add a Drain to an Addon
In order to add a log drain to an addon, you need to get its UUID. List your application addons to get its UUID:
scalingo --app my-app addons
Then, use the option --addon <uuid>
with the add command.
For example with AppSignal:
scalingo --app my-app log-drains-add --addon ad-a86f546c-6b08-439b-a5fc-6f16ddc9083e \
--type appsignal --token 123456789abcdef
Currently, only database addons are able to generate logs.
List Log Drains
You can list all log drains of an application with the log-drains
command:
scalingo --app my-app log-drains
Here is an example of the output:
+--------------------------------------------------------------------+
| URL |
+--------------------------------------------------------------------+
| tcp+tls://logs.papertrailapp.com:10333 |
| ovh://:878e091a-655c-4d40-b4be-72609f8949d0@tag1.logs.ovh.com:6514 |
+--------------------------------------------------------------------+
You can also list drains from both the application and the associated addons
with the option --with-addons
.
Delete a Log Drain
To delete a drain, you have to provide the URL to delete. You can get it by listing the logs drain of an application (list command)
scalingo --app my-app log-drains-remove tcp+tls://logs.papertrailapp.com:10333