Credo v1.3.0-rc3 Credo.Execution.ExecutionTiming View Source

The ExecutionTiming module can help in timing the execution of code parts and storing those timing inside the Credo.Execution struct.

Link to this section Summary

Functions

Returns all timings for the given exec

Adds a timing to the given exec using the given values of tags, started_at and duration

Returns all timings for the given exec and tag_name

Returns all timings for the given exec and tag_name where the tag’s value also matches the given regex

Returns a specification to start this module under a supervisor

Returns the latest timestamp plus its duration for the given exec

Groups all timings for the given exec and tag_name

Runs the given fun and prints the time it took with the given label

Returns the current timestamp in the same format (microseconds) as the returned starting times of run/1

Runs the given fun and returns a tuple of {started_at, time, result}

Same as run/1 but takes fun and args separately

Returns the earliest timestamp for the given exec

Link to this section Functions

Returns all timings for the given exec.

Link to this function append(execution, tags, started_at, duration) View Source

Adds a timing to the given exec using the given values of tags, started_at and duration.

Returns all timings for the given exec and tag_name.

Link to this function by_tag(exec, tag_name, regex) View Source

Returns all timings for the given exec and tag_name where the tag’s value also matches the given regex.

Returns a specification to start this module under a supervisor.

See Supervisor.

Returns the latest timestamp plus its duration for the given exec.

Link to this function grouped_by_tag(exec, tag_name) View Source

Groups all timings for the given exec and tag_name.

Runs the given fun and prints the time it took with the given label.

iex> Credo.Execution.ExecutionTiming.inspect("foo", fn -> some_complicated_stuff() end)
foo: 51284

Returns the current timestamp in the same format (microseconds) as the returned starting times of run/1.

Runs the given fun and returns a tuple of {started_at, time, result}.

iex> Credo.Execution.ExecutionTiming.run(fn -> some_complicated_stuff() end)
{1540540119448181, 51284, [:whatever, :fun, :returned]}

Same as run/1 but takes fun and args separately.

Returns the earliest timestamp for the given exec.