Elixir:对inspect输出中的结构字段进行排序

Elixir:对inspect输出中的结构字段进行排序,elixir,Elixir,我正在调试一个包含80多个字段的结构。我试图找到一种方法来为这个结构对inspect函数的输出进行排序。目前它是随机的,不可能以任何有意义的方式区分输出。我曾尝试实现Inspect协议,但一直遇到一些值无法转换为字符串的问题。当我将{item.field}字符串格式替换为{inspectitem.field}时,我得到一个错误,即Kernel.inspect/2与本地函数冲突。下面是代码示例: defimpl Inspect, for: App.Record do def inspect(r

我正在调试一个包含80多个字段的结构。我试图找到一种方法来为这个结构对inspect函数的输出进行排序。目前它是随机的,不可能以任何有意义的方式区分输出。我曾尝试实现Inspect协议,但一直遇到一些值无法转换为字符串的问题。当我将{item.field}字符串格式替换为{inspectitem.field}时,我得到一个错误,即Kernel.inspect/2与本地函数冲突。下面是代码示例:

defimpl Inspect, for: App.Record do
  def inspect(record, opts) do
    """
    {Record}
    --------------------------------------------------------
    matched_clear_transaction : #{inspect(record.data, opts)}
    --------------------------------------------------------
    """
end

inspectrecord.data生成外键上未格式化的难以读取的数据。

您检查过IO.inspect吗?如@Alan says尝试更改:matched_clear_事务:{IO.inspectrecord.data,opts}