
Sentry SentryExecution
CertifiedSend Sentry alert with execution data
Sentry SentryExecution
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).
type: io.kestra.plugin.sentry.SentryExecutionExamples
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.
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: trueProperties
dsn *string
1Sentry 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
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.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset 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.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150customFields object
Custom fields
Extra key/value pairs exposed to the template render map.
customMessage string
Custom message
Optional message string injected into the template context.
endpointType string
ENVELOPEENVELOPESTORESentry ingest endpoint
Defaults to ENVELOPE; switch to STORE if the envelope endpoint is not supported by your Sentry project.
errors object
Error details
Optional errors payload section; overrides template values.
eventId string
a generated unique identifier[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.
executionId string
{{ execution.id }}Execution ID
Defaults to current execution; override to reference another execution.
extra object
Extra metadata
Merged into extra payload object after template rendering.
level string
ERRORFATALERRORWARNINGINFODEBUGAlert severity level
Accepts fatal, error, warning, info, debug; default is ERROR.
options
HTTP client options
Tune Sentry request timeouts, charset, headers, and 10 MB response cap; defaults suit most flows.
io.kestra.plugin.sentry.AbstractSentryConnection-RequestOptions
Connect timeout
Optional socket connect timeout; if unset, HTTP client default applies.
PT0SConnection pool idle timeout
Idle lifetime in the connection pool; defaults to 0s (no idle retention).
UTF-8Default request charset
Charset used for requests when none is specified; defaults to UTF-8.
java.nio.charset.Charset
HTTP headers
Rendered header map applied to the outbound request.
10485760Maximum response size
Upper bound for response content length in bytes; defaults to 10 MB.
PT5MRead idle timeout
Closes idle read connections after inactivity; defaults to 5 minutes.
PT10SRead timeout
Maximum read duration before failing; defaults to 10s.
payload string
Sentry event payload
JSON body sent to Sentry; defaults to execution-based template and must stay under Sentry size limits.
platform string
JAVAAS3CCFMLCOCOACSHARPELIXIRHASKELLGOGROOVYJAVAJAVASCRIPTNATIVENODEOBJCOTHERPERLPHPPYTHONRUBYSentry platform
Defaults to JAVA; Sentry uses it to adapt parsing and UI.
serverName string
Server name
Host identifier reported with the event.
templateRenderMap object
Template render variables
Key/value map rendered into the template before sending.
transaction string
Transaction name
Free-form route or operation name attached to the event.