gpt4 book ai didi

tridion - TCM EventLog.EventLog.1 : ReportEvent failed 中发生错误

转载 作者:行者123 更新时间:2023-12-04 12:48:57 25 4
gpt4 key购买 nike

我正在使用 Tridion 2009 SP1。我想要做的是在组件完成某个工作流程后启动一个事件。直观地说,我已经尝试使用 OnProcessInstanceFinishPost 事件,但是,只有当用户(管理员)明确单击“完成过程”时才会触发此事件;当流程在完成所有事件并“到达‘停止’标志结束标记(如 Visio 图表中)后正常完成时,不会触发此事件。

所以我改用 OnActivityInstanceFinishPost 事件。问题是在 OnActivityInstanceFinishPost 事件中,我正在获取记录器并尝试记录一条简单的消息,例如“Hello World”,但事件查看器始终显示错误:“TCMEventLog.NTEventLog.1 中发生错误:ReportEvent 失败。”并且该事件不会被执行。

请注意,在 OnProcessInstanceFinishPost 事件中,完全相同的代码可以正常工作而不会出错。

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

这是代码:

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);
}

这是完整的错误:
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>

最佳答案

该错误表明 Tridion 未能写入日志消息。我假设您已经有一些证据表明这是由工作流事件完成触发的。

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

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

关于tridion - TCM EventLog.EventLog.1 : ReportEvent failed 中发生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10094234/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com