Skip to content

TechDirectArchive

Hands-on IT, Cloud, Security & DevOps Insights

  • Home
  • About
  • Advertise With US
  • Reviews
  • Contact
  • Toggle search form
Home » Windows » An Overview of Event Tracing for Windows
  • hgbv
    Graphical Network Simulator: How to install GNS3 on macOS Network | Monitoring
  • How to configure Volume Shadow Copies VSS on Windows Server
    Volume Shadow Copies: How to configure VSS on Windows Server Windows
  • Encapsulationset to Auto
    Error – Command rejected: An interface whose trunk encapsulation is “Auto” can not be configured to “trunk” mode Network | Monitoring
  • Watchguard Firewall 180504 100511
    WatchGuard Log and Report Server Installation in a VM Network | Monitoring
  • dfeef
    How to automatically resolve errors associated with failed dependencies Linux
  • mgithub
    How to use Command-Line on Git Bash and GitHub Desktop to PUSH local code to GitHub Version Control System
  • images 5
    IP Address UNREACHABLE: HTTP connection pool Max exceeded Configuration Management Tool
  • AWS Principals
    MFA on Root Account: Create a User on AWS and Register MFA AWS/Azure/OpenShift

An Overview of Event Tracing for Windows

Posted on 03/11/202216/12/2023 Christian By Christian No Comments on An Overview of Event Tracing for Windows
An Overview to Event Tracing for Windows

Event Tracing for Windows (ETW) is an efficient kernel-level tracing facility that lets you log kernel or application-defined events to a log file. You can consume the events in real-time or from a log file and use them to debug an application or to determine where performance issues are occurring in the application. ETW lets you enable or disable event tracing dynamically, allowing you to perform detailed tracing in a production environment without requiring computer or application restarts. Here are some related guides: how to work with Windows Performance Toolkit, and What is ADK, MDT, Microsoft Endpoint Configuration Manager (SCCM), Intune, Autopilot, and WSUS.

The Event Tracing for Windows (ETW) infrastructure provides the foundation for Windows Performance Toolkit. These tools provide a set of programs that hide the complexity of working directly with the ETW application programming interfaces (APIs). ETW is included in Microsoft Windows 2000 and later.

You can use the .NET TraceProcessing API to analyze ETW traces for your applications and other software components. This API is available as a NuGet package. The Event Tracing API is broken into three distinct components:

  • Controllers, which start and stop an event tracing session and enable providers
  • Providers, which provide the events
  • Consumers, which consume the events

The following diagram shows the event tracing model. Also, we will be discussing the various components extensively. Wish to improve your Debugging And Performance Tuning With ETW.

event tracing model

Controllers

Controllers are applications that define the size and location of the log file, start and stop event tracing sessions, enable providers so they can log events to the session, manage the size of the buffer pool, and obtain execution statistics for sessions.

Session statistics include the number of buffers used, the number of buffers delivered, and the number of events and buffers lost.

Providers

Providers are applications that contain event tracing instrumentation. After a provider registers itself, a controller can then enable or disable event tracing in the provider. The provider defines its interpretation of being enabled or disabled.

Generally, an enabled provider generates events, and a disabled provider does not. This lets you add event tracing to your application without requiring that it generate events all the time.

Although the ETW model separates the controller and provider into separate applications, an application can include both components. There are four main types of providers:

  • MOF (classic) providers,
  • WPP providers,
  • manifest-based providers, and
  • TraceLogging providers.

Note: You should use a manifest-based provider or a TraceLogging provider if you are writing applications for Windows Vista or later that do not need to support legacy system

Consumers

Consumers are applications that select one or more event tracing sessions as a source of events. A consumer can request events from multiple event tracing sessions simultaneously; the system delivers the events in chronological order.

Consumers can receive events stored in log files, or from sessions that deliver events in real-time. When processing events, a consumer can specify start and end times, and only events that occur in the specified time frame will be delivered.

More information on Event Tracing for Windows (ETW)

ETW enables the consistent, straightforward capture of kernel and application events. Enabling or disabling event capture at any time doesn’t require a system or process restart. Windows Performance Analyzer (WPA) presents the information that ETW collects in an easy-to-understand set of graphs and tables.

You can capture and present selected events to non-invasively identify and diagnose system and application performance issues. You can enable or disable event tracing dynamically. Windows Performance Recorder (WPR) uses ETW to gather and organize critical system information. WPR acts as the session controller, starting and stopping the session and selecting which ETW events to record.

WPA consumes the event trace log (ETL) file that all event providers produce in an ETW session. Kernel and application events can provide extensive details about the operation of the system. Almost every kernel event that affects overall system performance is defined and available to WPA.

Why do we have to perform Event Tracing?

Event Tracing for Windows (ETW) provides application programmers the ability to start and stop event tracing sessions, instrument an application to provide trace events, and consume trace events.

Trace events contain an event header and provider-defined data that describes the current state of an application or operation. You can use the events to debug an application and perform capacity and performance analysis.

When, and where to use Event Tracing?

Use ETW when you want to instrument your application, log user or kernel events to a log file, and consume events from a log file or in real-time.

I hope you found this blog post on event tracing for windows helpful. If you have any questions do not hesitate to ask in the comment section.

Rate this post

Thank you for reading this post. Kindly share it with others.

  • Click to share on X (Opens in new window) X
  • Click to share on Reddit (Opens in new window) Reddit
  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on Pinterest (Opens in new window) Pinterest
  • Click to share on Tumblr (Opens in new window) Tumblr
  • Click to share on Telegram (Opens in new window) Telegram
  • Click to share on WhatsApp (Opens in new window) WhatsApp
  • Click to share on Pocket (Opens in new window) Pocket
  • Click to share on Mastodon (Opens in new window) Mastodon
  • Click to share on Bluesky (Opens in new window) Bluesky
  • Click to share on Threads (Opens in new window) Threads
  • Click to share on Nextdoor (Opens in new window) Nextdoor
Windows, Windows Server Tags:Event Viewer, eventlog, Microsoft Windows, Windows 10, Windows 11, Windows Server 2016

Post navigation

Previous Post: Best Way to Backup Dropbox to Box
Next Post: How to increase Windows PIN complexity

Related Posts

  • Fix this file came from another computer and might be blocked error
    File Came From Another Computer And Might be Blocked Error Windows
  • Windows 11 default Icons
    Windows Desktop Icon: How to Make Default System Icons Visible Windows
  • How to enable or disable Microsoft Defender Antivirus Active or Mode Mode
    Set Microsoft Defender Antivirus to Passive or Active Mode Anti-Virus Solution
  • Enable autologon and autostart for user session
    Enable Autologon and Autostart for user session Windows
  • Microsoft Windows Windows 1
    How to specify a persistent default printer via the Windows Registry and PowerShell Windows
  • Set Microsoft Defender AV to Passive mode on a Windows Server
    Set Microsoft Defender AV to Passive mode on a Windows Server Security | Vulnerability Scans and Assessment

More Related Articles

Fix this file came from another computer and might be blocked error File Came From Another Computer And Might be Blocked Error Windows
Windows 11 default Icons Windows Desktop Icon: How to Make Default System Icons Visible Windows
How to enable or disable Microsoft Defender Antivirus Active or Mode Mode Set Microsoft Defender Antivirus to Passive or Active Mode Anti-Virus Solution
Enable autologon and autostart for user session Enable Autologon and Autostart for user session Windows
Microsoft Windows Windows 1 How to specify a persistent default printer via the Windows Registry and PowerShell Windows
Set Microsoft Defender AV to Passive mode on a Windows Server Set Microsoft Defender AV to Passive mode on a Windows Server Security | Vulnerability Scans and Assessment

Leave a Reply Cancel reply

You must be logged in to post a comment.

Microsoft MVP

VEEAMLEGEND

vexpert-badge-stars-5

Virtual Background

GoogleNews

Categories

veeaam100

sysadmin top30a
 
  • hgbv
    Graphical Network Simulator: How to install GNS3 on macOS Network | Monitoring
  • How to configure Volume Shadow Copies VSS on Windows Server
    Volume Shadow Copies: How to configure VSS on Windows Server Windows
  • Encapsulationset to Auto
    Error – Command rejected: An interface whose trunk encapsulation is “Auto” can not be configured to “trunk” mode Network | Monitoring
  • Watchguard Firewall 180504 100511
    WatchGuard Log and Report Server Installation in a VM Network | Monitoring
  • dfeef
    How to automatically resolve errors associated with failed dependencies Linux
  • mgithub
    How to use Command-Line on Git Bash and GitHub Desktop to PUSH local code to GitHub Version Control System
  • images 5
    IP Address UNREACHABLE: HTTP connection pool Max exceeded Configuration Management Tool
  • AWS Principals
    MFA on Root Account: Create a User on AWS and Register MFA AWS/Azure/OpenShift

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 1,841 other subscribers
  • RSS - Posts
  • RSS - Comments
  • About
  • Authors
  • Write for us
  • Advertise with us
  • General Terms and Conditions
  • Privacy policy
  • Feedly
  • Telegram
  • Youtube
  • Facebook
  • Instagram
  • LinkedIn
  • Tumblr
  • Pinterest
  • Twitter
  • mastodon

Tags

AWS Azure Bitlocker Microsoft Windows PowerShell WDS Windows 10 Windows 11 Windows Deployment Services Windows Server 2016

Copyright © 2025 TechDirectArchive

 

Loading Comments...
 

You must be logged in to post a comment.