Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
19 lines (12 loc) · 1.58 KB

File metadata and controls

19 lines (12 loc) · 1.58 KB
Copy raw file
Download raw file
Outline
Edit and raw actions

CoreClr Event Logging Design

Introduction

Event Logging is a mechanism by which CoreClr can provide a variety of information on it's state. This Logging works by inserting explicit logging calls by the developer within the VM . The Event Logging mechanism is largely based on ETW- Event Tracing For Windows

Adding Events to the Runtime

  • Edit the Event manifest to add a new event. For guidelines on adding new events, take a look at the existing events in the manifest and this guide for ETW Manifests.
  • The build system should automatically generate the required artifacts for the added events.
  • Add entries in the exclusion list if necessary
  • The Event Logging Mechanism provides the following two functions, which can be used within the VM:
    • FireEtwEventName, this is used to trigger the event
    • EventEnabledEventName, this is used to see if any consumer has subscribed to this event

Adding New Logging System

Though the Event logging system was designed for ETW, the build system provides a mechanism, basically an adapter script- genEventing.py so that other Logging System can be added and used by CoreClr. An Example of such an extension for LTTng logging system can be found in genLttngProvider.py

Morty Proxy This is a proxified and sanitized view of the page, visit original site.