2010-01-11 53 views

回答

23

http://www.ventrian.com/Resources/Articles/tabid/213/articleType/ArticleView/articleId/330/Logging-to-the-EventLog.aspx(只是文章的相關部分):

使用事件日誌中的代碼非常 簡單,代碼如下: -

首先,創建實例在 EventLogViewer ...

Dim objEventLog As New DotNetNuke.Services.Log.EventLog.EventLogController 

接下來,登錄您希望事件 陷阱...

objEventLog.AddLog("Sample Message", 
    "Something Interesting Happened!", 
    PortalSettings, 
    -1, 
    DotNetNuke.Services.Log.EventLog.EventLogController.EventLogType.ADMIN_ALERT) 

現在,當這個代碼運行,事件 日誌條目應該會出現在管理 - > 日誌查看器!您可以自定義這些 類型的事件,無論是管理, 主機,更新項目等

+0

謝謝!完善。 – Kukoy 2010-01-11 14:40:31

7

另外,如果你想要更多的數據添加到日誌,你可以使用LOGINFO類事件增加日誌。

Dim eventLog As EventLogController 
eventLog = New EventLogController() 

Dim logInfo As DotNetNuke.Services.Log.EventLog.LogInfo 
logInfo = New LogInfo() 
logInfo.LogUserID = UserId 
logInfo.LogPortalID = PortalSettings.PortalId 
logInfo.LogTypeKey = EventLogController.EventLogType.ADMIN_ALERT.ToString() 
logInfo.AddProperty("PropertyName1", propertyValue1) 
logInfo.AddProperty("PropertyName2", propertyValue2) 

eventLog.AddLog(logInfo) 
5

這是C#版本

using DotNetNuke.Common.Utilities; 
using DotNetNuke.Services.Log.EventLog; 

EventLogController eventLog = new EventLogController(); 
DotNetNuke.Services.Log.EventLog.LogInfo logInfo = new LogInfo(); 
logInfo.LogUserID = UserId; 
logInfo.LogPortalID = PortalSettings.PortalId; 
logInfo.LogTypeKey=EventLogController.EventLogType.ADMIN_ALERT.ToString(); 
logInfo.AddProperty("KeyWord=", txtSearch.Text.Trim()); 
logInfo.AddProperty("KeyWordLike=", myParams); 
eventLog.AddLog(logInfo); 
0
using DotNetNuke.Common.Utilities; 
using DotNetNuke.Services.Log.EventLog; 
public static void DnnEventLogMsg(string msg) 
{ 
    EventLogController eventLog = new EventLogController(); 
    DotNetNuke.Services.Log.EventLog.LogInfo logInfo = new LogInfo(); 
    PortalSettings ps = PortalController.Instance.GetCurrentPortalSettings(); 
    UserInfo userInfo = UserController.Instance.GetCurrentUserInfo(); 
    logInfo.LogUserID = userInfo.UserID; 
    logInfo.LogPortalID = ps.PortalId; 
    logInfo.LogTypeKey = EventLogController.EventLogType.ADMIN_ALERT.ToString(); 
    logInfo.AddProperty("Atena3 Message", msg); 
    eventLog.AddLog(logInfo); 
}