由于项目的要求,我们希望在他们时追踪用户配置文件的属性更改(通过MySite进行)。

插入JavaScript(通过委托控件)并捕获页面“ nunload”事件是一个好主意。 “ toferload”函数将带有当前用户登录ID的“通用处理程序”,在其中我们可以使用“ userProfileChangeQuery”类跟踪配置文件更改。

还是有一个事件可以覆盖Itemuptating?

还是最简单的方法是什么?

同类“ userprofilechangequery”类也返回更新的信息或旧数据吗?

有帮助吗?

解决方案

Gary Lapointe和Mathew McDermott最近在SharePointPro杂志上发表了有关此主题的文章。它可以在线提供:

http://www.sharepointpromag.com/article/sharepoint/monitor-sharepoint-user-profile-changes-129846

本文的概要:

首先,您可以通过STSADM工具启用记录(无需使用PS)

stsadm -o profilechangelog -userprofileapplication "My User Profile Service App" -daysofhistory 28

您可以访问Microsoft.office.server.userprofiles名称空间(您已经知道)中的对象。

UserProfileManager类包含Getchanges方法。

该方法具有三个过载:

  • getchanges(),检索所有更改
  • getchanges(userProfilechangetoken),它从给定的日期或事件中检索所有更改
  • getchanges(profileBasechangequery),它检索给定的查询对象的特定更改

所有GetChanges过载返回一个用户ProfileChangeCollection对象。该对象包含存储的所有更改作为用户填充对象或其衍生品类型之一:

  • USERPROFILECOLLEAGUECHANGE
  • USERPROFILECUSTOMCHANGE
  • USERPROFILELINKITEMCHANGE
  • userprofilemembershipchange
  • USERPROFILEORGANIODMEMBESHIPHANGE
  • USERPROFROPETYVALUECHANGE
  • UserProfileWeblogChange

其他提示

SharePoint 2010具有登录从狗吠叫到服务器崩溃的所有内容。

默认情况下并非所有这些都被激活。

查看监视>在中央管理员中配置诊断日志。

在SharePoint Portal Server下,您需要勾选一对夫妇:

SPS人用户介绍个人网站

在页面底部,您可以指定要记录所有内容的位置:SharePoint Trace Log或Windows App Logs。 id for跟踪日志。

注意将在某个阶段擦除旧日志的其他设置。

接下来,你必须得到类似的东西 Ulsviewer 监视它。

希望这有所帮助。

许可以下: CC-BY-SA归因
scroll top