【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

更进一层的.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:342315
用户头像

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

关注

评论

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

全网唯一秃头数据集:20 万张人像,网罗各类秃头

神经星星

人工智能 程序员 人脸识别 科技互联网

第二周总结

andy

架构师训练营Week2

Frank Zeng

架构师训练营-第二周作业

Linuxer

极客大学架构师训练营

分布式柔性事务的TCC方案

奈学教育

分布式

极客大学架构师训练营第一天总结

Ethan

架构师训练营第二周课后作业三

不谈

极客大学架构师训练营

面向对象设计学习总结

周冬辉

基于docker部署的Java应用jmx无法远程访问的问题

qihuajun

分布式柔性事务的TCC方案

古月木易

分布式

架构师week2 作业

李锦

极客大学架构师训练营

GitHub 热榜:适合初学者学习的 Prometheus 监控系统

JackTian

GitHub 开源 运维 Prometheus 监控系统

对进入面向对象世界的思考

云飞

UML 面向对象设计原则

教程序员使用Jekyll搭建漂亮的个人博客

小傅哥

小傅哥 Jekyll GitHub Pages 个人博客

第二周总结

王锟

极客大学架构师训练营第一天作业

Ethan

架构训练营-第二节

刘志刚

架构师训练营第二次作业0616

Geek_10

第二周作业

新世界

架构

编程的本质

陈皮

Architecture Programing

架构师训练营第二周学习总结

不谈

极客大学架构师训练营

架构师培训 -02 面向对象基本设计原则

刘敏

架构师训练营 week2

devfan

设计模式

杜克大学提出 AI 算法,拯救渣画质马赛克秒变高清

神经星星

人工智能 算法 分辨率 GAN

Week2学习总结

Frank Zeng

架构师训练营第二周作业

王铭铭

领域驱动设计(DDD)学习笔记

Chank

DDD

架构师训练营第二周总结

王铭铭

构架师训练营-第二周总结

Dawn

极客大学架构师训练营

架构师训练营第二周学习总结

James-Pang

极客大学架构师训练营

ElasticSearch原理解析

Chank

elasticsearch

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