【问题标题】:Sitecore Analytics errorSitecore 分析错误
【发布时间】:2017-04-25 00:26:44
【问题描述】:

我无法让 Sitecore Analytics 正常工作。我有 Sitecore 6.6.0(修订版 121015)并安装了 Sitecore DMS。

1) 当我转到 Sitecore->营销中心时,我收到错误 XML Parsing Error: no element found

2) 当我转到 Sitecore->Content Editor 时,选择元素并按分析->报告我收到错误 You do not have permission to see any item reports

3) 在内容编辑器中按下分析->目标得到 Cannot use Analytics with a database that has no definition items 错误

4) 在日志中我看到以下内容:

"Exception: System.InvalidOperationException
Message: Cannot use Analytics with a database that has no settings"

5) 如果我更改尝试打开营销中心的 url(将 Marketing%20Center.aspx 更改为 Marketing%20Center/default.aspx),我会收到 Cannot use Analytics with a database that has no definition items 错误

6) 我的 Sitecore.Analytics.config 中有这个标签:

<setting name="Analytics.DefaultDefinitionDatabase" value="web" />

我尝试从 SQL Management Studio 授予对分析数据库的访问权限,但没有帮助。

这个错误可能是什么原因,以及如何解决?

【问题讨论】:

    标签: database analytics sitecore sitecore6 sitecore-dms


    【解决方案1】:

    您的错误似乎表明数据库缺少数据。您是否使用了本页提供的数据库http://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206/Update/6_6_0_rev_121015.aspx

    转到上面的链接,向下滚动到 下载 DMS 6.6.0 rev。 121015 用于 Sitecore CMS 6.6.0 rev.121015,然后单击 SQL Server 下的下载 DMS 6.6.0 rev.121015。将此数据库附加到您的服务器,然后重试。

    【讨论】:

    • 我已经安装了用于分析的数据库,并且似乎该数据库已正确连接。至少我可以使用在 ConnectionStrings.config 中编写的用户在 MS SQL Managenets 工作室中打开它。我什至可以看到一些数据,例如用于进入我的网站的浏览器。
    【解决方案2】:

    我没有看到这些错误,但听起来 Sitecore 根本无法访问 Analytics 数据库。您是否在 ConnectionStrings.config 中有一个名为“analytics”的连接字符串?尝试使用 sa 帐户只是为了确保它不是权限问题。不要忘记将它从 sa 改回来。

    (警告:我还没用过 DMS,只用过 OMS……我可能落后于时代方式

    【讨论】:

    • ConnectionStrings.config 似乎配置正确。我为该用户授予了与主数据库相同的分析数据库访问权限,因此问题似乎出在其他地方。
    【解决方案3】:

    发布您的网站(到网络)。您可能正在尝试分析非实时数据。

    【讨论】:

      【解决方案4】:

      我刚刚删除了我之前的答案,因为这是错误的结果,但不是真正的原因......

      在分析代码中,从当前数据库请求营销中心节点。如果它找不到那个项目(它在主数据库中),你会得到错误。 但是如果安全设置阻止匿名用户读取访问,代码将找不到营销中心项目...

      当我是匿名用户时,这就是我发生错误的地方...实际上,在查看营销中心项目的安全设置时,我发现继承已被阻止,因此阻止了匿名用户的读取访问用户...

      有时会发生此错误的另一个原因是当您的生产环境无法访问主数据库时。 由于 Analytics 代码使用“主”数据库作为默认定义数据库,除非在配置设置中另有指定,您可以将以下内容添加到 analytics.config:

      <setting name="Analytics.DefaultDefinitionDatabase" value="web" />
      

      这样,如果生产环境没有主数据库,它将回退到 Web 数据库。

      希望这会有所帮助...

      欧文

      【讨论】:

        【解决方案5】:

        问题是由于 Sitecore 无法读取 master/web 数据库中的定义项(取决于 Analytics.DefaultDefinitionDatabase 设置)。

        它正在寻找的项目是:

        • /sitecore/system/Marketing Control Panel
        • /sitecore/system/Settings/Analytics

        请求运行时,用户为default\Anonymous。使用 Access Viewer,确保没有禁用对这些项目的读取访问权限的安全设置。这包括会产生涓滴效应的父项。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-07-01
          • 1970-01-01
          • 1970-01-01
          • 2017-02-20
          • 2018-10-01
          • 1970-01-01
          相关资源
          最近更新 更多