Печать в журнал событий DotNetNuke / Просмотрщик - PullRequest
14 голосов
/ 11 января 2010

В целях отладки, как я могу печатать в журнал событий / просмотрщик в DotNetNuke, используя VB.NET или C #?

Ответы [ 4 ]

23 голосов
/ 11 января 2010

С 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)

Теперь, когда этот код запущен, запись в журнале событий должна появиться в admin -> log viewer!Вы можете настроить события такого типа, будь то администратор, хост, обновленный элемент и т. Д.

8 голосов
/ 26 июля 2010

Кроме того, если вы хотите добавить больше данных в журнал, вы можете использовать класс 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 голосов
/ 07 мая 2012

Это версия 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 голосов
/ 22 сентября 2015
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);
}
...