Sitecore 日志文件重复错误

Sitecore Log File Repeated Error

我有一个 sitecore 7.2 站点,它是从 6.6 升级而来的,任何导致以下错误多次出现在日志文件中的想法:

ManagedPoolThread #3 2015:07:14 10:03:48 ERROR Exception occurred in retryer scope :
   at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
   at System.Environment.get_StackTrace()
   at Sitecore.Data.DataProviders.Retryer.ExecuteNoResult(Action action, Action recover)
   at Sitecore.Analytics.Automation.Data.Sql.SqlAutomationProvider.GetDueStates(AutomationStatesDataTable dataTable, Int32 maxEntries)
   at Sitecore.Analytics.Automation.AutomationWorker.GetDueStates(AutomationStatesDataTable dataTable)
   at Sitecore.Analytics.Automation.AutomationWorker.Process()
   at Sitecore.Analytics.Automation.AutomationWorker.<Wakeup>b__4(Object state)
   at Sitecore.Threading.ManagedThreadPool.ProcessQueuedItems()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

您多次看到相同错误的原因是因为重试器将重试失败的数据库请求的次数等于尝试次数参数中设置的次数。

下面是取自 web.config v7.2 的重试器部分:

<!-- RETRYER
         When enabled, the Retryer resends failed database requests a specified number of times.
         For example, this is useful if you configure a Sitecore instance to support hot failover for database calls.
         Default value: disabled="true"
    -->
    <retryer disabled="true" type="Sitecore.Data.DataProviders.Retryer, Sitecore.Kernel">
      <param desc="Number of tries">6</param>
      <param desc="Interval between tries">00:00:00.500</param>
      <param desc="Log each exception (should be used for debug only)">true</param>
    </retryer>

Analytics数据库连接字符串不正确时抛出您看到的异常。

使用此连接字符串中的凭据尝试使用 SQL Server Management Studio 连接到数据库。

多次显示是因为 Retryer 会在失败后尝试重新执行查询(请参阅 Jason Home 答案以获取有关 retryer 的更详细说明)。