Login Sitecore:有关Sitecore域用户的统计信息

Login Sitecore:有关Sitecore域用户的统计信息,login,statistics,sitecore,Login,Statistics,Sitecore,我正在使用Sitecore 8更新2。 我正在寻找一种方法来获取关于有多少sitecore用户登录的统计数据(随着时间的推移,而不仅仅是现在) 我主要想看看在系统上工作的实际人数是否接近许可证允许的最大用户数量。否则,一家公司可能会付出过高的代价 是否已有现成的解决方案或模块可供使用?日志文件通常包含有关登录/注销的审核信息。例如: 6140 13:57:33信息审核(sitecore\djanjicek):登录 ... 7512 14:02:57信息审核(sitecore\djanjicek

我正在使用Sitecore 8更新2。 我正在寻找一种方法来获取关于有多少sitecore用户登录的统计数据(随着时间的推移,而不仅仅是现在)

我主要想看看在系统上工作的实际人数是否接近许可证允许的最大用户数量。否则,一家公司可能会付出过高的代价


是否已有现成的解决方案或模块可供使用?

日志文件通常包含有关登录/注销的审核信息。例如:

6140 13:57:33信息审核(sitecore\djanjicek):登录
...
7512 14:02:57信息审核(sitecore\djanjicek):注销

使用Sitecore日志分析器,您应该能够在审核跟踪中筛选日志文件


如果您需要基于web的解决方案,则可以编写一个管理页面,读取所有日志文件并及时输出所需行。

如果您访问此页面:

/sitecore/client/Applications/LicenseOptions/KickUser

它将为您提供当前登录的所有CMS用户的列表。该页面是一个SPEAK应用程序,有一个名为
ActiveUsersDataSource
的数据源。在代码中,此数据源使用
DomainAccessGuard.Sessions
属性获取所有会话的列表


因此,如果您只需要一个列表,KickUser页面就足够了。如果要运行报表,可以使用
DomainAccessGuard.Sessions
属性作为开始。您可以很简单地使用它编写带有Sitecore Powershell扩展的报告

此外,您可以尝试以下方法:

var x = Membership.Providers["sql"].GetNumberOfUsersOnline();

其中,“sql”是在配置中定义的成员资格提供程序名称。

Sitecore.Analytics.Tracking.Diagnostics.PerformanceCounters.AnalyticsTrackingCount命名空间下有大量计数器。你可以试着用它们来满足你的需求。嘿,我首先开始你的解决方案,因为这会给我以前几天/几周的统计数据。不幸的是,它不起作用,因为只有当用户确实努力注销时,日志才会显示注销。然后关闭他们的浏览器。如果无法确定用户何时注销,则信息不太可信。我认为很难跟踪此类事件。Sitecore不知道有人没有先注销就关闭了浏览器或关闭了计算机。