From 12fbe4ba0966d6a37e01c3dda1b850485e4b4812 Mon Sep 17 00:00:00 2001 From: Lorenzo Tessiore Date: Sat, 30 Jul 2016 08:33:47 -0700 Subject: [PATCH] Update linux-performance-tracing.md --- Documentation/project-docs/linux-performance-tracing.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Documentation/project-docs/linux-performance-tracing.md b/Documentation/project-docs/linux-performance-tracing.md index 1313ed1..93d63b4 100644 --- a/Documentation/project-docs/linux-performance-tracing.md +++ b/Documentation/project-docs/linux-performance-tracing.md @@ -94,6 +94,16 @@ Even though the application hosted in the container isn't privileged, this new s If you want to try tracing in a container, we've written a [demo Dockerfile](https://raw.githubusercontent.com/dotnet/corefx-tools/master/src/performance/perfcollect/docker-demo/Dockerfile) that installs all of the performance tracing pre-requisites, sets the environment up for tracing, and starts a sample CPU-bound app. +#Filtering# +Filtering is implemented on Windows through the latest mechanisms provided with the [EventSource](https://msdn.microsoft.com/en-us/library/system.diagnostics.tracing.eventsource(v=vs.110).aspx) class. + +On Linux those mechanisms are not available yet. Instead, there are two environment variables that exist just on linux to do some basic filtering. + +* COMPLUS_EventSourceFilter – filter event sources by name +* COMPLUS_EventNameFilter – filter events by name + +Setting one or both of these variables will only enable collecting events that contain the name you specify as a substring. Strings are treated as case insensitive. + #Viewing a Trace# Traces are best viewed using PerfView on Windows. Note that we're currently looking into porting the analysis pieces of PerfView to Linux so that the entire investigation can occur on Linux. @@ -129,4 +139,4 @@ Perfcollect will alert users to any prerequisites that are not installed and off The current prerequisites are: 1. perf: Also known as perf_event, the Linux Performance Events sub-system and companion user-mode collection/viewer application. perf is part of the Linux kernel source, but is not usually installed by default. -2. LTTng: Stands for "Linux Tracing Toolkit Next Generation", and is used to capture event data emitted at runtime by CoreCLR. This data is then used to analyze the behavior of various runtime components such as the GC, JIT and thread pool. \ No newline at end of file +2. LTTng: Stands for "Linux Tracing Toolkit Next Generation", and is used to capture event data emitted at runtime by CoreCLR. This data is then used to analyze the behavior of various runtime components such as the GC, JIT and thread pool. -- 2.7.4