@
dagster.
success_hook
(name=None, required_resource_keys=None)[source]¶Create a hook on step success events with the specified parameters from the decorated function.
Examples
@success_hook(required_resource_keys={'slack'})
def slack_message_on_success(context):
message = 'op {} succeeded'.format(context.op.name)
context.resources.slack.send_message(message)
@success_hook
def do_something_on_success(context):
do_something()
@
dagster.
failure_hook
(name=None, required_resource_keys=None)[source]¶Create a hook on step failure events with the specified parameters from the decorated function.
Examples
@failure_hook(required_resource_keys={'slack'})
def slack_message_on_failure(context):
message = 'op {} failed'.format(context.op.name)
context.resources.slack.send_message(message)
@failure_hook
def do_something_on_failure(context):
do_something()
dagster.
HookDefinition
(name, hook_fn, required_resource_keys=None, decorated_fn=None)[source]¶Define a hook which can be triggered during a op execution (e.g. a callback on the step execution failure event during a op execution).
dagster.
HookContext
(step_execution_context, hook_def)[source]¶The context
object available to a hook function on an DagsterEvent.
log
¶Centralized log dispatch from user code.
hook_def
¶The hook that the context object belongs to.
solid
¶The solid instance associated with the hook.
Solid
op
¶The op instance associated with the hook.
Op
resources
¶Resources available in the hook context.
Resources
solid_config
¶The parsed config specific to this solid.
Any
op_config
¶The parsed config specific to this op.
Any
mode_def
¶The mode with which the pipeline is being run.
op_exception
¶The thrown exception in a failed op.
Optional[BaseException]
op_output_values
¶Computed output values in an op.
Dict
solid_exception
¶The thrown exception in a failed solid.
the exception object, None if the solid execution succeeds.
Optional[BaseException]
solid_output_values
¶The computed output values.
the output values in the normal case
a dictionary from mapping key to corresponding value in the mapped case
dagster.
build_hook_context
(resources=None, mode_def=None, solid=None, op=None, run_id=None, job_name=None, op_exception=None)[source]¶Builds hook context from provided parameters.
build_hook_context
can be used as either a function or a context manager. If there is a
provided resource to build_hook_context
that is a context manager, then it must be used as a
context manager. This function can be used to provide the context argument to the invocation of
a hook definition.
resources (Optional[Dict[str, Any]]) – The resources to provide to the context. These can either be values or resource definitions.
mode_def (Optional[ModeDefinition]) – The mode definition used with the context.
op (Optional[OpDefinition, PendingNodeInvocation]) – The op definition which the hook may be associated with.
solid (Optional[SolidDefinition, PendingNodeInvocation]) – (legacy) The solid definition which the hook may be associated with.
run_id (Optional[str]) – The id of the run in which the hook is invoked (provided for mocking purposes).
job_name (Optional[str]) – The name of the job in which the hook is used (provided for mocking purposes).
op_exception (Optional[Exception]) – The exception that caused the hook to be triggered.
Examples
context = build_hook_context()
hook_to_invoke(context)
with build_hook_context(resources={"foo": context_manager_resource}) as context:
hook_to_invoke(context)