我们可以在 elixir 中分析和记录分布式程序吗?

Can we profile and log a distributed program in elexir?

我想用 elixir 实现一个 map-reduce 分布式系统(作为我的一门课程的项目)但在我开始之前我需要找到一些工具。

对于我的项目,我需要分析系统的行为和性能。例如,我想检查性能如何随着问题规模的增加或工人数量的变化等而变化,或者如果我们有 link/process 失败会发生什么。由于程序是分布式的,我不知道如何实现这样的分析。我找不到适合我的用例的任何库,但由于我是该语言的新手,所以可能有一些我不知道的方法。

您正在寻找的是所谓的“分布式跟踪”,并且很少有项目支持它。例如 OpenTelemetry. Additionally you want to gather metrics for your application. There is few approaches to that, and currently the community is gathered around telemetry. More informations about current state of observability in Erlang is available in list prepared by Erlang Ecosystem Foundation Observability WG.