Packages
reactor
0.3.4
1.0.2
1.0.1
1.0.0
0.17.0
0.16.0
0.15.6
0.15.5
0.15.4
0.15.3
0.15.2
0.15.1
0.15.0
0.14.0
0.13.3
0.13.2
0.13.1
0.13.0
0.12.1
0.12.0
0.11.0
0.10.3
0.10.2
0.10.1
0.10.0
0.9.1
0.9.0
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.0
0.6.0
0.5.2
0.5.1
0.5.0
0.4.1
0.4.0
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.0
An asynchronous, graph-based execution engine
Current section
Files
Jump to
Current section
Files
lib/reactor/step/debug.ex
defmodule Reactor.Step.Debug do
@moduledoc """
A very simple step which sends debug information to `Logger`.
## Options
* `level` - the log level to use.
"""
use Reactor.Step
require Logger
@type options :: [level_option]
@type level_option :: {:level, Logger.level()}
@doc false
@impl true
@spec run(Reactor.inputs(), Reactor.context(), options) :: {:ok | :error, any}
def run(arguments, context, options) do
{level, options} = Keyword.pop(options, :level, :debug)
message = """
# Debug information for step `#{inspect(context.current_step.name)}`.
## Arguments
```
#{inspect(arguments)}
```
## Context
```
#{inspect(context)}
```
## Options
```
#{inspect(options)}
```
"""
Logger.log(level, message)
{:ok, nil}
end
end