Sentry SentryExecution

Sentry SentryExecution

Certified

Send Sentry alert with execution data

Sends execution metadata (ID, namespace, flow, start time, duration, status, failing task) with a UI link to Sentry. Use in flows triggered by Flow triggers; for errors handlers prefer SentryAlert. Requires a project DSN (how to find it: Sentry DSN guide); level defaults to ERROR and payload remains editable through inherited properties (payload reference: Sentry event payloads).

yaml
type: io.kestra.plugin.sentry.SentryExecution

This monitoring flow is triggered anytime a flow fails in the prod namespace. It then sends a Sentry alert with the execution information. You can fully customize the trigger conditions.

yaml
id: failure_alert
namespace: company.team

tasks:
  - id: send_alert
    type: io.kestra.plugin.sentry.SentryExecution
    transaction: "/execution/id/{{ trigger.executionId }}"
    dsn: "{{ secret('SENTRY_DSN') }}"
    level: ERROR
    executionId: "{{ trigger.executionId }}"
    customFields:
      shard: "{{ flow.namespace | split('.') | last }}"
      retried: "{{ execution.state.current == 'RETRY' }}"
    customMessage: "Failure in prod namespace: {{ trigger.executionId }}"
    options:
      readTimeout: PT15S
      headers:
        X-Namespace: "{{ flow.namespace }}"

triggers:
  - id: failed_prod_workflows
    type: io.kestra.plugin.core.trigger.Flow
    conditions:
      - type: io.kestra.plugin.core.condition.ExecutionStatus
        in:
          - FAILED
          - WARNING
      - type: io.kestra.plugin.core.condition.ExecutionNamespace
        namespace: prod
        prefix: true
Properties
Min length1

Sentry DSN

Project DSN used to authenticate requests, in the Sentry DSN format {PROTOCOL}://{PUBLIC_KEY}[: {SECRET_KEY}]@{HOST}{PATH}/{PROJECT_ID}, from sentry.io or a self-hosted Sentry; the ingest URL is derived from it and the secret key is never sent. A value without a public key is used as the ingest URL as is. Keep it in secrets.

Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.

Definitions
assetFailureBehaviorstring
Possible Values
IGNOREFAILWARN

Asset failure behavior

Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.

enableAutobooleanstring

Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.

inputsarray

The assets consumed as inputs.

id*string
Min length1
typestring
outputs

The assets produced as outputs.

id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*string
Min length1

Custom asset type

descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150

Custom fields

Extra key/value pairs exposed to the template render map.

Custom message

Optional message string injected into the template context.

DefaultENVELOPE
Possible Values
ENVELOPESTORE

Sentry ingest endpoint

Defaults to ENVELOPE; switch to STORE if the envelope endpoint is not supported by your Sentry project.

Error details

Optional errors payload section; overrides template values.

Defaulta generated unique identifier
Validation RegExp[0-9a-f]{8}[0-9a-f]{4}[0-9a-f]{4}[0-9a-f]{4}[0-9a-f]{12}

Event identifier

Lowercase uuid4 without dashes; auto-generated when omitted.

Default{{ execution.id }}

Execution ID

Defaults to current execution; override to reference another execution.

Extra metadata

Merged into extra payload object after template rendering.

DefaultERROR
Possible Values
FATALERRORWARNINGINFODEBUG

Alert severity level

Accepts fatal, error, warning, info, debug; default is ERROR.

HTTP client options

Tune Sentry request timeouts, charset, headers, and 10 MB response cap; defaults suit most flows.

Definitions
connectTimeoutstring

Connect timeout

Optional socket connect timeout; if unset, HTTP client default applies.

connectionPoolIdleTimeoutstring
DefaultPT0S

Connection pool idle timeout

Idle lifetime in the connection pool; defaults to 0s (no idle retention).

defaultCharsetstring
DefaultUTF-8

Default request charset

Charset used for requests when none is specified; defaults to UTF-8.

headersobject

HTTP headers

Rendered header map applied to the outbound request.

maxContentLengthintegerstring
Default10485760

Maximum response size

Upper bound for response content length in bytes; defaults to 10 MB.

readIdleTimeoutstring
DefaultPT5M

Read idle timeout

Closes idle read connections after inactivity; defaults to 5 minutes.

readTimeoutstring
DefaultPT10S

Read timeout

Maximum read duration before failing; defaults to 10s.

Sentry event payload

JSON body sent to Sentry; defaults to execution-based template and must stay under Sentry size limits.

DefaultJAVA
Possible Values
AS3CCFMLCOCOACSHARPELIXIRHASKELLGOGROOVYJAVAJAVASCRIPTNATIVENODEOBJCOTHERPERLPHPPYTHONRUBY

Sentry platform

Defaults to JAVA; Sentry uses it to adapt parsing and UI.

Server name

Host identifier reported with the event.

Template render variables

Key/value map rendered into the template before sending.

Transaction name

Free-form route or operation name attached to the event.