我有一个单页Azure Web应用程序,它使用Signalr(Microsoft.AspNetCore.SignalR“Version =”1.0.0-alpha1-final)向连接的客户端广播事件(登录,注销,部门创建等)。
我还在高峰时间将我的应用程序扩展到多个实例,并使用Redis Cache Backplane(Microsoft.AspNetCore.SignalR.Redis“Version =”1.0.0-alpha2-final)将事件广播消息分发给所有连接的客户端< / p>
我使用角度前端(@ aspnet / signalr-client“:”^ 1.0.0-alpha2-final)
在azure上,我启用诊断日志来记录信息和错误消息。
以上工作正常,但是当我扩展应用程序时,很难跟踪信息或错误消息,因为我必须查看最多10个实例应用程序日志以查找信息或错误;
我的问题:我如何确保redis缓存记录所有可用实例上的错误消息或信息,而不是连接客户端的实例;我怎么知道客户是否错过了事件广播消息?如何确保signalr服务器/集线器记录所有应用程序日志实例上的所有消息?
提前谢谢
答案 0 :(得分:1)
执行此操作的最佳方法可能是使用redis-cli,运行MONITOR命令,然后将其传递到文件(或可以存储日志的地方)。