使用 Exchange Server 对 ActiveSync 进行故障排除

原始 KB 编号: 10047

适用对象是哪些人?

帮助诊断其用户的 ActiveSync 问题的管理员。

它是如何工作的?

首先,我们将询问你面临的问题。 然后,我们将为你介绍一系列针对你特定情况的故障排除步骤。

预计完成时间:

60-90 分钟。

你面临的问题是什么

注意

有关当前已知问题的列表,请参阅 本文

Exchange 远程连接分析器 (无法在设备上创建配置文件)

验证自动发现是否适用于 Microsoft Exchange ActiveSync。 为此,请按照下列步骤操作:

  1. 浏览到 Microsoft 远程连接分析器 站点。

  2. Microsoft Exchange ActiveSync连接测试中选择“Exchange ActiveSync自动发现”,然后选择“下一步”。

  3. 输入所有必填字段,然后选择“ 执行测试”。

    在“远程连接分析器”窗口中输入所有必填字段的屏幕截图。

连接测试是否失败?

如果连接测试失败, (分析 Exchange 远程连接分析器结果)

若要解决此问题,请查看测试结果并解决发现的任何问题。 为此,请按照下列步骤操作:

  1. 选择“ 全展开”。

    “远程连接分析器”窗口中“全部展开”选项的屏幕截图。

  2. 在结果中找到错误, (应接近尾) 并解决问题。

    屏幕截图显示了连接测试失败错误的其他详细信息。

是否已使用 Exchange 远程连接分析器结果解决该问题?

用户主体名称检查

大多数Exchange ActiveSync设备会请求电子邮件地址和密码来设置设备。 仅当用户主体名称值与用户的电子邮件地址匹配时,此组合才有效。 验证这两个属性具有相同的值。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索属性值:

    Get-Mailbox user | fl UserPrincipalName,PrimarySmtpAddress
    

    屏幕截图显示了运行 Get-Mailbox cmdlet 的示例。

UserPrincipalName 是否与用户的 PrimarySmtpAddress 匹配?

域后缀检查

验证相应的域后缀是否可用于 UserPrincipalName 属性。 为此,请按照下列步骤操作:

  1. 打开“Active Directory 用户和计算机”

  2. 找到用户对象并双击以查看属性。

  3. 转到“ 帐户 ”选项卡,然后选择 “用户登录名”的下拉列表。

    “帐户”选项卡下“用户登录名”部分的下拉列表的屏幕截图。

SMTP 地址域是否在下拉列表中列出?

添加 UPN 后缀;修改用户主体名称

添加 UPN 后缀

若要解决此问题,需要将主 SMTP 地址域添加到 UPN 后缀列表。 为此,请按照下列步骤操作:

  1. 打开 Active Directory 域和信任

  2. 右键单击“ Active Directory 域和信任” ,然后选择“ 属性”。

  3. 输入主 SMTP 地址域,然后选择“ 添加 ”,然后选择“ 确定”。

    “Active Directory 域和信任”窗口中“U P N 后缀”选项卡的屏幕截图。

修改用户主体名称

若要解决此问题,请修改用户的 UserPrincipalName 属性。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以修改 UserPrincipalName:

    Set-Mailbox user -UserPrincipalName user@fabrikam.com
    

修改 UserPrincipalName 是否解决了此问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,请参阅 策略错误

修改用户主体名称

若要解决此问题,请修改用户的 UserPrincipalName 属性。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以修改 UserPrincipalName:

    Set-Mailbox user -UserPrincipalName user@fabrikam.com
    

修改 UserPrincipalName 是否解决了此问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,请参阅 策略错误

策略错误

Exchange ActiveSync包括使用 ActiveSync 邮箱策略。 可用的设备设置取决于每台设备,并非所有设置都适用于所有设备。 若要确定 ActiveSync 邮箱策略是否是问题,请创建新的 ActiveSync 邮箱策略并将其分配给用户。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以创建新的 ActiveSync 邮箱策略:

    New-ActiveSyncMailboxPolicy -Name "Test ActiveSync Policy"
    
  3. 运行以下 cmdlet 将此新策略分配给邮箱:

    Set-CASMailbox user -ActiveSyncMailboxPolicy "Test ActiveSync Policy"
    

创建新的 ActiveSync 邮箱策略是否解决了此问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

确定影响

在开始排查此问题之前,必须确定环境中的影响。

有多少用户无法连接到Exchange ActiveSync?

检查 Active Directory 权限

验证用户对象权限是否未阻止连接问题。 为此,请按照下列步骤操作:

  1. 打开“Active Directory 用户和计算机”

  2. 转到“ 视图 ”菜单,然后选择“ 高级功能”。

  3. 找到用户对象并双击以查看属性。

  4. 转到“ 安全性 ”选项卡,然后选择“ 高级 ”按钮。

    “邮箱的高级安全设置”窗口的屏幕截图。

是否已启用 包含来自此对象的父对象的可继承权限

更新 Active Directory 权限

若要解决此问题,请修改用户对象权限以从对象的父级继承权限。 为此,请按照下列步骤操作:

  1. 打开“Active Directory 用户和计算机”

  2. 转到“ 视图 ”菜单,然后选择“ 高级功能”。

  3. 找到用户对象并双击以查看属性。

  4. 转到“ 安全性 ”选项卡,然后选择“ 高级 ”按钮。

  5. 启用 “包括来自此对象的父对象的可继承权限 ”,并选择“ 确定” 两次。

    启用“包括来自此对象的父级可继承权限”选项的屏幕截图。

修改用户对象的权限是否解决了此问题?

启用 ActiveSync 邮箱日志记录;捕获 fiddler 跟踪;分析 ActiveSync 邮箱日志

启用 ActiveSync 邮箱日志记录

需要在客户端访问服务器和邮箱上启用 ActiveSync 邮箱日志记录,以收集更详细的日志记录。 可 在此处找到有关邮箱日志记录的其他信息。 为此,请按照下列步骤操作:

注意

应在 Exchange 2013 邮箱服务器上进行此更改。

  1. 打开 Windows 资源管理器并浏览到同步文件夹 (C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\Sync) 。

  2. 创建 web.config 文件的副本。

  3. 在记事本中打开 web.config 文件,并使用以下值修改以下部分:

    在记事本中修改 web.config 文件的屏幕截图。

  4. 打开 IIS 管理器

  5. 展开服务器并选择“ 应用程序池”。

  6. 右键单击 “MSExchangeSyncAppPool” ,然后选择“ 停止”。

  7. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 启动”。

  8. 打开“Exchange 命令行管理程序”。

  9. 运行以下 cmdlet 为用户启用邮箱日志记录:

    Set-CASMailbox user -ActiveSyncDebugLogging:$True
    

捕获 fiddler 跟踪

ActiveSync 设备请求并不总是根据需要到达目标。 若要确保按预期发送和接收设备请求和响应,请通过 HTTP 代理路由设备并查看数据。 为此,请按照下列步骤操作:

  1. Fiddler 下载并安装到工作站上。
  2. 下载 适用于 Fiddler 的 EAS 检查器
  3. 将EASInspectorFiddler.dll 提取到 c:\Program Files\Fiddler2\Inspectors 文件夹中。
  4. 启动 Fiddler 应用程序。
  5. 选择“ 工具 ”菜单,然后选择“ Fiddler 选项”。
  6. 转到“ HTTPS ”选项卡,选择“ 解密 HTTPS 流量”,对所有提示选择“ ”。
  7. 转到“Connections”选项卡,选择“允许远程计算机连接”,在出现任何提示时选择“确定”。
  8. 选择“ 确定” 并关闭 Fiddler 应用程序。
  9. 将 ActiveSync 设备配置为将此工作站用作代理服务器 (这通常在设备的 WiFi 设置下) 完成。
  10. 启动 Fiddler 应用程序。
  11. 尝试从 ActiveSync 客户端 发送 一个或多个消息。
  12. 选择“ 文件 ”菜单,然后选择“ 捕获流量 ”以停止跟踪。

分析 ActiveSync 邮箱日志

现在我们已经收集了数据,我们准备开始进行故障排除。 我们将采取的第一步是查看邮箱日志,并检查是否捕获了该项目。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索用户的邮箱日志:

    Get-ActiveSyncDeviceStatistics -Mailbox user -GetMailboxLog:$True -NotificationEmailAddresses admin@contoso.com
    

    注意

    这会将 ActiveSync 邮箱日志发送到指定的电子邮件地址进行分析。 可 在此处找到有关邮箱日志记录的其他信息。

  3. 下载 MailboxLogParser 并提取文件。

  4. 通过打开 MailboxLogParser.exe启动实用工具。

  5. 选择“ 将邮箱日志导入网格 ”以打开邮箱日志。

  6. “搜索字符串的原始日志数据”下输入“SendMail”,然后选择“搜索”。

    屏幕截图:在“搜索字符串的原始日志数据”部分下输入 SendMail,然后选择“搜索”选项。

日志中是否显示 SendMail 命令?

如果看到 SendMail 记录) ,则 SendMail 状态代码检查 (

下面是 ActiveSync 邮箱日志中的一个示例搜索结果:

ActiveSync 邮箱日志中示例搜索结果的屏幕截图。

日志中 SendMail 命令的状态代码值是什么?

如果状态代码为 120 或 129) ,Exchange ActiveSync组织设置 (

注意

此功能在 Exchange 2007 中不可用。 如果组织正在运行 Exchange 2007,请单击页面末尾的“我正在运行 Exchange 2007”。 Exchange ActiveSync组织设置允许管理员设置 ActiveSync 设备的默认访问级别。 这些默认设置包括 “阻止”、“ 隔离”“允许”。 检查当前组织设置以确定环境中的当前默认访问级别。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以确定当前的组织设置:

    Get-ActiveSyncOrganizationSettings | ft DefaultAccessLevel
    

    屏幕截图显示了运行 Get-ActiveSyncOrganizationSettings cmdlet 的示例。

默认访问级别是否设置为“允许”?

修改Exchange ActiveSync组织设置

若要解决此问题,请修改 ActiveSync 组织设置。 为此,请按照下列步骤操作:

  1. 打开 Exchange 命令行管理程序。

  2. 运行以下 cmdlet 以确定当前的组织设置:

    Set-ActiveSyncOrganizationSettings -DefaultAccessLevel Allow
    

更改 ActiveSync 组织设置的 DefaultAccessLevel 设置是否解决了此问题?

Exchange ActiveSync设备访问规则

Exchange ActiveSync设备访问规则允许管理员根据设备特征创建访问组。 检查当前配置中是否有允许设备连接的任何设备访问规则。 为此,请按照下列步骤操作:

  1. 打开 Exchange 命令行管理程序。

  2. 运行以下 cmdlet 以查找访问级别设置为“允许”的任何设备访问规则:

    Get-ActiveSyncDeviceAccessRule | Where { $_.AccessLevel -eq "Allow" }
    

    屏幕截图显示了运行 Get-ActiveSyncDeviceAccessRule cmdlet 的示例。

是否存在与用户设备匹配且访问级别设置为“阻止”或“隔离”的设备访问规则?

如果匹配) , (修改 ActiveSync 设备访问规则

有两种方法可以解决此问题。 第一种方法是删除设备访问规则。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以创建设备访问规则:

    Remove-ActiveSyncDeviceAccessRule 'WindowsMail (DeviceType)'
    

    屏幕截图显示了运行 Remove-ActiveSyncDeviceAccessRule cmdlet 的示例。

第二种方法是修改现有设备访问规则的 AccessLevel。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以修改访问级别:

    Set-ActiveSyncDeviceAccessRule 'WindowsMail (DeviceType)' -AccessLevel Allow
    

    屏幕截图显示了运行 Set-ActiveSyncDeviceAccessRule cmdlet 的示例。

更新组织中的设备访问规则是否解决了此问题?

邮箱阻止的设备 ID

管理员可以配置不允许与邮箱同步的设备列表。 检查用户配置以确定是否已阻止设备同步。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以查找不允许同步的任何设备:

    Get-CASMailbox user | fl ActiveSyncBlockedDeviceIDs
    

    屏幕截图显示了运行 Get-CASMailbox cmdlet 的示例。

是否阻止用户的设备与用户的邮箱同步?

修改邮箱设置

若要解决此问题,请从邮箱的阻止列表中删除设备 ID。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以查找不允许同步的任何设备:

    Set-CASMailbox user -ActiveSyncBlockedDeviceIDs $null
    

有关详细信息,请参阅 Set-CASMailbox ,查看有关此 cmdlet 和可用选项的其他信息。

从邮箱的阻止列表中删除此设备 ID 是否解决了此问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,请参阅 Fiddler 跟踪分析

Fiddler 跟踪分析

你尝试从设备发送消息,因此应在 Fiddler 跟踪中看到请求。 可以使用 Fiddler 跟踪查看客户端发送的请求以及来自服务器的响应。 为此,请按照下列步骤操作:

  1. 打开 Fiddler 跟踪。

  2. 转到“编辑”菜单,然后选择“查找会话”。

  3. 输入 ActiveSync 并选择“查找会话”。

  4. 查看“结果”列,了解任何不等于 200 的 HTTP 响应值。

  5. 选择“ 正文 ”列具有值的请求。

    “正文”列具有值的请求的屏幕截图。

  6. 选择“TextView”选项卡以查看响应以了解其他详细信息。

    “TextView”选项卡的屏幕截图,其中显示了其他详细信息的响应。

Fiddler 跟踪中是否发现任何 HTTP 错误?

SendMail 状态代码检查

未找到任何 HTTP 错误,因此应找到 ActiveSync 响应的状态代码。 可以使用 Fiddler 跟踪查找这些响应。 为此,请按照下列步骤操作:

  1. 打开 Fiddler 跟踪。

  2. 转到“编辑”菜单,然后选择“查找会话”。

  3. 输入 ActiveSync 并选择“查找会话”。

  4. 查看“ 正文 ”列并查找较小的值。

    “正文”列中显示的小值的屏幕截图。

  5. 查看“EAS XML”选项卡,了解从设备收到的请求和响应

    显示“E A S X M L”选项卡的屏幕截图,其中显示了从设备收到的请求和响应。

响应窗口中会显示什么状态代码?

安装 Log Parser Studio;Log Parser Studio Query - SendMail;查询结果分析

安装 Log Parser Studio

ActiveSync 客户端在尝试与 Exchange 服务器通信时可能遇到错误。 现在,我们需要确定这些错误的来源。 我们将首先检查客户端访问服务器上的 IIS 日志。 在分析这些日志之前,将完成分析的工作站应安装 Log Parser Studio。 为此,请按照下列步骤操作:

  1. 下载并安装 LogParser

    • 双击 LogParser.msi 开始安装。
    • 如果显示“打开文件 - 安全警告”,请选择“运行”。
    • 在“欢迎”屏幕上,选择“ 下一步”。
    • 在“End-User 许可协议”屏幕上,查看并接受许可协议,然后选择“ 下一步”。
    • 在“选择安装程序类型”屏幕上,选择“ 完成”。
    • 在“准备安装”屏幕上,选择“ 安装”。
    • 在“完成”屏幕上,选择“ 完成”。
  2. 下载 Log Parser Studio 并提取文件。

安装 LogParser 并提取 Log Parser Studio 后,将 IIS 日志从 Exchange 服务器 () 复制到本地工作站进行分析。

Log Parser Studio Query – SendMail

若要确定其中任何 ActiveSync 请求是否导致错误,请在 IIS 日志中查询设备流量。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“ 添加文件” 或“ 添加文件夹” 按钮,然后找到并选择之前复制 () 的文件。

    “SendMail”部分中“日志文件管理器”窗口的屏幕截图。

  4. 验证文件/文件夹是否已选中,然后选择“确定”。

  5. 在库中双击“ ActiveSync: SendMail ”。

  6. 选择感叹号图标以执行查询。

  7. 通过查看“状态”、“错误”、“ABQ”和“sc-status”列来分析此查询的结果。

查询结果分析

以下示例显示了上一个查询的结果:

查询结果分析示例的屏幕截图。

你需要查看查询中是否有任何问题的结果。 为此,请按照下列步骤操作:

  1. 查看 “状态” 列,找到具有值的任何请求。 使用Exchange ActiveSync协议文档调查这些值,以及是否可以采取任何纠正措施。

  2. 查看 “错误” 列,并找到此列中存在值的任何请求。 其中许多错误消息是一目了然的,可以相应地采取纠正措施。

  3. 查看 sc-status 列,并找到具有 200 以外的值的任何请求。 这是来自 IIS 的 HTTP 状态响应,可在 IIS 7 及更高版本中的 HTTP 状态代码中找到其他信息。

分析 IIS 日志后,是否能够解决此问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

Exchange 远程连接分析器

若要确定用户是否可以成功连接到 Exchange,请使用用户帐户运行 Exchange 远程连接分析器。 为此,请按照下列步骤操作:

  1. 浏览到 Microsoft 远程连接分析器 站点。

  2. 从 Microsoft Exchange ActiveSync连接测试中选择“Exchange ActiveSync”,然后选择“下一步”。

  3. 输入所有必填字段,然后选择“ 执行测试”。

    在 Microsoft 远程连接分析器窗口中输入所有必填字段的屏幕截图。

    注意

    如果需要,请手动指定服务器设置以绕过自动发现用户设置请求。

Exchange 远程连接分析器测试是否失败?

分析 Exchange 远程连接分析器结果

若要解决此问题,请查看测试结果并解决发现的任何问题。 为此,请按照下列步骤操作:

  1. 选择“ 全展开”。

    Microsoft 远程连接分析器窗口中“全部展开”选项的屏幕截图。

  2. 在结果中找到错误, (应接近尾) 并解决问题

    屏幕截图显示了连接测试失败错误的详细信息。

是否已使用 Exchange 远程连接分析器结果解决该问题?

Exchange ActiveSync应用程序池

验证 MSExchangeSyncAppPool 是否已启动,并且它是否在 LocalSystem 下运行。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器

  2. 展开服务器并选择“应用程序池”。

    屏幕截图显示 MSExchangeSyncAppPool 的状态在“应用程序池”窗口中为“已启动”。

MSExchangeSyncAppPool 是否使用 LocalSystem 帐户启动?

修改 MSExchangeSyncAppPool

若要解决此问题,请修改 MSExchangeSyncAppPool 以使用 LocalSystem 帐户。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器

  2. 展开服务器并选择“ 应用程序池”。

  3. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 高级设置”。

  4. 通过选择“ LocalSystem”修改“标识”值。

    通过选择“LocalSystem”项修改“标识”值的屏幕截图。

  5. 右键单击 “MSExchangeSyncAppPool” ,然后选择“ 停止”。

  6. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 启动”。

更新 MSExchangeSyncAppPool 是否解决了此问题?

ActiveSync Virtual Directory 身份验证设置

验证 ActiveSync 虚拟目录上的身份验证设置。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检查虚拟目录设置:

    Get-ActiveSyncVirtualDirectory | ft server,basic*
    

ActiveSync 虚拟目录是否配置为使用基本身份验证?

修改 ActiveSync Virtual Directory 身份验证设置

若要解决此问题,请将 ActiveSync 虚拟目录配置为使用基本身份验证。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器

  2. 运行以下 cmdlet 以在虚拟目录上启用基本身份验证:

    Set-ActiveSyncVirtualDirectory ServerName\Microsoft* -BasicAuthEnabled:$True
    

为 ActiveSync 虚拟目录启用基本身份验证是否解决了该问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,请参阅 ActiveSync 默认域

ActiveSync 默认域

某些设备仅发送凭据的用户名值,这将导致身份验证失败。 验证是否在 ActiveSync 虚拟目录上配置了默认域值。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器

  2. 展开服务器、 网站默认网站,然后选择 Microsoft-Server-ActiveSync

  3. “功能视图”中,双击“ 身份验证”。

  4. 选择“基本身份验证”,然后在“操作”窗格中选择“编辑”。

    “编辑基本身份验证设置”窗口的屏幕截图。

“默认域”字段中是否存在值?

为 ActiveSync Virtual Directory 添加默认域

若要解决此问题,请为 ActiveSync 虚拟目录配置默认域。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器

  2. 展开服务器、 网站默认网站,然后选择 Microsoft-Server-ActiveSync

  3. “功能视图”中,双击“ 身份验证”。

  4. 选择“基本身份验证”,然后在“操作”窗格中选择“编辑”。

  5. 输入 “默认域 ”的值,然后选择“ 确定”。

    用于在“默认域”框中输入值的屏幕截图。

为 ActiveSync 虚拟目录启用默认域是否解决了此问题?

ActiveSync 虚拟目录 SSL 设置

验证 ActiveSync 虚拟目录未配置为需要客户端证书。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器

  2. 展开服务器、 网站默认网站,然后选择 Microsoft-Server-ActiveSync

  3. “功能视图”中,双击“ SSL 设置”。

    “I S 管理器”窗口中的“SS L 设置”页的屏幕截图。

客户端证书的 SSL 设置是否设置为“忽略”?

修改 ActiveSync 虚拟目录 SSL 设置

若要解决此问题,请将“客户端证书”设置设置为“忽略”。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器

  2. 展开服务器、 网站默认网站,然后选择 Microsoft-Server-ActiveSync

  3. “功能视图”中,双击“ SSL 设置”。

  4. “客户端证书”下,选择“ 忽略”

    “SS L 设置”页的屏幕截图,其中选择了“忽略”选项。

将客户端证书的 SSL 设置更改为“忽略”是否解决了此问题?

ActiveSync 虚拟目录 HTTP 重定向

在 IIS 7 中配置 HTTP 重定向时,重定向设置由该网站下的所有虚拟目录继承。 检查 ActiveSync 虚拟目录是否有 HTTP 重定向。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器

  2. 展开服务器、 网站默认网站,然后选择 Microsoft-Server-ActiveSync

  3. “功能视图”中,双击“ HTTP 重定向”。

    I S 管理器窗口中“H T T P 重定向”页的屏幕截图。

是否为 ActiveSync 虚拟目录配置了重定向?

修改 ActiveSync 虚拟目录 HTTP 重定向

若要解决此问题,请从 ActiveSync 虚拟目录中删除 HTTP 重定向。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器

  2. 展开服务器、 网站默认网站,然后选择 Microsoft-Server-ActiveSync

  3. “功能视图”中,双击“ HTTP 重定向”。

  4. 清除“将请求重定向到此目标”的“检查”框。

    用于清除“将请求重定向到此目标检查”框的屏幕截图。

从 ActiveSync 虚拟目录删除 HTTP 重定向是否解决了此问题?

已启用 ActiveSync 的邮箱

验证邮箱是否为 ActiveSync 启用。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检查邮箱设置:

    Get-CASMailbox user | fl ActiveSyncEnabled
    

    屏幕截图显示了运行 Get-CASMailbox cmdlet 的示例。

用户是否已启用 ActiveSync?

为 ActiveSync 启用用户

若要解决此问题,请为用户启用 ActiveSync。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet,为 ActiveSync 启用邮箱:

    Set-CASMailbox user -ActiveSyncEnabled:$True
    

    屏幕截图显示了运行 Set-CASMailbox cmdlet 的示例。

为 ActiveSync 启用邮箱是否解决了此问题?

Exchange ActiveSync协议文档审阅

SendMail 命令收到来自 Exchange 的意外状态代码响应。 若要了解遇到的错误,必须查看Exchange ActiveSync命令参考协议文档来排查问题。

你是否能够通过查看响应中的状态代码来解决此问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

Exchange ActiveSync组织设置

注意

此功能在 Exchange 2007 中不可用。 如果你的组织正在运行 Exchange 2007,请选择本部分末尾 的“我正在运行 Exchange 2007 ”。

Exchange ActiveSync组织设置允许管理员设置 ActiveSync 设备的默认访问级别。 这些默认设置包括 “阻止”、“ 隔离”“允许”。 检查当前组织设置以确定环境中的当前默认访问级别。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以确定当前的组织设置:

    Get-ActiveSyncOrganizationSettings | ft DefaultAccessLevel
    

    屏幕截图显示了运行 Set-ActiveSyncOrganizationSettings cmdlet 的示例。

默认访问级别是否设置为“允许”?

修改 ActiveSync 组织设置

若要解决此问题,请修改 ActiveSync 组织设置。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以确定当前的组织设置:

    Set-ActiveSyncOrganizationSettings -DefaultAccessLevel Allow
    

更改 ActiveSync 组织设置的 DefaultAccessLevel 设置是否解决了此问题?

安装 Log Parser Studio;Log Parser Studio 查询 - 对每个用户的 SyncKey 为零的同步计数

安装 Log Parser Studio

ActiveSync 客户端在尝试与 Exchange 服务器通信时可能遇到错误。 现在,我们需要确定这些错误的来源。 我们将首先检查客户端访问服务器上的 IIS 日志。 在分析这些日志之前,将完成分析的工作站应安装 Log Parser Studio。 为此,请按照下列步骤操作:

  1. 下载并安装 LogParser

    • 双击 LogParser.msi 开始安装。
    • 如果显示“打开文件 - 安全警告”,请选择“运行”。
    • 在“欢迎”屏幕上,选择“ 下一步”。
    • 在“End-User 许可协议”屏幕上,查看并接受许可协议,然后选择“ 下一步”。
    • 在“选择安装程序类型”屏幕上,选择“ 完成”。
    • 在“准备安装”屏幕上,选择“ 安装”。
    • 在“完成”屏幕上,选择“ 完成”。
  2. 下载 Log Parser Studio 并提取文件。

安装 LogParser 并提取 Log Parser Studio 后,将 IIS 日志从 Exchange 服务器 () 复制到本地工作站进行分析。

Log Parser Studio Query - 对每个用户的 SyncKey 为零的同步计数

若要确定设备是否正在与 Exchange 重新同步,请运行日志分析器查询以查找用户。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “每个用户的 SyncKey 计数”部分中“日志文件管理器”窗口的屏幕截图。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 从库中双击“ ActiveSync:对每个用户同步的同步计数”,其同步密钥为零

  6. 选择感叹号图标以执行查询。

  7. 分析此查询的结果。

    用于分析查询结果的屏幕截图。

是否有任何设备使用 SyncKey 值为 0 的多个请求?

检查文件级防病毒 (设备/CAS 性能) 延迟

在许多情况下,文件级防病毒会延迟请求或响应的处理,从而影响 ActiveSync 流量。 停止这些服务不会禁用这些服务使用的内核模式筛选器驱动程序。 若要禁用文件级防病毒,请按照 如何在 Windows 中暂时停用内核模式筛选器驱动程序中的步骤操作。 验证重启客户端访问服务器后内核模式筛选器驱动程序不再处于活动状态。 为此,请按照下列步骤操作:

  1. 打开命令提示符。

  2. 运行以下命令:

    fltmc
    
  3. 将结果与 本文 中的示例筛选器驱动程序进行比较,或在 Web 上搜索筛选器名称。

    屏幕截图显示了 fltmc 命令的输出。

禁用防病毒内核模式筛选器驱动程序是否解决了此问题?

邮件问题

选择 ActiveSync 客户端遇到的邮件问题类型。

仅存在于一个客户端上的项

报告的问题是出现在 Outlook 中的邮箱中,但不出现在 ActiveSync 客户端上的邮件,反之亦然。 在开始排查此问题之前,需要知道是否可以在 ActiveSync 客户端上重现该问题。 如果我们可以重现问题,则可以在此过程中捕获数据,以便更好地了解问题。 否则,我们需要检查现有日志以尝试确定所发生的情况。

是否可以在设备上重现日历问题?

安装 Log Parser Studio;Log Parser Studio Query - DeviceId 查询;查询结果分析;重新同步文件夹

安装 Log Parser Studio

日志分析器 Studio 查询 - DeviceId 查询

若要确定其中任何 ActiveSync 请求是否导致错误,请在 IIS 日志中查询设备流量。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以查找不允许同步的任何设备:

    Get-ActiveSyncDevice -Mailbox | fl DeviceId,DeviceType
    
  3. 双击“LPS.exe”启动 Log Parser Studio。

  4. 选择“日志文件夹”图标以选择要处理的文件。

  5. 选择“ 添加文件” 或“ 添加文件夹” 按钮,然后找到并选择之前复制 () 的文件。

    “DeviceId 查询”部分中“日志文件管理器”窗口的屏幕截图。

  6. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  7. 在“库”中双击“ActiveSync:设备查询”。

  8. DeviceId使用步骤 2 中的值修改查询末尾的 WHERE 子句中的值。

  9. 选择感叹号图标以执行查询。

  10. 通过查看“错误”和“sc-status”列来分析此查询的结果。

    用于分析设备查询结果的屏幕截图。

查询结果分析

现在,我们希望查看查询中是否存在任何问题的结果。 为此,请按照下列步骤操作:

  1. 查看 “状态” 列,找到具有值的任何请求。 使用Exchange ActiveSync协议文档调查这些值,以及是否可以采取任何纠正措施。

  2. 查看 “错误” 列,并找到此列中存在值的任何请求。 其中许多错误消息是一目了然的,可以相应地采取纠正措施。

  3. 查看 sc-status 列,并找到具有 200 以外的值的任何请求。 这是来自 IIS 的 HTTP 状态响应,可在 IIS 7 及更高版本中的 HTTP 状态代码中找到其他信息。

遗憾的是,IIS 日志的评审未显示有关项的任何标识符。 你将尽最大努力在 IIS 日志中查找请求,大约在发生最后一项更改的时间。 还可以使用文章了解Exchange ActiveSync Reporting Services来帮助你更好地了解 IIS 日志条目中找到的一些元素。

重新同步文件夹

前面的步骤有助于确定项目出现问题的原因。 ActiveSync 客户端可能仍然没有处于正确状态的项。 若要解决此问题,请从要同步的文件夹列表中删除该文件夹,等待大约五分钟,然后将该文件夹添加到要同步的文件夹列表中。

项在 ActiveSync 客户端上的状态是否正确?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

启用 ActiveSync 邮箱日志记录;捕获 fiddler 跟踪;使用 MfcMapi 查找项;在邮箱日志中搜索项目

启用 ActiveSync 邮箱日志记录

第一个故障排除步骤是在客户端访问服务器和邮箱上启用邮箱日志记录。 可以在邮箱日志记录Exchange ActiveSync找到有关邮箱日志记录的其他信息。 为此,请按照下列步骤操作:

注意

应在 Exchange 2013 邮箱服务器上进行此更改。

  1. 打开 Windows 资源管理器并浏览到同步文件夹 (C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\Sync) 。

  2. 创建 web.config 文件的副本。

  3. 在记事本中打开 web.config 文件,并使用以下值修改以下部分:

    在记事本中修改 web.config 文件的值的屏幕截图。

  4. 打开 IIS 管理器

  5. 展开服务器并选择“ 应用程序池”。

  6. 右键单击 “MSExchangeSyncAppPool” ,然后选择“ 停止”。

  7. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 启动”。

  8. 打开“Exchange 命令行管理程序”。

  9. 运行以下 cmdlet 为用户启用邮箱日志记录:

    Set-CASMailbox user -ActiveSyncDebugLogging:$True
    

捕获 fiddler 跟踪

ActiveSync 设备请求并不总是根据需要到达目标。 若要确保按预期发送和接收设备请求和响应,请通过 HTTP 代理路由设备并查看数据。 为此,请按照下列步骤操作:

  1. Fiddler 下载并安装到工作站上。
  2. 下载 适用于 Fiddler 的 EAS 检查器
  3. 将EASInspectorFiddler.dll 提取到 c:\Program Files\Fiddler2\Inspectors 文件夹中。
  4. 启动 Fiddler 应用程序。
  5. 选择“ 工具 ”菜单,然后选择“ Fiddler 选项”。
  6. 转到“ HTTPS ”选项卡,选择“ 解密 HTTPS 流量”,对所有提示选择“ ”。
  7. 转到“Connections”选项卡,选择“允许远程计算机连接”,在出现任何提示时选择“确定”。
  8. 选择“ 确定” 并关闭 Fiddler 应用程序。
  9. 配置 ActiveSync 设备以将此工作站用作代理服务器 (这通常在设备的 WiFi 设置下) 完成。
  10. 启动 Fiddler 应用程序。
  11. 尝试从 ActiveSync 客户端 发送 一个或多个消息。
  12. 选择“ 文件 ”菜单,然后选择“ 捕获流量 ”以停止跟踪。

使用 MfcMapi 查找项

在搜索邮箱日志之前,我们需要确定项目的 ConversationID。 为此,请按照下列步骤操作:

  1. 下载并安装 MfcMapi

  2. 启动 MfcMapi。

  3. 转到“ 会话 ”菜单,然后选择“ 登录”。

  4. 选择邮箱的 Outlook 配置文件,然后选择 “确定”。

  5. 双击要打开的邮箱。

  6. 展开 “根容器”,展开 “信息存储的顶部”,然后右键单击 “收件箱 ” (或项目所在的其他文件夹) 并选择“ 打开内容表”。

    屏幕截图显示了选择“打开内容”表项的步骤。

  7. 选择表中的项,右键单击标记0x00710102并选择 “编辑属性”。

    屏幕截图显示了选择“编辑”属性项的步骤。

  8. 复制 Binary 值。

    使用 MfcMapi 工具复制二进制值的屏幕截图。

在邮箱日志中搜索项目

现在我们已经收集了数据,我们准备开始进行故障排除。 我们将采取的第一步是查看邮箱日志,并检查是否捕获了该项目。

为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索用户的邮箱日志:

    Get-ActiveSyncDeviceStatistics -Mailbox user -GetMailboxLog:$True -NotificationEmailAddresses admin@contoso.com
    

    注意

    这会将 ActiveSync 邮箱日志发送到指定的电子邮件地址进行分析。 可在此处找到有关邮箱日志记录的其他信息。

  3. 下载 MailboxLogParser 并提取文件。

  4. 通过打开 MailboxLogParser.exe启动实用工具。

  5. 选择“ 将邮箱日志导入网格 ”以打开邮箱日志。

    邮箱日志分析器窗口中“将邮箱日志导入网格”按钮的屏幕截图。

在邮箱日志中搜索项目

  1. 从前面复制的二进制值中删除第一个字节 (或两个字符) 。 然后使用接下来的 5 个字节 (或 10 个字符) 搜索值。
    示例:01CEC1E829ED44997723AC344564BBEEF22D3A1A3373

  2. “搜索字符串的原始日志数据”中输入“步骤 1”中的值,然后选择“搜索

    在“搜索字符串的原始日志数据”框中输入值的屏幕截图。

  3. 从二进制值中) 接下来的 16 个字节 (或 32 个字符,并将该值与搜索结果中的 ConversationId 进行比较。
    示例:01CEC1E829ED44997723AC344564BBEEF22D3A1A3373

    字符串搜索结果的原始日志数据的屏幕截图。

  4. 记下该项的 ServerId 值。 上述示例的值为 5:11。

你能否使用 ConversationId 在邮箱日志中找到项目?

分析项目的邮箱日志;检查项目的最终状态

分析项目的邮箱日志

现在我们知道邮箱日志中有项目,因此需要跟踪针对约会执行的操作。 为此,请按照下列步骤操作:

  1. 搜索前面找到的 ServerId 值。

    用于搜索前面找到的 ServerId 值的屏幕截图。

  2. 向上滚动日志并查找 RequestBody 或 ResponseBody。 如果项出现在响应正文中,则该项已从服务器更新。 否则,该项将显示在请求正文中,这意味着该项是从客户端更新的。

    用于修改 MaxDocumentDataSize 值的屏幕截图。

  3. 记下 (添加、更改或删除) 的操作以及服务器或客户端是否发送了该操作。

  4. 重复步骤 2-4,直到找不到任何其他条目。

注意

有关Exchange ActiveSync邮箱日志记录分析的详细信息,请参阅幕后:Exchange ActiveSync邮箱日志分析

检查项目的最终状态

我们验证是否对邮箱日志中的项目执行了一个或多个操作。 项的最终结果取决于最终操作。 下面介绍了基于该操作的项的预期状态:

添加 - 项应位于 ActiveSync 客户端上的 文件夹中。 更改 - 应在 ActiveSync 客户端上的 文件夹中更新该项。 删除 - 应从 ActiveSync 客户端上的 文件夹中删除该项。

最终操作的结果是否满足项的预期状态?

项的 Fiddler 跟踪分析;检查项目的最终状态

项的 Fiddler 跟踪分析

Exchange 服务器上的活动指示设备应具有此约会的正确状态。 可以使用 Fiddler 跟踪来验证客户端是否收到了响应。 为此,请按照下列步骤操作:

  1. 打开 Fiddler 跟踪。

  2. 转到 “编辑 ”菜单,然后选择“ 查找会话”。

  3. 输入 ActiveSync 的命名空间 (示例:mail.contoso.com) 并选择“ 查找会话”。

  4. 选择“ 正文 ”列具有值的请求。

    屏幕截图显示了“正文”列具有值的请求

  5. 选择“ EAS XML ”选项卡以查看请求和响应。

    用于选择“E A S X M L”选项卡以查看请求和响应的屏幕截图。

  6. 找到之前找到的 ServerId 的所有请求和响应。

检查项目的最终状态

我们验证了对 Fiddler 跟踪中的项采取了一个或多个操作。 项的最终结果取决于最终操作。 下面介绍了基于该操作的项的预期状态:

添加 - 项应位于 ActiveSync 客户端上的 文件夹中。 更改 - 应在 ActiveSync 客户端上的 文件夹中更新该项。 删除 - 应从 ActiveSync 客户端上的 文件夹中删除该项。

最终操作的结果是否满足项的预期状态?

  • 如果是,很抱歉,无法使用本指南解决此问题。 根据这些故障排除步骤的结果,建议与设备供应商联系以获取进一步支持。 还可以联系Microsoft 支持部门以获取解决此问题的更多帮助。
  • 如果不是,请参阅 Fiddler 跟踪分析错误

如果结果不符合预期状态,则 fiddler 跟踪分析错误 ()

我们希望设备发送一个或多个请求以获取文件夹的最新更新。 可以使用 Fiddler 跟踪来验证请求是否由客户端发送,以及服务器是否收到了响应。 为此,请按照下列步骤操作:

  1. 打开 Fiddler 跟踪。

  2. 转到 “编辑 ”菜单,然后选择“ 查找会话”。

  3. 输入 ActiveSync 的命名空间 (示例:mail.contoso.com) 并选择“ 查找会话”。

  4. 查看“结果”列,了解任何不等于 200 的 HTTP 响应值。

  5. 选择“ 正文 ”列具有值的请求。

    “正文”列具有 值的请求的屏幕截图。

  6. 选择“ TextView ”选项卡以查看响应以了解其他详细信息。

    “TextView”选项卡的屏幕截图,其中显示了其他详细信息的响应。

Fiddler 跟踪中是否发现任何错误?

安装 Log Parser Studio;日志分析器 Studio 查询 - 设备查询;查询结果分析;重新同步文件夹

安装 Log Parser Studio

  1. 下载并安装 LogParser

    • 双击 LogParser.msi 开始安装。
    • 如果显示“打开文件 - 安全警告”,请选择“运行”。
    • 在“欢迎”屏幕上,选择“ 下一步”。
    • 在“End-User 许可协议”屏幕上,查看并接受许可协议,然后选择“ 下一步”。
    • 在“选择安装程序类型”屏幕上,选择“ 完成”。
    • 在“准备安装”屏幕上,选择“ 安装”。
    • 在“完成”屏幕上,选择“ 完成”。
  2. 下载 Log Parser Studio 并提取文件。

安装 LogParser 并提取 Log Parser Studio 后,将 IIS 日志从 Exchange 服务器 () 复制到本地工作站进行分析。

日志分析器 Studio 查询 - 设备查询

若要确定其中任何 ActiveSync 请求是否导致错误,请在 IIS 日志中查询设备流量。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“ 添加文件” 或“ 添加文件夹” 按钮,然后找到并选择之前复制 () 的文件。

    “设备查询”部分中“日志文件管理器”窗口的屏幕截图。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 在“库”中双击“ ActiveSync:设备查询 ”。

  6. 使用上一步中的值修改查询末尾的 WHERE 子句中的 DeviceId 值。

  7. 选择感叹号图标以执行查询。

  8. 通过查看“错误”和“sc-status”列来分析此查询的结果。

    分析设备查询结果的屏幕截图。

查询结果分析

现在,我们需要查看上一个查询的结果是否有任何错误。 为此,请按照下列步骤操作:

  1. 查看 “状态” 列,找到具有值的任何请求。 使用Exchange ActiveSync协议文档调查这些值,以及是否可以采取任何纠正措施。 (你可以忽略此 review 中的 Ping 命令。)

  2. 查看 “错误” 列,并找到此列中存在值的任何请求。 其中许多错误消息是一目了然的,可以相应地采取纠正措施。

  3. 查看 sc-status 列,并找到具有 200 以外的值的任何请求。 这是来自 IIS 的 HTTP 状态响应,可在 IIS 7 及更高版本中的 HTTP 状态代码中找到其他信息。

遗憾的是,IIS 日志的评审未显示有关项的任何标识符。 你将尽最大努力在 IIS 日志中查找请求,大约在发生最后一项更改的时间。

注意

还可以查看了解Exchange ActiveSync Reporting Services,以便更好地了解使用 IIS 日志条目找到的一些元素。

重新同步文件夹

前面的步骤有助于确定项目出现问题的原因。 ActiveSync 客户端可能仍然没有处于正确状态的项。 若要解决此问题,请从要同步的文件夹列表中删除该文件夹,等待大约五分钟,然后将该文件夹添加到要同步的文件夹列表中。

项在 ActiveSync 客户端上的状态是否正确?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

邮箱日志分析错误 (如果最终操作不符合预期状态)

此项的 ActiveSync 流量不会导致项目在设备上处于正确状态。 现在,我们需要进一步查看邮箱日志,了解文件夹的 ActiveSync 请求问题。 为此,请按照下列步骤操作:

  1. 查看上一步的搜索结果。
  2. 检查响应中的 状态 代码值,如果该值不等于 1,请查看 ActiveSync 协议文档 ,了解有关状态代码的详细信息。
  3. 此外,检查任何异常消息的日志条目。
  4. 对日历的每个日志条目重复步骤 2-4。

注意

有关Exchange ActiveSync邮箱日志记录分析的详细信息,请参阅幕后:Exchange ActiveSync邮箱日志分析

响应中是否有任何状态代码不等于 1,或者在邮箱日志中发现任何异常?

安装 Log Parser Studio;找到 User 的 DeviceId;日志分析器 Studio 查询 - 设备查询;查询结果分析

安装 Log Parser Studio

ActiveSync 客户端在尝试与 Exchange 服务器通信时可能遇到错误。 现在,我们需要确定这些错误的来源。 我们将首先检查客户端访问服务器上的 IIS 日志。 在分析这些日志之前,将完成分析的工作站应安装 Log Parser Studio。 为此,请按照下列步骤操作:

  1. 下载并安装 LogParser

    • 双击 LogParser.msi 开始安装。
    • 如果显示“打开文件 - 安全警告”,请选择“运行”。
    • 在“欢迎”屏幕上,选择“ 下一步”。
    • 在“End-User 许可协议”屏幕上,查看并接受许可协议,然后选择“ 下一步”。
    • 在“选择安装程序类型”屏幕上,选择“ 完成”。
    • 在“准备安装”屏幕上,选择“ 安装”。
    • 在“完成”屏幕上,选择“ 完成”。
  2. 下载 Log Parser Studio 并提取文件。

安装 LogParser 并提取 Log Parser Studio 后,将 IIS 日志从 Exchange 服务器 () 复制到本地工作站进行分析。

找到用户的 DeviceId

我们需要获取遇到问题的 ActiveSync 客户端的 DeviceId。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索 DeviceId:

    Get-ActiveSyncDeviceStatistics -Mailbox clt | fl DeviceId,DeviceType
    

    屏幕截图显示了运行 Get-ActiveSyncDeviceStatistics cmdlet 的示例。

  3. 记下 DeviceID 该值。

日志分析器 Studio 查询 - 设备查询

若要确定其中任何 ActiveSync 请求是否导致错误,请在 IIS 日志中查询设备流量。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“ 添加文件” 或“ 添加文件夹” 按钮,然后找到并选择之前复制 () 的文件。

    Log Parser Studio Query - Device Query 部分中“日志文件管理器”窗口的屏幕截图。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 在“库”中双击“ ActiveSync:设备查询 ”。

  6. 使用上一步中的值修改查询末尾的 WHERE 子句中的 DeviceId 值。

  7. 选择感叹号图标以执行查询。

  8. 通过查看“错误”和“sc-status”列来分析此查询的结果。

    设备查询结果的屏幕截图。

查询结果分析

现在,我们需要查看上一个查询的结果是否有任何错误。

在查询结果中发现了什么错误消息?

检查 ActiveSync 邮箱策略是否存在错误 AttachmentTooBig

若要确定是否存在 ActiveSync 邮箱策略设置导致 AttachmentTooBig 错误,检查分配给此邮箱的 ActiveSync 邮箱策略。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索此用户的 ActiveSync 邮箱策略设置:

    Get-ActiveSyncMailboxPolicy (Get-Mailbox alias ).ActiveSyncMailboxPolicy | ft name,*Attach* -AutoSize
    

    注意

    此 cmdlet 应仅返回一个结果。 如果在结果中收到多个策略,请使用“默认值”中的设置。

    Get-ActiveSyncMailboxPolicy 命令的示例输出的屏幕截图。

MaxAttachmentSize 设置是否设置为无限制?

检查邮件大小限制

若要确定最大邮件大小限制是否可能导致 AttachmentTooBig 错误,检查 Exchange 组织的传输设置。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索消息大小限制:

    Get-TransportConfig | fl *size
    

    Get-TransportConfig 命令的示例输出的屏幕截图。

MaxReceiveSize 或 MaxSendSize 限制是否大于 10 MB?

  • 如果是,请参阅修改Exchange ActiveSync设置
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

修改Exchange ActiveSync设置

若要解决此问题,请增加 ActiveSync 虚拟目录的最大数据传输量。 为此,请按照下列步骤操作:

重要

以下更改可能会导致移动设备上的数据费用增加。

  1. 打开 Windows Explorer。

  2. 浏览到 Exchange 安装路径 (%ExchangeInstallPath%) 然后浏览到 ClientAccessSync 目录。

  3. 创建 web.config 文件的副本。

  4. 在记事本中打开 web.config 文件。

  5. 找到 MaxDocumentDataSIze 并根据需要修改值。

    MaxDocumentDataSIze 值的屏幕截图。

    注意

    此值以字节为单位。

  6. 找到 MaxRequestLength 并根据需要修改值。

    MaxRequestLength 值的屏幕截图。

    注意

    此值以 KB 为单位。

  7. 打开 IIS 管理器

  8. 展开服务器并选择“ 应用程序池”。

  9. 右键单击 “MSExchangeSyncAppPool” ,然后选择“ 停止”。

  10. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 启动”。

修改 ActiveSync 设置是否解决了此问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

如果 MaxAttachmentSize 不是无限制) ,请修改 ActiveSync 邮箱策略 (

若要解决此问题,请在 ActiveSync 邮箱策略中增加最大附件大小限制。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以修改 ActiveSync 邮箱策略:

    Set-ActiveSyncMailboxPolicy Default -MaxAttachmentSize 20971520
    

    注意

    该值 MaxAttachmentSize 以字节为单位。 在上面的 cmdlet 中修改策略名称和大小,以满足你的需求。

增加 ActiveSync 邮箱策略中的最大附件大小是否解决了此问题?

启用 ActiveSync 邮箱日志记录;分析 ActiveSync 邮箱日志;使用 MfcMapi 查找附件

启用 ActiveSync 邮箱日志记录

若要确定导致失败的 ActiveSync 响应,必须启用邮箱日志记录。 可以在邮箱日志记录Exchange ActiveSync找到有关邮箱日志记录的其他信息。 为此,请按照下列步骤操作:

注意

应在 Exchange 2013 邮箱服务器上进行此更改。

  1. 打开 Windows 资源管理器并浏览到同步文件夹 (C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\Sync) 。

  2. 创建 web.config 文件的副本。

  3. 在记事本中打开 web.config 文件,并使用以下值修改以下部分:

    启用 ActiveSync 邮箱日志记录中需要修改的值的屏幕截图;分析邮箱日志;找到附件部分。

  4. 打开 IIS 管理器

  5. 展开服务器并选择“ 应用程序池”。

  6. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 高级设置”。

  7. 右键单击 “MSExchangeSyncAppPool” ,然后选择“ 停止”。

  8. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 启动”。

  9. 打开“Exchange 命令行管理程序”。

  10. 运行以下 cmdlet 为用户启用邮箱日志记录:

    Set-CASMailbox user -ActiveSyncDebugLogging:$True
    
  11. 尝试从 ActiveSync 客户端打开附件

分析 ActiveSync 邮箱日志

查看邮箱日志以确定用户尝试打开的附件。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索用户的邮箱日志:

    Get-ActiveSyncDeviceStatistics -Mailbox user -GetMailboxLog:$True -NotificationEmailAddresses admin@contoso.com
    

    注意

    这会将 ActiveSync 邮箱日志发送到指定的电子邮件地址进行分析。 有关邮箱日志记录的其他信息,请参阅Exchange ActiveSync邮箱日志记录

  3. 下载 MailboxLogParser 并提取文件。

  4. 通过打开 MailboxLogParser.exe启动实用工具。

  5. 选择“ 将邮箱日志导入网格 ”以打开邮箱日志。

    “分析 ActiveSync 邮箱日志”部分中邮箱日志分析器中“将邮箱日志导入网格”按钮的屏幕截图。

  6. “搜索字符串的原始日志数据”下输入 ObjectNotFound,然后选择“搜索”。

  7. 通过在日志条目中找到错误来查看搜索结果。 记下 FileReference 中的附件编号。 这是值中的最后一个数字: 5%3a12%3a0。 (完整值为 5:12:0,这是 ServerId 5:12.)

    搜索 ObjectNotFound 的结果的屏幕截图。

注意

有关Exchange ActiveSync邮箱日志记录分析的详细信息,请参阅幕后:Exchange ActiveSync邮箱日志分析

使用 MfcMapi 查找附件

我们需要确定邮件中是否存在附件。 为此,请按照下列步骤操作:

  1. 下载并安装 MfcMapi

  2. 启动 MfcMapi。

  3. 转到“ 会话 ”菜单,然后选择“ 登录”。

  4. 选择邮箱的 Outlook 配置文件,然后选择 “确定”。

  5. 双击要打开的邮箱。

  6. 展开 “根容器”,展开 “信息存储的顶部”,然后右键单击 “收件箱 ” (或项目所在的其他文件夹) 并选择“ 打开内容表”。

    “收件箱”的“打开内容表”选项的屏幕截图。

  7. 右键单击邮件,然后选择“ 附件>”“显示附件表”。

  8. 应看到邮件中的附件列表

    附件示例列表的屏幕截图。

是否在邮箱日志中看到带有 FileReference 编号的附件?

  • 如果是,请参阅 使用 Outlook 查看附件
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

使用 Outlook 查看附件

若要确定附件是否损坏,请要求用户在 Outlook 或 Outlook Web Access 中打开附件。

用户能否从其他客户端打开附件?

  • 如果是,请参阅 检查 ActiveSync 邮箱策略
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

检查 ActiveSync 邮箱策略

若要确定是否存在 ActiveSync 邮箱策略设置导致 AttachmentTooBig 错误,检查分配给此邮箱的 ActiveSync 邮箱策略。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索此用户的 ActiveSync 邮箱策略设置:

    Get-ActiveSyncMailboxPolicy (Get-Mailbox alias ).ActiveSyncMailboxPolicy | ft name,*Attach* -AutoSize
    

    注意

    此 cmdlet 应仅返回一个结果。 如果在结果中收到多个策略,请使用“默认值”中的设置。

    Get-ActiveSyncMailboxPolicy 命令输出的屏幕截图。

AttachmentsEnabled 设置是否设置为 True?

  • 如果是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。
  • 如果没有,请参阅 修改 ActiveSync 邮箱策略

修改 ActiveSync 邮箱策略

若要解决此问题,请在 ActiveSync 邮箱策略中增加最大附件大小限制。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以修改 ActiveSync 邮箱策略:

    Set-ActiveSyncMailboxPolicy Default -AttachmentsEnabled:$True
    

增加 ActiveSync 邮箱策略中的最大附件大小是否解决了此问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

无法发送消息

我们将排查用户无法从 ActiveSync 客户端发送消息的问题。

用户能否重现此问题?

启用 ActiveSync 邮箱日志记录;捕获 Fiddler 跟踪;邮箱日志分析错误

启用 ActiveSync 邮箱日志记录

第一步是在客户端访问服务器 () 和用户邮箱上启用邮箱日志记录。 可在此处找到有关邮箱日志记录的其他信息。 为此,请按照下列步骤操作:

注意

应在 Exchange 2013 邮箱服务器上进行此更改。

  1. 打开 Windows 资源管理器并浏览到同步文件夹 (C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\Sync) 。

  2. 创建 web.config 文件的副本。

  3. 在记事本中打开 web.config 文件,并使用以下值修改以下部分:

    启用 ActiveSync 邮箱日志记录中需要修改的值的屏幕截图;捕获 Fiddler 跟踪;邮箱日志分析部分。

  4. 打开 IIS 管理器

  5. 展开服务器并选择“ 应用程序池”。

  6. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 高级设置”。

  7. 右键单击 “MSExchangeSyncAppPool” ,然后选择“ 停止”。

  8. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 启动”。

  9. 打开“Exchange 命令行管理程序”。

  10. 运行以下 cmdlet 为用户启用邮箱日志记录:

    Set-CASMailbox user -ActiveSyncDebugLogging:$True
    
    

捕获 fiddler 跟踪

ActiveSync 设备请求并不总是根据需要到达目标。 若要确保按预期发送和接收设备请求和响应,请通过 HTTP 代理路由设备并查看数据。 为此,请按照下列步骤操作:

  1. Fiddler 下载并安装到工作站上。
  2. 下载 适用于 Fiddler 的 EAS 检查器
  3. 将EASInspectorFiddler.dll 提取到 c:\Program Files\Fiddler2\Inspectors 文件夹中。
  4. 启动 Fiddler 应用程序。
  5. 选择“ 工具 ”菜单,然后选择“ Fiddler 选项”。
  6. 转到“ HTTPS ”选项卡,选择“ 解密 HTTPS 流量”,对所有提示选择“ ”。
  7. 转到“Connections”选项卡,选择“允许远程计算机连接”,在出现任何提示时选择“确定”。
  8. 选择“ 确定” 并关闭 Fiddler 应用程序。
  9. 配置 ActiveSync 设备以将此工作站用作代理服务器 (这通常在设备的 WiFi 设置下) 完成。
  10. 启动 Fiddler 应用程序。
  11. 尝试从 ActiveSync 客户端 发送 一个或多个消息。
  12. 选择“ 文件 ”菜单,然后选择“ 捕获流量 ”以停止跟踪。

邮箱日志分析错误

ActiveSync 客户端发送此消息的请求不成功。 我们需要验证 Exchange 服务器是否收到了请求,并确定服务器是否发送了任何响应。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索用户的邮箱日志:

    Get-ActiveSyncDeviceStatistics -Mailbox user -GetMailboxLog:$True -NotificationEmailAddresses admin@contoso.com
    

    注意

    这会将 ActiveSync 邮箱日志发送到指定的电子邮件地址。 有关邮箱日志记录的其他信息,请参阅Exchange ActiveSync邮箱日志记录

  3. 下载 MailboxLogParser 并提取文件。

  4. 通过打开 MailboxLogParser.exe启动实用工具。

  5. 选择“ 将邮箱日志导入网格 ”以打开邮箱日志。

  6. “搜索字符串的原始日志数据”下输入“SendMail”,然后选择“搜索”。

  7. 通过检查 Satus 列是否有任何值来查看搜索结果

注意

有关Exchange ActiveSync邮箱日志记录分析的详细信息,请参阅幕后:Exchange ActiveSync邮箱日志分析

邮箱日志中是否存在任何错误或异常?

如果邮箱日志) 中没有错误,则 fiddler 跟踪分析 (错误

我们希望设备发送一个或多个请求以获取文件夹的最新更新。 可以使用 Fiddler 跟踪来验证请求是否由客户端发送,以及服务器是否收到了响应。 为此,请按照下列步骤操作:

  1. 打开 Fiddler 跟踪。

  2. 转到 “编辑 ”菜单,然后选择“ 查找会话”。

  3. 输入 ActiveSync 的命名空间 (示例:mail.contoso.com) 并选择“ 查找会话”。

  4. 查看“结果”列,了解任何不等于 200 的 HTTP 响应值。

  5. 选择“ 正文 ”列具有值的请求。

    用于选择“正文”列具有值的请求的屏幕截图。

  6. 选择“ TextView ”选项卡以查看响应以了解其他详细信息。

    Fiddler 错误跟踪分析部分中“TextView”选项卡的屏幕截图,其中显示了有关其他详细信息的响应。

Fiddler 跟踪中是否发现任何错误?

安装 Log Parser Studio;Log Parser Studio Query - SendMail;查询结果分析 ((如果没有用户可以重现问题)

安装 Log Parser Studio

ActiveSync 客户端在尝试与 Exchange 服务器通信时可能遇到错误。 现在,我们需要确定这些错误的来源。 我们将首先检查客户端访问服务器上的 IIS 日志。 在分析这些日志之前,将完成分析的工作站应安装 Log Parser Studio。 为此,请按照下列步骤操作:

  1. 下载并安装 LogParser

    • 双击 LogParser.msi 开始安装。
    • 如果显示“打开文件 - 安全警告”,请选择“运行”。
    • 在“欢迎”屏幕上,选择“ 下一步”。
    • 在“End-User 许可协议”屏幕上,查看并接受许可协议,然后选择“ 下一步”。
    • 在“选择安装程序类型”屏幕上,选择“ 完成”。
    • 在“准备安装”屏幕上,选择“ 安装”。
    • 在“完成”屏幕上,选择“ 完成”。
  2. 下载 Log Parser Studio 并提取文件。

安装 LogParser 并提取 Log Parser Studio 后,将 IIS 日志从 Exchange 服务器 () 复制到本地工作站进行分析。

Log Parser Studio Query – SendMail

若要确定其中任何 ActiveSync 请求是否导致错误,请在 IIS 日志中查询设备流量。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“ 添加文件” 或“ 添加文件夹” 按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中选择了“安装 LPS”中之前复制的文件;SendMail 查询;查询结果分析 ((如果没有用户可以重现) 节)。

  4. 验证文件/文件夹是否已选中,然后选择“确定”。

  5. 在库中双击“ ActiveSync: SendMail ”。

  6. 选择感叹号图标以执行查询。

  7. 通过在“状态”或“错误”列中搜索任何值来分析此查询的结果。 另请查找不等于 200 的任何 HTTP 状态代码。

    SendMail 查询结果的屏幕截图。

查询结果分析

现在,我们需要查看上一个查询的结果是否有任何错误。

在查询结果中发现了什么错误?

QutoaExceeded 错误

此错误报告用户已超出其邮箱配额,无法发送任何邮件。 若要解决此问题,请增加用户的邮箱存储配额或通知用户减小其邮箱大小。

这些选项之一是否解决了问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

NoRecipients 错误

此错误报告用户尝试在没有任何收件人的情况下发送邮件。 设备不应允许此行为。 你可能想要查看此设备的邮箱日志和/或 Fiddler 跟踪,以验证 SendMail 命令是否包含一个或多个收件人。

你能否验证设备是否在请求中发送了一个或多个收件人?

  • 如果是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 根据这些故障排除步骤的结果,建议与设备供应商联系以获取进一步支持。 还可以联系Microsoft 支持部门以获取解决此问题的更多帮助。

MailSubmissionFailed 错误

MailSubmissionFailed 错误实质上是针对 SendMail 失败的所有错误消息的捕获。 用户应再次尝试发送消息。 在提交此邮件时,请检查邮箱服务器事件日志中是否有任何错误或警告。

你能否使用邮箱服务器上的事件日志解决问题?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

日历问题

在开始故障排除之前,我们需要知道是否可以在设备上重现该问题。 如果我们可以重现问题,则可以在此过程中捕获数据,以便更好地了解问题。 否则,我们需要检查现有日志以尝试确定所发生的情况。

是否可以在设备上重现日历问题?

启用 ActiveSync 邮箱日志记录;捕获 fiddler 跟踪;在邮箱中查找约会;搜索 UID

启用 ActiveSync 邮箱日志记录

第一步是在客户端访问服务器 () 和用户邮箱上启用邮箱日志记录。 可在此处找到有关邮箱日志记录的其他信息。 为此,请按照下列步骤操作:

注意

应在 Exchange 2013 邮箱服务器上进行此更改。

  1. 打开 Windows 资源管理器并浏览到同步文件夹 (C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\Sync) 。

  2. 创建 web.config 文件的副本。

  3. 在记事本中打开 web.config 文件,并使用以下值修改以下部分:

    启用 ActiveSync 邮箱日志记录中需要修改的值的屏幕截图;捕获 fiddler 跟踪;找到约会;搜索 UID 部分。

  4. 打开 IIS 管理器

  5. 展开服务器并选择“ 应用程序池”。

  6. 右键单击 “MSExchangeSyncAppPool” ,然后选择“ 停止”。

  7. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 启动”。

  8. 打开“Exchange 命令行管理程序”。

  9. 运行以下 cmdlet 为用户启用邮箱日志记录:

    Set-CASMailbox user -ActiveSyncDebugLogging:$True
    

捕获 fiddler 跟踪

ActiveSync 设备请求并不总是根据需要到达目标。 若要确保按预期发送和接收设备请求和响应,请通过 HTTP 代理路由设备并查看数据。 为此,请按照下列步骤操作:

  1. Fiddler 下载并安装到工作站上。
  2. 下载 适用于 Fiddler 的 EAS 检查器
  3. 将EASInspectorFiddler.dll 提取到 c:\Program Files\Fiddler2\Inspectors 文件夹中。
  4. 启动 Fiddler 应用程序。
  5. 选择“ 工具 ”菜单,然后选择“ Fiddler 选项”。
  6. 转到“ HTTPS ”选项卡,选择“ 解密 HTTPS 流量”,对所有提示选择“ ”。
  7. 转到“Connections”选项卡,选择“允许远程计算机连接”,在出现任何提示时选择“确定”。
  8. 选择“ 确定” 并关闭 Fiddler 应用程序。
  9. 配置 ActiveSync 设备以将此工作站用作代理服务器 (这通常在设备的 WiFi 设置下) 完成。
  10. 启动 Fiddler 应用程序。
  11. 尝试从 ActiveSync 客户端 发送 一个或多个消息。
  12. 选择“ 文件 ”菜单,然后选择“ 捕获流量 ”以停止跟踪。

在邮箱中查找约会

在搜索邮箱日志之前,我们需要确定邮箱中约会的 UID。 为此,请按照下列步骤操作:

  1. 下载并安装 MfcMapi

  2. 启动 MfcMapi。

  3. 转到“ 会话 ”菜单,然后选择“ 登录”。

  4. 选择邮箱的 Outlook 配置文件,然后选择 “确定”。

  5. 双击要打开的邮箱。

  6. 展开 “根容器”,展开 “信息存储的顶部”,然后右键单击 “日历 ”并选择“ 打开内容表”。

    Calender 的“打开内容表”选项的屏幕截图。

  7. 在表中选择约会,然后右键单击标记0x80000102并选择 “编辑属性”。

    标记0x80000102的“编辑属性”选项的屏幕截图。

  8. 复制 二进制 值 (这将用于在邮箱日志) 中搜索 UID。

    标记0x80000102的二进制值的屏幕截图。

搜索 UID

现在我们已经收集了数据,我们准备开始进行故障排除。 我们将采取的第一步是查看邮箱日志,并检查是否已捕获约会。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索用户的邮箱日志:

    Get-ActiveSyncDeviceStatistics -Mailbox user -GetMailboxLog:$True -NotificationEmailAddresses admin@contoso.com
    

    注意

    这会将 ActiveSync 邮箱日志发送到指定的电子邮件地址进行分析。 可以在邮箱日志记录Exchange ActiveSync找到有关邮箱日志记录的其他信息。

  3. 下载 MailboxLogParser 并提取文件。

  4. 通过打开 MailboxLogParser.exe启动实用工具。

  5. 选择“ 将邮箱日志导入网格 ”以打开邮箱日志。

  6. 在“ 搜索字符串的原始日志数据 ”下输入之前复制的 UID 值,然后选择“ 搜索”。

    邮箱日志分析器中“搜索字符串的原始日志数据”框的屏幕截图。

  7. 查看搜索结果,并记下此约会的 ServerId 值(如果找到)

    搜索结果的屏幕截图,其中显示了 ServerId。

你能否使用 UID 在邮箱日志中找到约会?

分析 UID 的邮箱日志;检查约会的最终状态

分析 UID 的邮箱日志

现在,我们知道我们的邮箱日志中有约会,我们需要跟踪针对约会执行的操作。 为此,请按照下列步骤操作:

  1. 搜索前面找到的 UID 值。

    邮箱日志分析器中搜索框的屏幕截图。

  2. 查看结果并分析日志条目。 检查日志并查找 RequestBody 或 ResponseBody。 如果项出现在响应正文中,则该项已从服务器更新。 否则,该项将显示在请求正文中,这意味着该项是从客户端更新的。

    示例日志条目的屏幕截图。该项显示在响应正文中。

  3. 记下 (添加、更改或删除) 的操作以及服务器或客户端是否发送了该操作。

  4. 重复步骤 2-4,直到找不到任何其他条目。

    注意

    有关Exchange ActiveSync邮箱日志记录分析的详细信息,请参阅幕后:Exchange ActiveSync邮箱日志分析

检查约会的最终状态

我们验证是否对邮箱日志中的约会采取了一个或多个操作。 约会的最终结果取决于最终操作。 下面介绍了基于该操作的约会的预期状态:

  • 添加 - 约会应位于 ActiveSync 客户端上的“日历”中。
  • 更改 - 应在 ActiveSync 客户端上的日历中更新约会。
  • 删除 - 应从 ActiveSync 客户端上的日历中删除约会。

最终操作的结果是否满足约会的预期状态?

UID 的 Fiddler 跟踪分析;检查约会的最终状态

UID 的 Fiddler 跟踪分析

我们希望设备发送与此约会相关的请求。 可以使用 Fiddler 跟踪来验证请求是否由客户端发送,以及服务器是否收到了响应。 为此,请按照下列步骤操作:

  1. 打开 Fiddler 跟踪。

  2. 转到“编辑”菜单,然后选择“查找会话”。

  3. 输入 ActiveSync 的命名空间 (示例:mail.contoso.com) 并选择“查找会话”。

  4. 选择“ 正文 ”列的值和不等于 200 的 HTTP 响应值的请求。

    fiddler 跟踪结果中请求的屏幕截图。

  5. 选择“EAS XML”选项卡以查看请求和响应。

    EAS XML 选项卡的屏幕截图,其中显示了请求和响应详细信息。

  6. 找到之前找到的 ServerId 的所有请求和响应。

检查约会的最终状态

我们需要验证针对 Fiddler 跟踪中的约会执行的操作是否与邮箱日志一致。 最后一个操作应与之前找到的邮箱日志操作匹配。 下面介绍了基于该操作的约会的预期状态:

  • 添加 - 约会应位于 ActiveSync 客户端上的“日历”中。
  • 更改 - 应在 ActiveSync 客户端上的日历中更新约会。
  • 删除 - 应从 ActiveSync 客户端上的日历中删除约会。

最终操作的结果是否满足约会的预期状态?

  • 如果是,很抱歉,无法使用本指南解决此问题。 根据这些故障排除步骤的结果,建议与设备供应商联系以获取进一步支持。 还可以联系Microsoft 支持部门以获取解决此问题的更多帮助。
  • 如果不是,请参阅 Fiddler 跟踪分析错误

约会) 的错误 (邮箱日志分析

此约会的 ActiveSync 流量不会导致约会在设备上处于正确状态。 现在,我们需要进一步查看邮箱日志,了解日历文件夹的 ActiveSync 请求问题。 为此,请按照下列步骤操作:

  1. 查看前面的搜索结果。

    前面搜索结果的屏幕截图。

  2. 检查响应的 “状态” 列,如果值不等于 1,请查看 ActiveSync 协议文档 ,详细了解状态代码。

  3. 此外,检查任何异常消息的日志条目。

注意

有关Exchange ActiveSync邮箱日志记录分析的详细信息,请参阅幕后:Exchange ActiveSync邮箱日志分析

响应中是否有任何状态代码不等于 1,或者在邮箱日志中发现任何异常?

  • 如果是,很抱歉,无法使用本指南解决此问题。 根据这些故障排除步骤的结果,建议与设备供应商联系以获取进一步支持。 还可以联系Microsoft 支持部门以获取解决此问题的更多帮助。
  • 如果不是,请参阅 Fiddler 跟踪分析错误

Fiddler 跟踪分析错误

根据邮箱日志的结果,客户端在客户端和 Exchange 之间没有遇到任何 ActiveSync 流量错误。 接下来,我们需要验证来自设备的所有请求是否未遇到错误。 为此,请按照下列步骤操作:

我们希望设备发送一个或多个请求以获取文件夹的最新更新。 可以使用 Fiddler 跟踪来验证请求是否由客户端发送,以及服务器是否收到了响应。 为此,请按照下列步骤操作:

  1. 打开 Fiddler 跟踪。

  2. 转到“编辑”菜单,然后选择“查找会话”。

  3. 输入 ActiveSync 的命名空间 (示例:mail.contoso.com) 并选择“查找会话”。

  4. 查看“结果”列,了解任何不等于 200 的 HTTP 响应值。

  5. 选择“ 正文 ”列具有值的请求。

    用于选择“正文”列具有 值的请求的屏幕截图。

  6. 选择“ TextView ”选项卡以查看响应以了解其他详细信息。

    Fiddler 错误跟踪分析部分中“TextView”选项卡的屏幕截图,其中显示了有关其他详细信息的响应。

在日历请求的 Fiddler 跟踪中是否发现任何错误?

安装 Log Parser Studio;日志分析器 Studio 查询 - 设备日历请求;查询结果分析;重新同步日历文件夹

安装 Log Parser Studio

ActiveSync 客户端在尝试与 Exchange 服务器通信时可能遇到错误。 现在,我们需要确定这些错误的来源。 我们将首先检查客户端访问服务器上的 IIS 日志。 在分析这些日志之前,将完成分析的工作站应安装 Log Parser Studio。 为此,请按照下列步骤操作:

  1. 下载并安装 LogParser

    • 双击 LogParser.msi 开始安装。
    • 如果显示“打开文件 - 安全警告”,请选择“运行”。
    • 在“欢迎”屏幕上,选择“ 下一步”。
    • 在“End-User 许可协议”屏幕上,查看并接受许可协议,然后选择“ 下一步”。
    • 在“选择安装程序类型”屏幕上,选择“ 完成”。
    • 在“准备安装”屏幕上,选择“ 安装”。
    • 在“完成”屏幕上,选择“ 完成”。
  2. 下载 Log Parser Studio 并提取文件。

安装 LogParser 并提取 Log Parser Studio 后,将 IIS 日志从 Exchange 服务器 () 复制到本地工作站进行分析。

日志分析器 Studio 查询 - 设备日历请求

我们需要确定来自此 ActiveSync 客户端的请求在客户端访问服务器上处理时是否遇到任何问题。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中选择了“安装 LPS”中之前复制的文件;设备日历请求;查询结果分析;重新同步日历文件夹部分。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 从库中双击“ ActiveSync:对每个用户同步的同步计数”,其同步密钥为零

  6. 选择感叹号图标以执行查询。

    示例结果:

    使用 SyncKey 为零每个用户查询的“计数同步”示例结果的屏幕截图。

查询结果分析

现在,我们希望查看查询中是否存在任何问题的结果。 为此,请按照下列步骤操作:

  1. 查看 “状态” 列,找到具有值的任何请求。 使用Exchange ActiveSync协议文档调查这些值,以及是否可以采取任何纠正措施。

  2. 查看 “错误” 列,并找到此列中存在值的任何请求。 其中许多错误消息是一目了然的,可以相应地采取纠正措施。

  3. 查看 sc-status 列,并找到具有 200 以外的值的任何请求。 这是来自 IIS 的 HTTP 状态响应,可在 IIS 7 及更高版本中的 HTTP 状态代码中找到其他信息。

遗憾的是,IIS 日志的评审未显示有关约会的任何标识符。 你将尽最大努力在 IIS 日志中查找请求,大约在发生上次约会更改的时间。 还可以使用本文了解Exchange ActiveSync Reporting Services来帮助更好地了解 IIS 日志条目中找到的一些元素。

重新同步日历文件夹

前面的步骤有助于确定约会出现问题的原因。 ActiveSync 客户端可能没有处于正确状态的约会。 若要解决此问题,请从要同步的文件夹列表中删除日历,等待大约五分钟,然后将日历添加到要同步的文件夹列表中。

ActiveSync 客户端上的约会状态是否正确?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

准备数据分析;Log Parser Studio 查询 - 对每个用户的 SyncKey 为零的同步计数

准备数据分析

ActiveSync 客户端在尝试与 Exchange 服务器通信时可能遇到错误。 现在,我们需要确定这些错误的来源。 我们将首先检查客户端访问服务器上的 IIS 日志。 在分析这些日志之前,将完成分析的工作站应安装 Log Parser Studio。 为此,请按照下列步骤操作:

  1. 下载并安装 LogParser

    • 双击 LogParser.msi 开始安装。
    • 如果显示“打开文件 - 安全警告”,请选择“运行”。
    • 在“欢迎”屏幕上,选择“ 下一步”。
    • 在“End-User 许可协议”屏幕上,查看并接受许可协议,然后选择“ 下一步”。
    • 在“选择安装程序类型”屏幕上,选择“ 完成”。
    • 在“准备安装”屏幕上,选择“ 安装”。
    • 在“完成”屏幕上,选择“ 完成”。
  2. 下载 Log Parser Studio 并提取文件。

安装 LogParser 并提取 Log Parser Studio 后,将 IIS 日志从 Exchange 服务器 () 复制到本地工作站进行分析。

Log Parser Studio 查询 - 对每个用户的 SyncKey 为零的同步计数

若要确定设备是否正在与 Exchange 重新同步,请运行日志分析器查询以查找用户。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在“准备数据分析”中选择了先前复制的文件;使用 SyncKey 的“按用户零”部分计算同步次数。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 从库中双击“ ActiveSync:对每个用户同步的同步计数”,其同步密钥为零

  6. 选择感叹号图标以执行查询。

  7. 分析此查询的结果。

    同步计数的屏幕截图,SyncKey 为零每个用户查询的结果。

是否有任何设备使用 SyncKey 值为 0 的多个请求?

Log Parser Studio Query - 如果 SyncKey 值为 0) ,则设备查询 (

若要确定设备发送 0 的 SyncKey 的原因,请在重新同步请求之前分析设备活动。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在“准备数据分析”中选择了先前复制的文件;Log Parser Studio Query - 对 SyncKey 为零的“每个用户”部分的同步计数。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 在“库”中双击“ ActiveSync:设备查询 ”。

  6. 使用上一步中的值修改查询末尾的 WHERE 子句中的 DeviceId 值。

  7. 选择感叹号图标以执行查询。

  8. 通过将 SyncKey 列中的值设置为 0 的请求来分析此查询的结果。 然后查看前面的请求,其中 Cmd=Sync 和 检查 sc-status 值为 5xx。

    选择 SyncKey 列中值为 0 的请求时查询结果的屏幕截图。

示例:在上图中,在包含 SyncKey 值为 0 的请求之前有多个同步请求。 这些请求均未收到来自 IIS 的 HTTP 500 响应。 存在一个 已知问题 ,即多个 HTTP 500 响应将导致设备重新同步。

此同步请求是否会导致 HTTP 状态代码 500?

启用失败的请求跟踪;失败的请求跟踪日志记录分析

启用失败的请求跟踪

若要确定 HTTP 500 错误的原因,请在 Microsoft-Server-ActiveSync 虚拟目录上启用失败的请求跟踪。 为此,请按照下列步骤操作:

  1. 打开 IIS 管理器
  2. 展开服务器,展开 “网站”,然后选择“ 默认网站”。
  3. 在“操作”窗格中选择“失败的请求跟踪”。
  4. 选择 “启用” ,并根据需要输入其他目录路径,然后选择“ 确定”。
  5. 展开 “默认网站 ”并选择 Microsoft-Server-ActiveSync 虚拟目录。
  6. “功能视图”中,双击“ 失败的请求跟踪规则”。
  7. “操作”窗格中选择“添加”。
  8. 选择“ 所有 内容”,然后选择“ 下一步”。
  9. 输入之前在分析 IIS 日志时找到的 HTTP 状态代码,然后选择“ 下一步”。
  10. 选择“完成”

启用失败的请求跟踪后,通过在设备上尝试另一个同步来重现连接问题。

失败的请求跟踪日志记录分析

若要解决此问题,请查看失败的请求跟踪日志以确定原因。 下面是一组日志示例,请求摘要提供了有关错误的基本信息:

失败请求跟踪日志的屏幕截图。

然后,查看“压缩视图”选项卡时,将提供其他详细信息,包括提供的用户名。

“压缩视图”选项卡的屏幕截图,其中包括提供的用户名。

是否使用失败的请求跟踪日志解决了问题?

设备活动分析

若要确定以前的请求是否导致设备发送 SyncKey 值 0,请查看上一个查询的结果。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在“启用失败请求跟踪”中选择了先前复制的文件;失败的请求跟踪日志记录分析部分。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 从库中双击“ ActiveSync:请求并出现 ActiveSync 错误 ”。

  6. 选择感叹号图标以执行查询。

  7. 通过引用设备 CmdStatus 响应来分析此查询的结果。 使用 ActiveSync 协议文档 作为参考。 例如,导致状态大于 2 的任何 Ping 请求都是错误,应进一步调查。 导致状态大于 1 的任何 同步 请求都是错误,应进一步调查。

是否存在任何导致错误状态代码的请求?

查看协议文档

若要确定状态响应代码表示的内容,请使用 ActiveSync 命令引用协议规范。 为此,请按照下列步骤操作:

  1. 打开 ActiveSync 命令引用协议规范
  2. 查看上一个查询中是否有任何错误的结果,并研究 Status 值。
  3. 根据协议文档中显示的原因解决问题。

上一步中执行的查询的示例结果:

包含 ActiveSync 错误的请求查询结果详细信息的屏幕截图。

这些结果显示 Ping 命令导致状态代码为 3。 使用 ActiveSync 协议文档,此错误是由设备发送的请求引起的。 设备应发送另一个 Ping 请求。

结果的屏幕截图显示 Ping 命令导致状态代码为 3。

结果还显示了一个 Sync 命令,该命令收到了状态代码为 4 的响应。 再次,此错误是由设备发送的请求引起的。

结果的屏幕截图显示了一个 Sync 命令,该命令收到了状态代码为 4 的响应。

是否在响应中使用 ActiveSync 状态解决了问题?

如果未解决问题 (捕获 fiddler 跟踪)

ActiveSync 设备请求并不总是根据需要到达目标。 若要确保按预期发送和接收设备请求和响应,请通过 HTTP 代理路由设备并查看数据。 为此,请按照下列步骤操作:

  1. Fiddler 下载并安装到工作站上。

  2. 下载 适用于 Fiddler 的 EAS 检查器

  3. 将EASInspectorFiddler.dll 提取到 c:\Program Files\Fiddler2\Inspectors 文件夹中。

  4. 启动 Fiddler 应用程序。

  5. 选择“ 工具 ”菜单,然后选择“ Fiddler 选项”。

  6. 转到“ HTTPS ”选项卡,选择“ 解密 HTTPS 流量”,对所有提示选择“ ”。

  7. 转到“Connections”选项卡,选择“允许远程计算机连接”,在出现任何提示时选择“确定”。

  8. 选择“ 确定” 并关闭 Fiddler 应用程序。

  9. 将 ActiveSync 设备配置为将此工作站用作代理服务器。

  10. 启动 Fiddler 应用程序。

  11. 尝试同步 ActiveSync 设备。

  12. 选择“ 文件 ”菜单,然后选择“ 捕获流量 ”以停止跟踪。

    Fiddler 中捕获的 HTTPS 流量的屏幕截图。

是否看到 ActiveSync 请求收到 500 HTTP 响应?

如果看到 500 HTTP 响应) ,请重新预配 ActiveSync 客户端 (

若要解决此问题,请重新预配 ActiveSync 客户端。 为此,请按照下列步骤操作:

  1. 按照设备指南删除邮箱的当前 ActiveSync 配置文件
  2. 按照设备准则为邮箱创建 ActiveSync 配置文件

重新预配 ActiveSync 客户端是否解决了此问题?

Fiddler 跟踪分析 (接收 500 个 HTTP 响应)

Fiddler 跟踪显示 ActiveSync 设备未收到来自其目标的成功响应。 需要进一步分析跟踪,以确定响应的来源。 为此,请按照下列步骤操作:

**示例:用户使用 Windows 邮件应用访问电子邮件。 设备当前未收到新邮件,右上角显示一条错误消息,指出邮箱不可用:

邮箱不可用错误消息的屏幕截图。

Fiddler 跟踪分析显示与 Exchange 服务器的连接导致 HTTP 500 错误。

Fiddler 跟踪分析的屏幕截图。

HTTP 响应分析显示内部服务器错误,错误的详细信息指示问题。 在此示例中,TMG 服务器场中的所有服务器都已清空,因此 TMG 没有请求的可用目标。

HTTP 响应分析的 TextView 的屏幕截图。

Fiddler 跟踪分析是否有助于解决此问题?

日志分析器 Studio 查询 - 对每个 SyncKey 的所有同步进行计数

若要确定设备是否向 Exchange 发送同一文件夹的同一 SyncKey,请运行与此问题关联的日志分析器查询。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在 Log Parser Studio 查询 - 按 SyncKey 计算所有同步数部分选择了之前复制的文件。

  4. 验证文件/文件夹是否已选中,然后选择“确定”。

  5. 双击“ ActiveSync:统计库中每个 SyncKey 的所有同步 数”。

  6. 选择感叹号图标以执行查询。

  7. 分析此查询的结果。

是否有任何设备为同一文件夹多次发送同一 SyncKey?

Log Parser Studio Query - 设备查询 (设备多次发送同一 SyncKey)

若要确定客户端是否应发送相同的 SyncKey,检查 ActiveSync 响应中的状态代码。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在“设备查询 (设备多次) 发送同一 SyncKey”部分选择了之前复制的文件。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 在“库”中双击“ ActiveSync:设备查询 ”。

  6. 选择感叹号图标以执行查询。

  7. 分析此查询的结果。

是否存在任何 状态 值不等于 1 的请求?

重新预配 ActiveSync 客户端

若要解决此问题,请重新预配 ActiveSync 客户端。 为此,请按照下列步骤操作:

  1. 按照设备指南删除邮箱的当前 ActiveSync 配置文件
  2. 按照设备准则为邮箱创建 ActiveSync 配置文件

重新预配 ActiveSync 客户端是否解决了此问题?

查看协议文档 (状态等于 1)

若要确定状态响应代码表示的内容,请使用 ActiveSync 命令引用协议规范。 为此,请按照下列步骤操作:

  1. 打开 ActiveSync 命令引用协议规范
  2. 查看上一个查询中是否有任何错误的结果,并研究 Status 值。
  3. 根据协议文档中显示的原因解决问题。

上一步中执行的查询的示例结果:

查询结果详细信息示例的屏幕截图。

这些结果显示 Ping 命令导致状态代码为 3。 使用 ActiveSync 协议文档,此错误是由设备发送的请求引起的。 设备应发送另一个 Ping 请求。

结果的屏幕截图显示 Ping 命令导致状态代码为 3。

结果还显示了一个 Sync 命令,该命令收到了状态代码为 4 的响应。 再次,此错误是由设备发送的请求引起的。

结果的屏幕截图显示了一个 Sync 命令,该命令收到了状态代码为 4 的响应。

此问题是否已通过解决 ActiveSync 错误得到解决?

Log Parser Studio 查询 - RPC 计数或延迟较高

若要确定 ActiveSync 请求是否导致资源消耗,请运行关联的日志分析器查询。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在 Log Parser Studio 查询 - 高 RPC 计数或延迟部分中选择了之前复制的文件。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 从库中双击“ ActiveSync:高 RPC 计数或延迟 ”。

  6. 选择感叹号图标以执行查询。

  7. 分析此查询的结果。

是否有任何具有高 RPC 计数或延迟的请求?

为用户禁用Exchange ActiveSync

若要解决此问题,请为导致 RPC 计数过高的用户禁用 ActiveSync。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以禁用邮箱的 ActiveSync:

    Set-CASMailbox user -ActiveSyncEnabled:$False
    

禁用此邮箱的 ActiveSync 是否解决了此问题?

如果禁用 ActiveSync 解决了问题) ,则重新预配 ActiveSync 客户端 (

若要解决此问题,请重新预配 ActiveSync 客户端。 为此,请按照下列步骤操作:

1.按照设备指南删除邮箱的当前 ActiveSync 配置文件。 2.按照设备指南为邮箱创建 ActiveSync 配置文件。

重新预配 ActiveSync 客户端是否解决了此问题?

启用 ActiveSync 邮箱日志记录;分析 ActiveSync 邮箱日志

启用 ActiveSync 邮箱日志记录

若要确定导致失败的 ActiveSync 响应,必须启用邮箱日志记录。 可以在邮箱日志记录Exchange ActiveSync找到有关邮箱日志记录的其他信息。 为此,请按照下列步骤操作:

注意

应在 Exchange 2013 邮箱服务器上进行此更改。

  1. 打开 Windows 资源管理器并浏览到同步文件夹 (C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\Sync) 。

  2. 创建 web.config 文件的副本。

  3. 在记事本中打开 web.config 文件,并使用以下值修改以下部分:

    启用 ActiveSync 邮箱日志记录中需要修改的值的屏幕截图;分析 ActiveSync 邮箱日志部分。

  4. 打开 IIS 管理器

  5. 展开服务器并选择“ 应用程序池”。

  6. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 高级设置”。

  7. 右键单击 “MSExchangeSyncAppPool” ,然后选择“ 停止”。

  8. 右键单击 “MSExchangeSyncAppPool ”,然后选择“ 启动”。

  9. 打开“Exchange 命令行管理程序”。

  10. 运行以下 cmdlet 为用户启用邮箱日志记录:

    Set-CASMailbox user -ActiveSyncDebugLogging:$True
    

分析 ActiveSync 邮箱日志

若要解决此问题,请在尝试另一个同步请求后查看邮箱日志。 为此,请按照下列步骤操作:

  1. 打开“Exchange 命令行管理程序”。

  2. 运行以下 cmdlet 以检索用户的邮箱日志:

    Get-ActiveSyncDeviceStatistics -Mailbox user -GetMailboxLog:$True -NotificationEmailAddresses admin@contoso.com
    

    注意

    这会将 ActiveSync 邮箱日志发送到指定的电子邮件地址进行分析。 可 在此处找到有关邮箱日志记录的其他信息。

  3. 下载 MailboxLogParser 并提取文件。

  4. 通过打开 MailboxLogParser.exe启动实用工具。

  5. 选择“ 将邮箱日志导入网格 ”以打开邮箱日志。

  6. “搜索字符串的原始日志数据”下输入“Cmd=Sync”,然后选择“搜索”。

    邮箱日志分析器中“搜索字符串的原始日志数据”框的屏幕截图。

  7. 查看“状态”列值不为空或 1 的任何条目。

注意

有关Exchange ActiveSync邮箱日志记录分析的详细信息,请参阅幕后:Exchange ActiveSync邮箱日志分析

查看 ActiveSync 邮箱日志是否解决了此问题?

日志分析器 Studio 查询 - 计算所有错误

若要确定设备是否正在生成错误,请运行关联的日志分析器查询。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在 Log Parser Studio 查询 - 计算所有错误部分选择了之前复制的文件。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 双击“ ActiveSync:统计库中的所有错误

  6. 选择感叹号图标以执行查询

  7. 分析此查询的结果。

    Log Parser Studio 查询中“统计所有错误”查询结果的屏幕截图 - 报表 [前 20 个];“设备查询”部分。

    注意

    可以安全地忽略以下错误:MissingCscCacheEntry、PingCollisionDetected、SyncCollisionDetected

  8. 解决结果中发现的错误。

是否通过解决 IIS 日志中的 ActiveSync 错误解决了该问题?

日志分析器 Studio 查询 - 报表 [前 20 个];日志分析器 Studio 查询 - 设备查询

日志分析器 Studio 查询 - 报表 [前 20 个]

若要确定一个或多个用户是否导致了性能问题,请运行关联的日志分析器查询来识别这些用户。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在 Log Parser Studio Query - Report [Top 20] 部分中选择了之前复制的文件。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 在“库”中双击“ ActiveSync:报表[前 20 个] ”。

  6. 选择感叹号图标以执行查询。

  7. 分析此查询的结果

    报表 [前 20 个] 的查询结果示例的屏幕截图。

必须分析这些结果,以确定用户 () 发送到 Exchange 服务器的流量类型。

日志分析器 Studio 查询 - 设备查询

若要确定设备流量,请使用关联的日志分析器查询分析设备活动。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在“Log Parser Studio 查询 - 设备查询”部分选择了之前复制的文件。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 从库中双击“ ActiveSync:设备查询

  6. 使用上一步中的值修改查询末尾的 WHERE 子句中的 DeviceId 值。

  7. 选择感叹号图标以执行查询。

  8. 分析此查询的结果并查找任何趋势。

    设备查询结果的屏幕截图。

是否能够通过识别用户活动中的模式来解决此问题?

捕获性能数据;分析性能数据

捕获性能数据

若要确定 Exchange 服务器 () 是否遇到性能问题,请从每个 Exchange 服务器捕获性能数据。 为此,请按照下列步骤操作:

  1. 下载 ExPerfwiz 并将内容提取到 %ExchangeInstallPath%\Scripts 文件夹。

  2. 打开“Exchange 命令行管理程序”。

  3. 运行以下命令以更改文件夹路径:

    cd $exscripts
    
  4. 运行以下 cmdlet 以允许脚本运行:

    Set-ExecutionPolicy unrestricted
    
  5. 输入 Y 以更改执行策略。

  6. 运行以下命令以创建数据收集器集:

    .\ExPerfwiz.ps1 -duration 04:00:00 -full -filepath c:\Temp -interval 5
    
  7. 输入 R 以运行脚本。

  8. 输入 Y 以启动数据收集器集。

分析性能数据

若要解决此问题,请分析性能数据并解决发现的任何问题。 为此,请按照下列步骤操作:

  1. 等待数据收集器集完成上一步的数据收集, (命令语法) 收集数据 4 小时。
  2. 打开性能监视器。
  3. 在控制台窗格工具栏中,选择“ 添加日志数据 ”按钮。 “性能监视器属性”页将在“”选项卡上打开。
  4. 在“数据源”部分中,选择“ 日志文件>添加”。
  5. 浏览到要查看的日志文件,然后选择“ 打开”。 若要将多个日志文件添加到性能监视器视图,请再次选择“添加”。
  6. 选择完日志文件后,选择“ 确定”。
  7. 右键单击显示性能监视器并选择“添加计数器”。 将打开“ 添加计数器 ”对话框。 只有日志文件中包含的计数器或步骤 4 中选择的文件才可用。
  8. 选择要在性能监视器图中查看的计数器,然后选择“确定”。
  9. 使用 性能和可伸缩性计数器和阈值 一文验证环境中的性能数据。

问题是否由地址服务器性能问题解决?

  • 如果是,恭喜,ActiveSync 问题已解决。
  • 如果不是,很抱歉,无法使用本指南解决此问题。 有关解决此问题的更多帮助,请联系 Microsoft 支持部门。 联系支持人员时,请准备好从此故障排除中收集的所有数据。

日志分析器 Studio 查询错误

若要确定这些错误是否导致性能问题,请针对这些错误运行日志分析器查询。 为此,请按照下列步骤操作:

  1. 双击“LPS.exe”启动 Log Parser Studio。

  2. 选择“日志文件夹”图标以选择要处理的文件。

  3. 选择“添加文件”或“添加文件夹”按钮,然后找到并选择之前复制 () 的文件。

    “日志文件管理器”窗口的屏幕截图,其中在 Log Parser Studio 查询错误部分选择了之前复制的文件。

  4. 验证文件/文件夹是否已选中,然后选择“ 确定”。

  5. 转到“ 文件 ”菜单,然后选择“ 新建>查询”。

  6. 在窗口中输入以下查询:

    SELECT * FROM '[LOGFILEPATH]' WHERE cs-uri-query LIKE '%KeepAliveFailure%'
    

    注意

    将 KeepAliveFailure 替换为在上一步中找到的错误。

  7. 选择感叹号图标以执行查询。

  8. 分析此查询的结果,并尝试确定错误的原因。 在以下示例中, KeepAliveFailure 仅当请求具有对另一个站点中的 CAS 服务器的 PrxTo 时发生 。 在这里,我们希望调查两个站点之间的网络连接问题。

    Log Parser Studio 查询错误的屏幕截图。

是否能够通过解决 IIS 日志中发现的 ActiveSync 错误来解决此问题?

检查文件级防病毒

在许多情况下,文件级防病毒会延迟请求或响应的处理,从而影响 ActiveSync 流量。 停止这些服务不会禁用这些服务使用的内核模式筛选器驱动程序。 若要禁用文件级防病毒,请按照 如何在 Windows 中暂时停用内核模式筛选器驱动程序中的步骤操作。 验证重启客户端访问服务器后内核模式筛选器驱动程序不再处于活动状态。 为此,请按照下列步骤操作:

  1. 打开命令提示符。

  2. 运行以下命令:

    fltmc
    
  3. 将结果与 本文 中的示例筛选器驱动程序进行比较,或在 Web 上搜索筛选器名称。

    fltmc 命令输出的屏幕截图。

禁用防病毒内核模式筛选器驱动程序是否解决了此问题?