2012-09-24 72 views
0

我一直在嘗試使用the class located here。但是我一直無法得到這個工作。我顯然沒有正確理解某些東西,但我很好奇如何讓示例Logger類正常工作。 我的研究發送給我使用MSBuild,但正確使用MSBuild仍然困擾着我。任何指針都會有幫助。我已經將日誌記錄類建立到.dll中,並在項目中引用它,但這正是我的研究似乎枯燥無味並含有有用信息的地方。問題使用.net 2.0記錄器類

我的目標目前只是爲了讓上面提到的記錄器類工作,所以我可以使用我自己的記錄器類。

+2

你得到什麼錯誤,或者是你運行的是什麼確切的問題分爲:

log4net.Config.XmlConfigurator.Configure(); 

最後,只是在幾行插入使用它? – BlackICE

+0

您正在嘗試在構建期間添加自定義日誌記錄嗎?或者你是否試圖將日誌記錄添加到應用程序中? –

+0

我遇到的問題是我似乎無法獲得任何日誌記錄。我創建了一個虛擬項目,它只是調用一個虛擬方法,希望能夠發生某些事情,但它似乎沒有爲日誌記錄做任何事情。我有一種強烈的感覺,我錯過了一些東西,但我想我對日誌記錄不夠了解,無法指出問題所在。 – cgront

回答

2

該類專門用於記錄MSBuild事件。如果你想有無關的MSBuild看一些這些替代品的通用記錄:

+0

好吧如果我想創建自己的通用記錄器,我已經看到一些人在線使用System.diagnostic.tracesource,是我想走的路?我試圖避開第三方包 – cgront

+0

這可能是一種方法。它不支持其他人所做的數據庫日誌記錄。 –

0

不要害怕使用庫做的工作。在的教程here中,開始使用功能齊全且可擴展的日誌記錄庫是一個簡單的七步過程。爲了防止鏈接死掉,我將內嵌教程片段。

首先,你在你的App.config文件建立一個非常簡單的配置部分:

<configuration> 
    <configSections> 
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,Log4net"/> 
    </configSections> 
    <log4net> 
    <root> 
     <level value="DEBUG" /> 
     <appender-ref ref="LogFileAppender" /> 
    </root> 
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" > 
     <param name="File" value="log-file.txt" /> 
     <param name="AppendToFile" value="true" /> 
     <rollingStyle value="Size" /> 
     <maxSizeRollBackups value="10" /> 
     <maximumFileSize value="10MB" /> 
     <staticLogFileName value="true" /> 
     <layout type="log4net.Layout.PatternLayout"> 
     <param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> 
     </layout> 
    </appender> 
    </log4net> 
</configuration> 

爲了你的需求,你幾乎只需要更改名爲File第一paramvalue因爲它已經設置追加到文本文件。

接下來,您需要運行一些啓動方法中的配置,例如程序的Application_Startmain方法。

private static readonly ILog log = LogManager.GetLogger(typeof(Bar)); 
... (rest of class) 
... (somewhere in a method) ... log.Debug("this is the first log message");