NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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

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

关注

评论

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

从零学习SDK(8)SDK的集成和部署

MobTech袤博科技

OpenKruise V1.4 版本解读:新增 Job Sidecar Terminator 能力

阿里巴巴云原生

阿里云 开源 云原生 OpenKruise

WebIntents 翻身战,操作系统实现无缝集成的王牌

鼎道智联

AI

数据中心厂商超云加入龙蜥社区,多款服务器完成与龙蜥操作系统适配

OpenAnolis小助手

开源 操作系统 龙蜥社区 CLA 长城超云

使用体验 I 早知道 TDesign 支持 AVIF 图片压缩,我就不用为流量和格式发愁啦!

TDesign

前端 图片压缩 图片格式

Java EE应用服务器的事务管理

swordholder

Java transaction JavaEE

新起点!大数据分布式可视化的 DAG 任务调度系统 Taier 正式发布1.4版本

袋鼠云数栈

开源

火山引擎 DataLeap 下 Notebook 系列文章二:技术路线解析

字节跳动数据平台

数据治理 数据研发 企业号 4 月 PK 榜

阿里云张献涛:云原生计算基础设施助力汽车行业数字化升级

云布道师

云计算

如何看待马斯克3月呼吁暂停人工智能,4月却创立TruthGPT

这我可不懂

低代码 JNPF

舒明:稳定支撑日高峰亿级保单交易,国泰产险的运维创新实践

OceanBase 数据库

数据库 oceanbase

连续3天3场分享,KubeVela@KubeCon EU 2023 抢鲜看!

阿里巴巴云原生

阿里云 开源 云原生 KubeVela

网络工程师经常搞混的路由策略和策略路由,两者到底有啥区别?

wljslmz

三周年连更

ITMS-90433: Invalid Swift Support

雪奈椰子

C++实现消息队列

linux大本营

C++ 消息列队

Selenium测试用例如何编写

测吧(北京)科技有限公司

测试

性能报告 | YMatrix 5.0 对比 Greenplum 超 12 倍性能提升,TPC-H 基准测试报告发布

YMatrix 超融合数据库

时序数据库 测试工具 数据库、

如何填写苹果应用上架过程中的隐私政策信息?

雪奈椰子

软件测试/测试开发丨Pytest 自动化测试框架(二)

测试人

软件测试 自动化测试 测试开发 pytest

什么是全民开发?|概念、技能和优势

草料二维码

低代码 无代码

FastAPI 快速开发 Web API 项目: 通过 SQLAlchemy 进行数据操作

宇宙之一粟

Python sqlalchemy FastApi 三周年连更

PageObject设计模式

测吧(北京)科技有限公司

测试

用户痛点与根因识别:解锁企业数字化转型成功的关键

L3C老司机

火山引擎云原生数据仓库ByteHouse技术白皮书V1.0 (Ⅳ)

字节跳动数据平台

数据导入 实时数据 实时导入 企业号 4 月 PK 榜

分析nginx访问日志,统计前10的ip

linux大本营

nginx 日志

MobTech 秒验|守护账户安全

MobTech袤博科技

中国年轻人阅读洞察2023

易观分析

年轻人 阅读

OceanBase 4.1解读:我们想给用户一个开箱即用的OceanBase部署运维工具

OceanBase 数据库

数据库 oceanbase

软件测试/测试开发丨Pytest 自动化测试框架(一)

测试人

软件测试 自动化测试 测试开发 pytest

如何搭建自己的ChatGPT网站,它来了

派大星

ChatGPT

云原生时代,不可不知的基础设施即代码(IaC)

极狐GitLab

DevOps 云原生 CI/CD gitops IaC

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