将 Akka.net 集群八卦发送到 Azure 辅助角色控制台

Sending Akka.net cluster gossip to Azure worker role console

我正在开发一个 Azure 云服务,其中包括形成 akka.net 集群的多个辅助角色。我如何完成让集群八卦和其他消息最终出现在计算模拟器控制台中 windows?

目前我正在处理一个 Akka.NET 集群,该集群将作为 Azure 云服务托管,运行 遇到同样的问题。

我发现完成此操作的最快方法是编写一个日志记录适配器(尽管我对 Akka.NET 还是比较陌生,所以请对这个建议持保留态度)。这是我现在使用的基本款:

public class ComputeEmulatorConsoleLogger : ReceiveActor
{
    public ComputeEmulatorConsoleLogger()
    {
        Receive<InitializeLogger>(_ =>
        {
            Trace.WriteLine("Compute emulator console logger started.");
            Sender.Tell(new LoggerInitialized());
        });

        Receive<LogEvent>(ev =>
        {
            Trace.WriteLine(ev.ToString());
        });
    }
}

并在 akka HOCON 配置部分添加 class' 路径和程序集名称,例如:

loggers = [ "WorkerRole2.ComputeEmulatorConsoleLogger,WorkerRole2" ]

它并不完美,但如您所见,它运行良好,因此您不会急于想知道 actor 系统在做什么: