Ecto v2.2.9 Ecto.LogEntry View Source

Struct used for logging entries.

It is composed of the following fields:

  • query - the query as string or a function that when invoked resolves to string;
  • source - the query data source;
  • params - the query parameters;
  • result - the query result as an :ok or :error tuple;
  • query_time - the time spent executing the query in native units;
  • decode_time - the time spent decoding the result in native units (it may be nil);
  • queue_time - the time spent to check the connection out in native units (it may be nil);
  • connection_pid - the connection process that executed the query;
  • caller_pid - the application process that executed the query;
  • ansi_color - the color that should be used when logging the entry.

Notice all times are stored in native unit. You must convert them to the proper unit by using System.convert_time_unit/3 before logging.

Link to this section Summary

Functions

Logs the given entry in debug mode

Logs the given entry in the given level

Converts a log entry into iodata

Link to this section Types

Link to this type t() View Source
t() :: %Ecto.LogEntry{
  ansi_color: IO.ANSI.ansicode() | nil,
  caller_pid: pid() | nil,
  connection_pid: pid() | nil,
  decode_time: integer() | nil,
  params: [term()],
  query: String.t() | (t() -> String.t()),
  query_time: integer(),
  queue_time: integer() | nil,
  result: {:ok, term()} | {:error, Exception.t()},
  source: String.t() | Enum.t() | nil
}

Link to this section Functions

Logs the given entry in debug mode.

The logger call will be removed at compile time if compile_time_purge_level is set to higher than debug.

Logs the given entry in the given level.

The logger call won’t be removed at compile time as custom level is given.

Converts a log entry into iodata.

The entry is automatically resolved if it hasn’t been yet.