如何在F#中启用跟踪交互

时间:2013-09-26 10:06:32

标签: tracing f#-interactive

我想查看我使用的库的输出。

它使用简单的Trace打印中间信息,对于我的实验,我使用F#Interactive。

我尝试了什么:

Console.Out.WriteLine("Hello")                                      // prints "Hello" :)
type MyListener() =
    inherit TraceListener()
    override u.Write (msg : string) = printf "Trace: %s" msg
    override u.WriteLine (msg : string) = printfn "Trace: %s" msg
Trace.Listeners.Add(new TextWriterTraceListener(Console.Out))       // prints "val it : int = 1"
Trace.Listeners.Add(new MyListener())                               // prints "val it : int = 2"
Trace.AutoFlush <- true                                             // prints "val it : unit = ()"
Trace.TraceInformation("test")                                      // prints "val it : unit = ()".

最后一行没有“测试”相关。 显然,我需要启用调试标志或设置属性。

我如何Trace

1 个答案:

答案 0 :(得分:2)

我在尝试调试我计划在Azure中使用的库时发现了这一点,其中跟踪是更有用的日志记录选项之一。 在VS2013中,您可以设置在工具中传递给FSI的标志 - &gt;选项 - &gt; F#工具 - &gt; F#互动。这允许我在fsi窗口中读取跟踪输出。

我已将我的内容读作: --optimize- --readline+ --debug+ -d:TRACE

screenshot of fsi settings