在浏览sitecore的日志文件时,我注意到下面有超过2K的错误条目。它在CD服务器上,但该网站似乎运行正常。我用谷歌搜索是否有人遇到过这个问题,但没有运气。
异常:System.InvalidOperationException消息:找不到 配置节点:数据库/数据库[@ id ='master']来源: Sitecore.Kernel在 Sitecore.Configuration.Factory.GetConfigNode(String xpath,Boolean assert)在Sitecore.Configuration.Factory.CreateObject(String configPath,String []参数,布尔断言)at Sitecore.Configuration.Factory.CreateObject(String configPath,Boolean 断言)在Sitecore.Configuration.Factory.GetDatabase(String name, 布尔断言) Sitecore.Configuration.Factory.GetDatabase(String name)at Sitecore.Analytics.Tracker.get_DefinitionDatabase()at Sitecore.Analytics.Pipelines.VisitEnd.RunRules.Process(VisitEndArgs endArgs)at(Object,Object [])at Sitecore.Pipelines.PipelineMethod.Invoke(Object []参数)at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)at Sitecore.Pipelines.CorePipeline.Run(String pipelineName,PipelineArgs args,String pipelineDomain,Boolean failIfNotExists)at Sitecore.Analytics.Pipelines.VisitEnd.VisitEndPipeline.Run(VisitEndArgs args)at Sitecore.Analytics.Pipelines.SessionEnd.RaiseVisitEnd.Process(SessionEndArgs endArgs)at(Object,Object [])at Sitecore.Pipelines.PipelineMethod.Invoke(Object []参数)at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)at Sitecore.Pipelines.CorePipeline.Run(String pipelineName,PipelineArgs args,String pipelineDomain,Boolean failIfNotExists)at Sitecore.Pipelines.EndSession.SessionEndPipeline.Run(SessionEndArgs sessionEndArgs)at Sitecore.Web.Application.RaiseSessionEndEvent(HttpApplication context)
更多信息:
感谢我能获得帮助以解决此问题。
答案 0 :(得分:1)
错误说:
找不到配置节点:数据库/数据库[@id =' master']
前段时间我遇到了相同类型的错误,事实证明,当您将对master数据库的引用切换到CD服务器上的Web数据库时,必须关闭使用master数据库的任何索引机制。在我的情况下,我检查了所有与Lucene索引相关的配置文件,它们以某种方式指向master数据库,如下所示:
<locations hint="list:AddCrawler">
<crawler type="Sitecore.ContentSearch.SitecoreItemCrawler, Sitecore.ContentSearch">
<Database>master</Database>
<Root>/sitecore</Root>
</crawler>
</locations>
有几个索引配置文件可能会使用此模式,包括分析和其他额外功能。我把它关掉了,错误就消失了。