使用 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. 转到 “安全” 选项卡,然后选择 “高级 ”按钮。

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

是否已启用 此对象父级的 Include 可继承 权限?

更新 Active Directory 权限

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

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

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

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

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

  5. 从此对象的父级启用 Include 可继承权限,并选择“确定”两次。

    从此对象的父选项启用 Include 可继承权限的屏幕截图。

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

启用 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. 转到“连接”选项卡,然后选择 “允许远程计算机连接”,选择 “确定 ”以显示任何提示。
  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) ,则发送邮件状态代码检查 (

下面是 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 后,请将 Exchange 服务器 () 中的 IIS 日志复制到本地工作站进行分析。

Log Parser Studio Query - SendMail

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

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

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

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

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

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

  5. 双击 ActiveSync: 来自库的 SendMail。

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

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

查询结果分析

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

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

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

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

  2. 查看 “错误 ”列,并找到此列中有值的任何请求。 其中许多错误消息都是自我解释的,可以相应地采取纠正措施。

  3. 查看 sc 状态 列,并找到包含 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 虚拟目录身份验证设置

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

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

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

    Get-ActiveSyncVirtualDirectory | ft server,basic*
    

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

修改 ActiveSync 虚拟目录身份验证设置

若要解决此问题,请将 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 虚拟目录添加默认域

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

  1. 打开 IIS 管理器

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

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

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

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

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

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

ActiveSync 虚拟目录 SSL 设置

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

  1. 打开 IIS 管理器

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

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

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

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

修改 ActiveSync 虚拟目录 SSL 设置

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

  1. 打开 IIS 管理器

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

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

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

    “S S 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 Query - Count Syncs with SyncKey of Zero Per User

安装 Log Parser Studio

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

  1. 下载并安装 LogParser

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

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

Log Parser Studio Query - Count Syncs with SyncKey of Zero Per User

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

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

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

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

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

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

  5. 双击 ActiveSync:从库中将 SyncKey 与 SyncKey 的 SyncKey 计数为零

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

  7. 分析此查询的结果。

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

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

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

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

  1. 打开命令提示符。

  2. 运行以下命令:

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

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

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

邮件问题

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

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

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

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

安装 Log Parser Studio;日志分析器工作室查询 - DeviceId 查询;查询结果分析;重新同步文件夹

安装 Log Parser Studio

Log Parser 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 状态”列来分析此查询的结果。

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

查询结果分析

现在,我们想要查看查询中有关任何问题的结果。 为此,请按照下列步骤操作:

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

  2. 查看 “错误 ”列,并找到此列中有值的任何请求。 其中许多错误消息都是自我解释的,可以相应地采取纠正措施。

  3. 查看 sc 状态 列,并找到包含 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. 转到“连接”选项卡,然后选择 “允许远程计算机连接”,选择 “确定 ”以显示任何提示。
  8. 选择 “确定 ”并关闭 Fiddler 应用程序。
  9. 将 ActiveSync 设备配置为将此工作站用作代理服务器 (通常在设备) 的 WiFi 设置下完成。
  10. 启动 Fiddler 应用程序。
  11. 尝试从 ActiveSync 客户端 发送 一条或多条消息。
  12. 选择 “文件” 菜单,然后选择 “捕获流量 ”以停止跟踪。

使用 MfcMapi 查找项

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

  1. 下载并安装 MfcMapi

  2. 启动 MfcMapi。

  3. 转到 “会话 ”菜单并选择 “登录”。

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

  5. 双击要打开的邮箱。

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

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

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

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

  8. 复制 二进制 值。

    使用 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;日志分析器工作室查询 - 设备查询;查询结果分析;重新同步文件夹

安装 Log Parser Studio

  1. 下载并安装 LogParser

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

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

日志分析器工作室查询 - 设备查询

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

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

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

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

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

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

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

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

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

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

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

查询结果分析

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

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

  2. 查看 “错误 ”列,并找到此列中有值的任何请求。 其中许多错误消息都是自我解释的,可以相应地采取纠正措施。

  3. 查看 sc 状态 列,并找到包含 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;找到 DeviceId for User;日志分析器工作室查询 - 设备查询;查询结果分析

安装 Log Parser Studio

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

  1. 下载并安装 LogParser

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

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

查找适用于用户的 DeviceId

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

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

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

    Get-ActiveSyncDeviceStatistics -Mailbox clt | fl DeviceId,DeviceType
    

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

  3. 记下该 DeviceID 值。

日志分析器工作室查询 - 设备查询

若要确定这些 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 状态”列来分析此查询的结果。

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

查询结果分析

现在,我们想要查看上一个查询的结果,了解任何错误。

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

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

若要确定是否存在导致 AttachmentTooBig 错误的 ActiveSync 邮箱策略设置,请检查分配给此邮箱的 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设置

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

重要

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

  1. 打开 Windows Explorer。

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

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

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

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

    MaxDocumentDataSIze 值的屏幕截图。

    注意

    此值以字节为单位。

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

    MaxRequestLength 值的屏幕截图。

    注意

    此值为千字节。

  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.) 附件 0

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

注意

有关Exchange ActiveSync邮箱日志记录分析的详细信息,请参阅“胡德下:Exchange ActiveSync邮箱日志分析”。

使用 MfcMapi 查找附件

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

  1. 下载并安装 MfcMapi

  2. 启动 MfcMapi。

  3. 转到 “会话 ”菜单并选择 “登录”。

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

  5. 双击要打开的邮箱。

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

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

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

  8. 应会在邮件中看到附件列表

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

是否看到一个附件,其中包含邮箱日志中找到的 FileReference 编号?

使用 outlook 查看附件

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

用户是否能够从另一个客户端打开附件?

检查 ActiveSync 邮箱策略

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

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

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

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

    注意

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

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

AttachmentsEnabled 设置是否设置为 True?

修改 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. 转到“连接”选项卡,然后选择 “允许远程计算机连接”,选择 “确定 ”以显示任何提示。
  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 后,请将 Exchange 服务器 () 中的 IIS 日志复制到本地工作站进行分析。

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. 转到“连接”选项卡,然后选择 “允许远程计算机连接”,选择 “确定 ”以显示任何提示。
  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. 选择 “正文 ”列具有值和 HTTP 响应值不等于 200 的请求。

    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;日志分析器工作室查询 - 设备日历请求;查询结果分析;重新同步日历文件夹

安装 Log Parser Studio

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

  1. 下载并安装 LogParser

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

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

日志分析器工作室查询 - 设备日历请求

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

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

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

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

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

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

  5. 双击 ActiveSync:从库中将 SyncKey 与 SyncKey 的 SyncKey 计数为零

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

    示例结果:

    Count Syncs 与 SyncKey 的每个用户零查询的示例结果的屏幕截图。

查询结果分析

现在,我们想要查看查询中有关任何问题的结果。 为此,请按照下列步骤操作:

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

  2. 查看 “错误 ”列,并找到此列中有值的任何请求。 其中许多错误消息都是自我解释的,可以相应地采取纠正措施。

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

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

重新同步日历文件夹

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

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

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

准备数据分析;Log Parser Studio Query - Count Syncs with SyncKey of Zero Per User

准备数据分析

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

  1. 下载并安装 LogParser

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

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

Log Parser Studio Query - Count Syncs with SyncKey of Zero Per User

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

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

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

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

    “日志文件管理器”窗口的屏幕截图,其中前面在“准备数据分析”中选择了复制的文件;将 Syncs 与 SyncKey 计数为“每个用户零”部分。

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

  5. 双击 ActiveSync:从库中将 SyncKey 与 SyncKey 的 SyncKey 计数为零

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

  7. 分析此查询的结果。

    Count Syncs 与 SyncKey(每个用户查询结果为零)的屏幕截图。

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

日志分析器工作室查询 - 如果使用 SyncKey 值 0) ,则设备查询 (

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

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

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

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

    “日志文件管理器”窗口的屏幕截图,其中前面在“准备数据分析”中选择了复制的文件;Log Parser Studio Query - Count Syncs with SyncKey of Zero Per User section.

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

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

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

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

  8. 通过查找 SyncKey 列中的值为 0 的请求来分析此查询的结果。 然后查看 之前的 Cmd=Sync 请求,并检查 sc 状态值是否为 5xx。

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

示例:在上面的图像中,请求之前有多个 Sync 请求,其中包含 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. 选择“完成”

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

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

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

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

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

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

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

  • 如果是,请恭喜,你的 ActiveSync 问题已解决。
  • 如果没有,请参阅 捕获 Fiddler 跟踪

设备活动分析

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

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

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

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

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

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

  5. 双击 ActiveSync:来自库的 ActiveSync 错误请求

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

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

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

查看协议文档

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

  1. 打开 ActiveSync 命令引用协议规范
  2. 查看上一查询中有关任何错误的结果,并研究“状态”值。
  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. 转到“连接”选项卡,然后选择 “允许远程计算机连接”,选择 “确定 ”以显示任何提示。

  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 跟踪分析是否有助于解决问题?

Log Parser Studio 查询 - 按 SyncKey 计算所有同步数

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

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

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

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

    日志文件管理器窗口的屏幕截图,其中之前在 Log Parser Studio Query 中选择了复制的文件 - 按 SyncKey 计入所有同步。

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

  5. 双击 ActiveSync:从库中对每个 SyncKey 的所有同步进行计数

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

  7. 分析此查询的结果。

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

Log Parser Studio 查询 - 设备查询 (设备多次发送相同的 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. 查看上一查询中有关任何错误的结果,并研究“状态”值。
  3. 根据协议文档中所示的原因解决这些问题。

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

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

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

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

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

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

问题是通过解决 ActiveSync 错误来解决的吗?

日志分析器工作室查询 - RPC 计数或延迟较高

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

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

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

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

    日志文件管理器窗口的屏幕截图,其中之前在 Log Parser Studio Query - 高 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 邮箱日志是否解决了此问题?

日志分析器工作室查询 - 计算所有错误

若要确定设备是否正在生成错误,请运行关联的日志分析器查询。 为此,请按照下列步骤操作:

  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 错误来解决吗?

日志分析器工作室查询 - 报表 [前 20 名];日志分析器工作室查询 - 设备查询

日志分析器工作室查询 - 报表 [前 20 名]

若要确定一个或多个用户是否参与性能问题,请运行关联的 Log Parser 查询来标识这些用户。 为此,请按照下列步骤操作:

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

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

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

    日志文件管理器窗口的屏幕截图,其中前面在 Log Parser Studio Query - Report [Top 20] 部分中选择了之前复制的文件。

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

  5. 双击 “ActiveSync:从库中报告[前 20 名] ”。

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

  7. 分析此查询的结果

    报表 [前 20 名] 的查询结果示例的屏幕截图。

必须分析这些结果,以确定用户发送到 Exchange 服务器 () 的流量类型。

日志分析器工作室查询 - 设备查询

若要确定设备流量,请使用关联的 Log Parser 查询分析设备活动。 为此,请按照下列步骤操作:

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

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

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

    日志文件管理器窗口的屏幕截图,其中前面在 Log Parser Studio Query - Device Query 部分中选择了复制的文件。

  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 支持部门。 联系支持人员时,请提供从此故障排除中收集的所有数据。

日志 Parser 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 命令输出的屏幕截图。

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