首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TCMEventLog.NTEventLog.1中出现错误: ReportEvent失败

TCMEventLog.NTEventLog.1中出现错误: ReportEvent失败
EN

Stack Overflow用户
提问于 2012-04-11 02:19:22
回答 1查看 190关注 0票数 7

我使用的是Tridion2009 SP1。我尝试做的是在组件完成特定的工作流过程后启动一个事件。直观地说,我尝试使用OnProcessInstanceFinishPost事件,但是,只有当用户(管理员)显式单击"Finish process“时才会触发该事件;当该过程在所有活动完成并且”到达'Stop‘标志结束标记(如在Visio图表中)时“正常完成时,不会触发该事件。

因此,我转而使用OnActivityInstanceFinishPost事件。问题是,在OnActivityInstanceFinishPost事件中,我正在获取记录器并尝试记录一条简单的消息,例如"Hello World",但事件查看器始终显示错误:"An error the in TCMEventLog.NTEventLog.1:ReportEvent failed“。并且事件不会被执行。

请注意,在OnProcessInstanceFinishPost事件中,完全相同的代码可以正常工作,没有错误。

我已经检查了身份用户的权限是否有问题,但该用户是Tridion中的管理员,所以不可能是它。我已经查看了SDLTridionworld论坛,但没有运气,当然,我已经将代码简化为一条日志语句,以确保它不会出现在我的代码中。

代码如下:

代码语言:javascript
复制
public void OnActivityInstanceFinishPost(ActivityInstance ActivityInstance, string finishMessage, string nextActivity, string dynamicAssignee)
{
    TDSE tdse = new TDSEClass() as TDSE;
    tdse.Impersonate(_identity);
    tdse.Initialize();

    Logging logger = tdse.GetLogging() as Logging;

    logger.LogEvent("Entered event OnActivityInstanceFinishPost. nextActivity="+nextActivity, EnumSeverity.severityInfo, EnumEventCategory.EVENT_CATEGORY_EVENT_SYSTEM);
}

下面是完整的错误:

代码语言:javascript
复制
Log Name:      Tridion Content Manager
Source:        Kernel
Date:          4/9/2012 10:14:07 PM
Event ID:      100
Task Category: Logging
Level:         Error
Keywords:      Classic
User:          SYSTEM
Computer:      xxxxxxxxxxxxxx
Description:
An error occured in TCMEventLog.NTEventLog.1:
ReportEvent failed.
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Kernel" />
    <EventID Qualifiers="49152">100</EventID>
    <Level>2</Level>
    <Task>9</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2012-04-10T03:14:07.000Z" />
    <EventRecordID>546126</EventRecordID>
    <Channel>Tridion Content Manager</Channel>
    <Computer>xxxxxxxxxxxxxxxxxxxxxxxxx</Computer>
    <Security UserID="S-1-5-18" />
  </System>
  <EventData>
    <Data>An error occured in TCMEventLog.NTEventLog.1: ReportEvent failed.</Data>
  </EventData>
</Event>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-12 02:30:20

该错误表示Tridion无法写入日志记录消息。我假设您已经有一些证据表明这是由工作流活动完成触发的。

我不知道是什么导致了这个错误,但是对于日志记录失败,它通常是关于权限的。

这将取决于您的工作流,哪个用户实际触发了OnActivityInstanceFinishPost事件。如果活动由用户手动完成,则该用户将是执行事件的Windows身份(或者,如果配置了Tridion模拟,则为模拟用户)。如果它是一个自动活动,那么它将由为工作流代理服务配置的标识执行。我建议您检查这些帐户是否都能够正确登录。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10094234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档