无法看到SignalR集线器的跟踪输出

时间:2013-09-07 02:48:11

标签: asp.net-mvc asp.net-mvc-4 signalr tracing signalr-hub

我似乎无法从SignalR中心获取跟踪信息。我正在使用MVC4项目,并且在我的MVC控制器中正在正确记录跟踪信息,但是当我在SignalR中心内使用跟踪时,我什么都没得到。

例如,我看到来自控制器第一行的消息:

System.Diagnostics.Trace.TraceInformation("Test Controller");

但是我没有从我的中心的第一行看到这条消息:

System.Diagnostics.Trace.TraceInformation("Test Hub");

我的web.config在<system.web>下面有以下行:

<trace enabled="true" 
       writeToDiagnosticsTrace="true" 
       localOnly="false" 
       mostRecent="true" 
       pageOutput="false" />

我的系统诊断如下:

<system.diagnostics>
  <sources>
    <source name="Example Source" switchName="sourceSwitch" switchType="System.Diagnostics.SourceSwitch">
      <listeners>
        <add name="GlimpseListener" />
      </listeners>
    </source>
  </sources>
  <switches>
    <add name="sourceSwitch" value="All" />
  </switches>
  <sharedListeners>
    <add name="GlimpseListener" type="Glimpse.Core.TraceListener, Glimpse.Core" />
  </sharedListeners>
  <trace>
    <listeners>
      <add name="WebPageTraceListener" type="System.Web.WebPageTraceListener, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
    </listeners>
  </trace>
</system.diagnostics>

如上所述,来自我的控制器的跟踪消息在Trace.axd页面和Glimpse的跟踪选项卡中都显示正常。

欢迎任何想法,我一直在拉这个想法。

1 个答案:

答案 0 :(得分:1)

也许这会对你有用https://github.com/SignalR/SignalR/wiki/Tracing-on-the-server-side

什么是相关的:

<source name="Microsoft.Owin.Host.SystemWeb" switchValue="All">
  <listeners>
    <add name="traces" />
  </listeners>
</source>


<source name="SignalR.Connection">
  <listeners>
    <add name="traces" />
  </listeners>        
</source>

<sharedListeners>
   <add name="traces" type="System.Diagnostics.TextWriterTraceListener" initializeData="server_traces.txt" />
</sharedListeners>

使用文本侦听器将按预期工作,因为它可以“运行”“正常”的asp.net管道。