AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

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

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

关注

评论

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

【LeetCode】删除链表的倒数第 N 个结点Java题解

Albert

算法 LeetCode 10月月更

模块九 电商秒杀系统设计

小牧ah

架构实战营

专场预告 | DTCC数据库技术大会云溪数据库专场

云计算

仅需三天,受人追捧的华为内部Java优化笔记登顶Github热搜!

Java 架构 面试 程序人生 编程语言

11. python入门复习教程之命名空间与作用域,再谈异常,标准库,持久化与序列化

梦想橡皮擦

10月月更

【Flutter 专题】32 图解自定义 View 之 Paint

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 10月月更

第 14 章 -《Linux 一学就会》- RAID磁盘阵列的原理与搭建

学神来啦

Linux linux运维 linux云计算

12种 vo2dto 方法,就 BeanUtils.copyProperties 压测最拉胯!【快双11了,别用错喽】

小傅哥

Java 小傅哥 MapStruct vo2dto JMapper

成本直降50% | 阿里云发布云原生网关,开启下一代网关新进程

阿里巴巴中间件

阿里云 微服务 云原生 中间件 网关

校友录小程序开发笔记三十二:校友卡模块设计与实现

CC同学

架构实战营1期模块9作业——毕业设计

tt

架构实战营

直播回顾|蒋烁淼:《下一代企业级应用软件论坛》可观测性主题精彩分享

观测云

可观测性

一加9 Pro怎么样?值得入手的全能旗舰

Geek_8a195c

机器翻译是否能替代人工翻译?从前世今生说起

博文视点Broadview

013 云原生之容器技术

穿过生命散发芬芳

云原生 10月月更

低代码BPM平台

低代码小观

低代码 企业 企业管理 BPM 低代码平台

百分点大数据技术团队:低代码平台实践

百分点科技技术团队

设计模式如何提升 vivo 营销自动化业务扩展性 | 引擎篇01

vivo互联网技术

自动化 后端 设计模式 软件架构设计 java

设计电商秒杀系统

木云先森

架构训练营

SSH是什么?怎么组成?有哪些优势?

行云管家

SSH 服务器 SSH工具 服务器管理协议

Pandas高级教程之:时间处理

程序那些事

Python 大数据 数据分析 pandas 程序那些事

云计算改变企业的传统思考方式

低代码小观

云计算 创新 企业 企业管理 传统观念

DCI架构是如何解决DDD战术建模缺点的?

华为云开发者联盟

领域驱动设计 对象 建模 对象编程 DCI架构

【优化技术专题】「线程间的高性能消息框架」终极关注Disruptor的核心源码和Java8的@Contended伪共享指南

码界西柚

Disruptor 异步执行 高性能框架 10月月更

浙江金华市正规等保测评机构有几家?在哪里?联系电话是多少?

行云管家

网络安全 等保 等保测评

梦幻西游H5游戏超详细图文架设教程

echeverra

H5游戏

为绿色而生:智慧矿山可视化数治监管

一只数据鲸鱼

数据可视化 智慧矿山 煤矿 矿山

「 活动 」连续 3 天,企业容器应用实战营上海站来啦!

阿里巴巴云原生

阿里云 Kubernetes 容器 云原生 活动

中秋图关系构建

6979阿强

图算法 GraphScope 中秋节

授人以渔,华为“开源雨林”计划致力推动开源生态发展

教你用Java7的Fork/Join框架开发高并发程序

华为云开发者联盟

Java 算法 线程 高并发 Fork/Join框架

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