Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否有办法浏览erlang术语存储(ETS)_Erlang_Elixir_Ets - Fatal编程技术网

是否有办法浏览erlang术语存储(ETS)

是否有办法浏览erlang术语存储(ETS),erlang,elixir,ets,Erlang,Elixir,Ets,我有一个使用erlang术语存储的小Elixir应用程序,我想浏览一下,看看存储了什么。有什么方法可以用长生不老药或Erlang来达到这个目的吗 我想看看它有多大,里面有什么 编辑:我知道我可以使用:observer.start查看流程,但没有一个流程或应用程序被列为ets。有Elixir.Hex.Registry.ETS,但是状态或其他进程信息看起来并不正确 我也可以在iex中打印出来,但这不是一个很好的体验。您可以使用Observer应用程序。它可以显示许多不同的内容,包括ETS表格的内容。

我有一个使用erlang术语存储的小Elixir应用程序,我想浏览一下,看看存储了什么。有什么方法可以用长生不老药或Erlang来达到这个目的吗

我想看看它有多大,里面有什么

编辑:我知道我可以使用
:observer.start
查看流程,但没有一个流程或应用程序被列为
ets
。有
Elixir.Hex.Registry.ETS
,但是状态或其他进程信息看起来并不正确


我也可以在iex中打印出来,但这不是一个很好的体验。

您可以使用Observer应用程序。它可以显示许多不同的内容,包括ETS表格的内容。首先在Elixir shell中键入:

:observer.start
或者在Erlang shell中:

observer:start().
为了实现这一点,必须使用WX库构建Erlang


中有一些文档。此外,还介绍了如何使用Observer来观察远程Elixir节点,这对于生产系统是可取的。

如前所述,您可以使用
Observer
。要查看ETS表格,请单击
表格查看器
选项卡,然后选择所需表格,然后右键单击即可获得查看
表格信息
显示表格内容
的选项

要启动观察者,请运行:

:observer.start

截图:


ets:i/1是一种交互式表格浏览方式:


@mudasobwa这是一个很酷的功能,但它不适合浏览或探索数据。如果有一个答案被否决,为什么这个问题会被否决?如果我们有一个类似的问题,那么这个问题肯定不会那么糟糕,答案对我们很有帮助。因此,我可以从observer开始,它列出了应用程序和流程,但ETS没有在这里列出,至少没有这样列出。我会更新这个问题,让它更清楚。看起来这并没有包括所有的表格。当我运行
:ets.all
时,我可以在
iex
中看到更多的表。我是否遗漏了一些明显的东西?这是观察者的默认行为。默认情况下,从doc
显示ETS表,而不显示不可读的私人ETS表和OTP应用程序创建的表。使用菜单视图查看“系统”ETS表、不可读ETS表或Mnesia表。