【发布时间】:2019-05-11 17:03:00
【问题描述】:
我看过几篇关于此的文章和问题,但似乎没有什么对我有用。
我将 SignalR 服务器托管在 DLL 中,然后在 WPF 应用程序中使用。一般来说,一切正常。但为了使调试更容易,我需要一些服务器端日志记录。我已经尝试实现this example。
我不想使用我自己的 TraceListener(无论哪种方式,我都无法使用 TextWriterTraceListener 获得任何结果......),所以这是我添加到我的 app.config 中的配置标签的内容:
<system.diagnostics>
<sources>
<source name="SignalR.SqlMessageBus">
<listeners>
<add name="SignalR-Bus" />
</listeners>
</source>
<source name="SignalR.ServiceBusMessageBus">
<listeners>
<add name="SignalR-Bus" />
</listeners>
</source>
<source name="SignalR.RedisMessageBus">
<listeners>
<add name="SignalR-Bus" />
</listeners>
</source>
<source name="SignalR.ScaleoutMessageBus">
<listeners>
<add name="SignalR-Bus" />
</listeners>
</source>
<source name="SignalR.Transports.WebSocketTransport">
<listeners>
<add name="SignalR-Transports" />
</listeners>
</source>
<source name="SignalR.Transports.ServerSentEventsTransport">
<listeners>
<add name="SignalR-Transports" />
</listeners>
</source>
<source name="SignalR.Transports.ForeverFrameTransport">
<listeners>
<add name="SignalR-Transports" />
</listeners>
</source>
<source name="SignalR.Transports.LongPollingTransport">
<listeners>
<add name="SignalR-Transports" />
</listeners>
</source>
<source name="SignalR.Transports.TransportHeartBeat">
<listeners>
<add name="SignalR-Transports" />
</listeners>
</source>
<source name="SignalR.ReflectedHubDescriptorProvider">
<listeners>
<add name="SignalR-Init" />
</listeners>
</source>
</sources>
<!-- Sets the trace verbosity level -->
<switches>
<add name="SignalRSwitch" value="Verbose" />
</switches>
<!-- Specifies the trace writer for output -->
<sharedListeners>
<!-- Listener for transport events -->
<add name="SignalR-Transports" type="MyNamespace.MyListener, MyAssembly, Version=9999.0.0.17, Culture=neutral, PublicKeyToken=null" />
<!-- Listener for scaleout provider events -->
<add name="SignalR-Bus" type="MyNamespace.MyListener, MyAssembly, Version=9999.0.0.17, Culture=neutral, PublicKeyToken=null" />
<!-- Listener for hub discovery events -->
<add name="SignalR-Init" type="MyNamespace.MyListener, MyAssembly, Version=9999.0.0.17, Culture=neutral, PublicKeyToken=null" />
</sharedListeners>
<trace autoflush="true" />
</system.diagnostics>
正如我所说,当我使用 TextWriterTraceListener 并使用我自己的类时,它甚至不会尝试调用构造函数或方法之一。
有人知道如何正确执行此操作吗?
【问题讨论】:
标签: wpf logging signalr owin system.diagnostics