Winsock 跟踪

简介

Winsock 跟踪是一项故障排除功能,可在零售二进制文件中启用该功能,以最少的开销跟踪某些 Windows 套接字事件。 将零售跟踪添加到 Windows 套接字的目标是为开发人员和产品支持提供更好的诊断功能。 Winsock 网络事件跟踪支持跟踪 IPv4 和 IPv6 应用程序的套接字操作。 Winsock 目录更改跟踪支持跟踪分层服务提供商 (LSP) 对 Winsock 目录所做的更改。 Windows Vista 及更高版本支持 Winsock 跟踪。

注意

分层服务提供程序已弃用。 从Windows 8和Windows Server 2012开始,请使用 Windows 筛选平台

 

当套接字上发生意外错误时,诊断问题的main线索是返回的错误代码。 通常,返回的错误代码不会解释错误发生的原因,尤其是当错误由基础网络传输发起时。 Winsock 跟踪提供了更详细的跟踪级别,可以记录其他信息,以捕获缓冲区损坏和编写不当的应用程序。

Winsock 跟踪使用 Windows 事件跟踪 (ETW) ,这是操作系统提供的常规用途高速跟踪工具。 ETW 使用内核中实现的缓冲和日志记录机制,为用户模式应用程序和内核模式设备驱动程序引发的事件提供跟踪机制。 此外,ETW 使你能够动态启用和禁用日志记录,从而可以轻松地在生产环境中执行详细跟踪,而无需重新启动或重启应用程序。 日志记录机制使用由异步编写器线程写入磁盘的缓冲区。 这允许大规模服务器应用程序以最少的干扰写入事件。 ETW 最初是在 Windows 2000 上引入的。 Windows Vista 及更高版本上添加了对使用 ETW 的 Winsock 跟踪的支持。 有关 ETW 的一般信息,请参阅 使用 ETW 改进调试和性能优化

只能在操作系统级别为计算机上运行的所有进程和线程启用 Winsock 跟踪。 目前无法仅为单个进程或线程启用 Winsock 跟踪。 启用 Winsock 网络事件跟踪后,将跟踪计算机上 (IPv4 和 IPv6) 的所有套接字应用程序。

以下主题更详细地介绍了 Winsock 跟踪:

使用 ETW 改善调试和性能优化

调试和跟踪设施