写点什么

更进一层的.Net 事件跟踪机制

  • 2012-07-18
  • 本文字数:698 字

    阅读完需:约 2 分钟

.NET 4.5 新增了 EventSource EventListener 两个类,为那些使用 Windows 事件跟踪 (Event Tracing for Windows, ETW) 工具来记录事件的应用程序提供了一个更加简单的编程机制。若与 PerfView 这样的分析工具结合在一起,便能更好地发挥.NET 应用程序中的跟踪功能。

.NET 4.5 引入的 EventSource 类是一个可供开发人员继承和扩展他们自己的事件源的基类。开发人员可以给他们想要记录的每个不同事件类型添加新的方法——这些方法会在适当的位置被应用程序调用。从代码级别来分析,这些方法都会调用 WriteEvent() 这一方法,它会依次发送事件给设定好的 EventListener ,其中包括会发送日志信息给 ETW 的内置侦听器。 Vance Morrison 对此做了详细介绍

Vance 发布的一份参考指南" Strongly Typed Events (EasyETW) "中提到:

ETW 是 Windows 下一个高效的事件系统,它不仅在 Windows 核心层,而且在许多 Windows 子系统中都得到了广泛运用。内置 ETW 源提供了丰富的‘底层’信息(如指示 CPU、磁盘以及网络活动在哪儿发生等),而 EventSource 就基于这些构建而成,它允许程序员来标注“高级”语义行为,进而再为高级任务分配资源。

当然,你还能自定义 EventListeners 做更多工作,而不仅仅是给 ETW 发送信息——例如,开发 silverlight 程序时,你可以通过网络向主机发送跟踪数据。

PerfView 则是微软提供的一个性能分析工具。它被部署为一个单独的执行文件,能够支持监测任何程序的 CPU 和内存使用情况,同时还具备一些非常有用的功能,特别是在分析托管代码方面。如果你想了解更多关于如何使用这个工具的内容,请参考 Vance 发布的一些相关视频

查看英文原文: Better Tracing And Instrumentation For .NET Apps

2012-07-18 23:342900
用户头像

发布了 114 篇内容, 共 39.3 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

抢先体验!星河社区ERNIE Bot SDK现已支持文心大模型4.0

飞桨PaddlePaddle

开发工具 文心大模型 星河社区

数据安全法里面的数据是指什么?具体条例内容是什么?

行云管家

数据安全 数据安全法 数据运维 数据安全运维

卷不动的IT从业人的新赛道在哪里?

小魏写代码

绿野仙踪不仅是童话,还是便宜又好用的产品测试法!

鼎道智联

AI ChatGPT

日志

xujiangniao

用Rust实现UDP Echo服务器和客户端

胡译胡说

rust 网络 TCP/IP UDP协议

招募令丨面向领域应用的 Python 编程教学,让和鲸社区成为您的扩展课堂

ModelWhale

Python 编程 心理学 数据科学 交叉学科

基础软件是世界的事业 | 论数据库开源的力量

TiDB 社区干货传送门

TiDB实践安装及性能测试(上)

TiDB 社区干货传送门

安装 & 部署 性能测评 6.x 实践

TiDB实践安装及性能测试(下)

TiDB 社区干货传送门

迁移 管理与运维 备份 & 恢复 6.x 实践

一步步带你剖析Java中的Reader类

华为云开发者联盟

Java 开发 华为云 华为云开发者联盟

初识搜索:百度搜索产品经理的第一课

百度Geek说

百度搜索 企业号10月PK榜 搜索产品经理

Easysearch 容量规划建议

极限实验室

数据库 搜索引擎 监控系统 easysearch

通过NGINX搭建TiDB负载均衡

TiDB 社区干货传送门

安装 & 部署

支持信创的数据安全运维平台哪个好?咨询电话多少?

行云管家

信创 数据安全 国产 数据安全运维

7种不同类型的产品经理工具:一文读懂PM必学的办公软件!

彭宏豪95

产品经理 产品管理 在线白板 办公软件 在线协作

HAProxy安装及搭建tidb数据库负载均衡服务实战

TiDB 社区干货传送门

7.x 实践

记一次 TiDB v7.1 版本生产环境的完整搭建流程

TiDB 社区干货传送门

7.x 实践

玩转视图变量,轻松实现动态可视化数据分析

观测云

数据分析 可观测性 数据可视化

Dapp钱包智能合约链上质押模式系统开发

l8l259l3365

在Kubernetes中实现gRPC流量负载均衡

树上有只程序猿

golang Kubernetes

Proto-Mock:你的 Protobuf 随机数据生成利器

Geek_ianp87

前端 Node protobuf

更进一层的.Net事件跟踪机制_.NET_Roopesh Shenoy_InfoQ精选文章