Clever Cloud CreateDrain

Clever Cloud CreateDrain

Certified

Create a log drain forwarding a Clever Cloud application's logs

Creates a drain that forwards an application's logs to an external observability platform, via POST /v4/drains/organisations/{organisationId}/applications/{applicationId}/drains.

Supported drainType values: RAW_HTTP, SYSLOG_TCP, SYSLOG_UDP, DATADOG, ELASTICSEARCH, NEWRELIC. There is no dedicated OVHCLOUD type on the Clever Cloud API: forward to OVHcloud (or any other generic HTTP or syslog ingestion endpoint) via RAW_HTTP or SYSLOG_TCP/SYSLOG_UDP.

This task returns as soon as the drain is created; it does not wait for it to reach the ENABLED status. organisationId is always required (no /self shortcut for personal accounts).

yaml
type: io.kestra.plugin.clevercloud.logs.CreateDrain

Create a New Relic log drain

yaml
id: setup_log_drain
namespace: company.team

tasks:
  - id: create_drain
    type: io.kestra.plugin.clevercloud.logs.CreateDrain
    apiToken: "{{ secret('CC_API_TOKEN') }}"
    organisationId: "orga_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    applicationId: "app_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    drainType: NEWRELIC
    url: "https://log-api.newrelic.com/log/v1"
    newRelicApiKey: "{{ secret('NEWRELIC_API_KEY') }}"
Properties

API token

Bearer token for the Clever Cloud API. Store as a Kestra secret and reference with {{ secret('CC_API_TOKEN') }}.

Application ID

Possible Values
RAW_HTTPSYSLOG_TCPSYSLOG_UDPDATADOGELASTICSEARCHNEWRELIC

Recipient type

One of RAW_HTTP, SYSLOG_TCP, SYSLOG_UDP, DATADOG, ELASTICSEARCH, NEWRELIC.

Organisation ID

The Clever Cloud organisation or personal account ID that owns the application (orga_xxx or user_xxx). Unlike the rest of this plugin, the v4 logs and log drain APIs have no /self shortcut, so this is always required.

Destination URL to forward logs to

Elasticsearch index prefix

Only used when drainType is ELASTICSEARCH.

DefaultLOG
Possible Values
LOGACCESSLOGAUDITLOG

Which log stream this drain forwards

One of LOG (application runtime logs), ACCESSLOG, AUDITLOG. Defaults to LOG.

New Relic API key

Only used when drainType is NEWRELIC.

HTTP client options

Optional HttpConfiguration applied to every Clever Cloud API call, including timeouts and proxy settings.

Definitions
allowFailedbooleanstring
Defaultfalse

If true, allow a failed response code (response code >= 400)

allowedResponseCodesarray
SubTypeinteger

List of response code allowed for this request

auth

The authentication to use.

type*Requiredobject
passwordstring

The password for HTTP basic authentication.

usernamestring

The username for HTTP basic authentication.

type*Requiredobject
tokenstring

The token for bearer token authentication.

type*Requiredobject
passwordstring

The password for HTTP Digest authentication.

usernamestring

The username for HTTP Digest authentication.

basicAuthPasswordDeprecatedstring

The password for HTTP basic authentication. Deprecated, use auth property with a BasicAuthConfiguration instance instead.

basicAuthUserDeprecatedstring

The username for HTTP basic authentication. Deprecated, use auth property with a BasicAuthConfiguration instance instead.

connectTimeoutDeprecatedstring
Formatduration

The time allowed to establish a connection to the server before failing.

connectionPoolIdleTimeoutDeprecatedstring
Formatduration

The time an idle connection can remain in the client's connection pool before being closed.

defaultCharsetstring
DefaultUTF-8

The default charset for the request.

enabledTcpExtendedKeepAlivebooleanstring
Defaulttrue

Whether to enable TCP Keep-Alive extended socket options (TCP_KEEPIDLE, TCP_KEEPINTERVAL, TCP_KEEPCOUNT).

Set to false when running on Windows workers, as these extended socket options are not supported by the Windows JDK and will cause connection failures.

followRedirectsbooleanstring
Defaulttrue

Whether redirects should be followed automatically.

logLevelDeprecatedstring
Possible Values
ALLTRACEDEBUGINFOWARNERROROFFNOT_SPECIFIED

The log level for the HTTP client.

logsarray
SubTypestring
Possible Values
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODY

The enabled log.

maxContentLengthDeprecatedinteger

The maximum content length of the response.

proxy

The proxy configuration.

addressstring

The address of the proxy server.

passwordstring

The password for proxy authentication.

portintegerstring

The port of the proxy server.

typestring
DefaultDIRECT
Possible Values
DIRECTHTTPSOCKS

The type of proxy to use.

usernamestring

The username for proxy authentication.

proxyAddressDeprecatedstring

The address of the proxy server.

proxyPasswordDeprecatedstring

The password for proxy authentication.

proxyPortDeprecatedinteger

The port of the proxy server.

proxyTypeDeprecatedstring
Possible Values
DIRECTHTTPSOCKS

The type of proxy to use.

proxyUsernameDeprecatedstring

The username for proxy authentication.

readIdleTimeoutDeprecatedstring
Formatduration

The time allowed for a read connection to remain idle before closing it.

readTimeoutDeprecatedstring
Formatduration

The maximum time allowed for reading data from the server before failing.

ssl

The SSL request options

insecureTrustAllCertificatesbooleanstring

Whether to disable checking of the remote SSL certificate.

Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.

timeout

The timeout configuration.

connectTimeoutstring

The time allowed to establish a connection to the server before failing.

readIdleTimeoutstring
DefaultPT5M

The time allowed for a read connection to remain idle before closing it.

Password for the destination

Only used when drainType is RAW_HTTP or ELASTICSEARCH.

Reference (ref) of the pluginDefaults to apply to this task.

RFC 5424 structured data parameters

Only used when drainType is SYSLOG_TCP or SYSLOG_UDP.

Username for the destination

Only used when drainType is RAW_HTTP or ELASTICSEARCH.

ID of the created log drain

Which log stream the drain forwards

Drain status returned by the API

One of CREATED, ENABLING, ENABLED, DISABLING, DISABLED, DELETED, extracted from the nested status object the API returns.