将 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 系统在做什么:
我正在开发一个 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 系统在做什么: