在Sitecore中,如何查看提交队列文件的内容?

In Sitecore, how to view the content of the submit queue file?

因此在 Sitecore 站点中,在 Data/Submit 队列中,有一个没有扩展名的文件代表提交队列的内容。

如果您尝试将其作为文本文件查看,它会显示一些内容,但其中有一些奇怪的字符。

那么,有人申请查看这个文件了吗?它是否应该采用特定格式,应使用能够查看该格式的应用程序打开?

额外信息:Sitecore 8.0,不,在控制面板或 sitecore/admin 中没有关于它的任何信息。

不,您不应该打开提交队列并对其进行任何操作。

当无法访问 xDB 时,xDB(在您的情况下)使用它来提交数据。在某种程度上,它将是一种与 MongoDB 相关的格式,但我从未见过它的任何正式文档。

参考文献:

Mark 是对的,提交队列不是供用户查看的。几个月前,我就这个主题写了一篇 post。

https://citizensitecore.com/2016/07/01/xdb-session-info-and-mongodb-availability/

来自 xDB 产品团队成员 Akinori Taira:

In the event that the collections database is unavailable, there is a special ‘Submit Queue’ mechanism that flushes captured data to the local hard drive (the ‘Data\Submit Queue’ folder by default). When the collections database comes back online, a background worker process submits the data from the ‘Submit Queue’ on disk.

此文件包含未刷新到 Mongo 数据库的分析数据。

如果 xDB 收集服务器不可用,Sitecore would/must 会正确处理这种情况。引入了一种特殊的 'Submit Queue' 机制,可以将捕获的数据刷新到本地服务器硬盘驱动器(默认为 'Data\Submit Queue' 文件夹),以防 xDB 不可用。

当xDB再次启动时,后台工作人员会提交保存在磁盘上的数据,因此没有数据丢失。

作为对此的快速建议,我建议您检查您的 MongoDB 服务器是否可用于您的 Sitecore 实例。一旦可用,文件中的所有数据都应刷新到 xDB。

提交队列文件存储序列化值如下:第一个值 - 实体数,第二个值 - 下一个实体的位置,必须提交给 xDB,下一个值包含序列化分析数据。

使用此 class 处理提交队列:Sitecore.Analytics.Data.DataAccess.SubmitQueue.FileSubmitQueue

如果您想调试以查看处理方式,请反编译 class 并创建您自己的 class 并替换为 Sitecore.Analytics.Tracking.confing

 <submitQueue>
    <queue type="Sitecore.Analytics.Data.DataAccess.SubmitQueue.FileSubmitQueue, Sitecore.Analytics" singleInstance="true" />
 </submitQueue>