Skip to content
The CLR Instrumentation Engine is a cooperation profiler that allows running multiple profiling extensions in the same process.
Branch: develop
Clone or download
WilliamXieMSFT Fix bug where preinstalled site extension is empty (#105) (#107)
* Fix bug where preinstalled site extension is empty

* Fix preinstall csproj to pull from correct path & update ZipArchiveTask to remove duplicates for local build
Latest commit 30d30c7 Jul 17, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build
docs Added proxy logging (#86) Jun 12, 2019
inc/clr
src
tests
.editorconfig
.gitattributes Migrate private EULA to public MIT License for OSS (#99) Jul 3, 2019
.gitignore Migrate private EULA to public MIT License for OSS (#99) Jul 3, 2019
CHANGELOG.md
CODEOWNERS Migrate private EULA to public MIT License for OSS (#99) Jul 3, 2019
CONTRIBUTING.md
DESIGN-NOTES.md Added proxy logging (#86) Jun 12, 2019
EnlistmentRoot.marker
InstrumentationEngine.sln Added proxy logging (#86) Jun 12, 2019
LICENSE Migrate private EULA to public MIT License for OSS (#99) Jul 3, 2019
NuGet.config
README.md Migrate private EULA to public MIT License for OSS (#99) Jul 3, 2019
ROADMAP.md
build.ps1
verifyCopyrightHeaders.ps1 Migrate private EULA to public MIT License for OSS (#99) Jul 3, 2019

README.md

CLR Instrumentation Engine

Develop Branch: Build Status

Master Branch: Build Status

Overview

The CLR Instrumentation Engine (CLRIE) is a cooperation profiler that allows running multiple profiling extensions in the same process. It was built to satisfy Application Insights, IntelliTrace, and Production Breakpoints scenarios.

The CLRIE's goal is to create a cooperative environment for different profilers to work together on various platforms. In order to further this goal, we plan to open source this repo to the community by the end June 2019.

For more information about our current and future project scope and to track our progress, please see the CLRIE Road Map.

Getting Started

The CLR Instrumentation Engine is a profiler implementation and is enabled and configured via environment variables for the running process.

Contributing

Please read Contributing for details on the Contributor License Agreement (CLA) and the process for submitting pull requests to us.

This repo builds using Visual Studio 2017 and requires the following components:

Component Id Component Friendly Name
Microsoft.Component.MSBuild MSBuild
Microsoft.VisualStudio.Workload.NativeDesktop Desktop development with C++ (Workload)
Microsoft.VisualStudio.Component.VC.ATL.Spectre Visual C++ ATL (x86/x64) with Spectre Mitigations
Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre VC++ 2017 version 15.9 v14.16 libs for spectre (x86 and x64)

Optionally, in order to develop Wixproj files in Visual Studio, you will need to install the Wix Toolset Visual 2017 Extension, also known as the "Votive" extension.

  • Design Notes - the overall design for CLR Instrumentation Engine.
  • Build - how to run local builds.
  • Test - how to run tests.
  • Release Process - how to release CLRIE to various platforms.

Versioning

The CLR Instrumentation Engine follows the Semantic Versioning scheme.

Encountering and reporting issues

See Troubleshooting for common pitfalls and remediation.

If you're still encountering a non-critical issues, please contact clrieowners@microsoft.com.

Critical security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) at secure@microsoft.com. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter.

License

Usage governance of the Instrumentation Engine is detailed in the License.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

You can’t perform that action at this time.