diff options
author | David Mason <davmason@microsoft.com> | 2016-03-30 13:15:29 -0700 |
---|---|---|
committer | David Mason <davmason@microsoft.com> | 2016-03-30 13:15:29 -0700 |
commit | d47a3984e4f3277337c710579407d3a5e1d94714 (patch) | |
tree | 869dc9c6fda9a9f5241954cc3409b64e0f377159 | |
parent | 831ce3c7db6b532420dcb778918a7554a6fc2965 (diff) | |
parent | c23c38d36c0fabb9ee861643dade9b4f56ff1e61 (diff) | |
download | coreclr-d47a3984e4f3277337c710579407d3a5e1d94714.tar.gz coreclr-d47a3984e4f3277337c710579407d3a5e1d94714.tar.bz2 coreclr-d47a3984e4f3277337c710579407d3a5e1d94714.zip |
Merge pull request #3955 from davmason/master
Fixing tracelogging on linux
-rw-r--r-- | src/mscorlib/src/System/Diagnostics/Eventing/TraceLogging/TraceLoggingEventSource.cs | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/mscorlib/src/System/Diagnostics/Eventing/TraceLogging/TraceLoggingEventSource.cs b/src/mscorlib/src/System/Diagnostics/Eventing/TraceLogging/TraceLoggingEventSource.cs index 2fde2233ea..95cadbc906 100644 --- a/src/mscorlib/src/System/Diagnostics/Eventing/TraceLogging/TraceLoggingEventSource.cs +++ b/src/mscorlib/src/System/Diagnostics/Eventing/TraceLogging/TraceLoggingEventSource.cs @@ -5,11 +5,13 @@ // This program uses code hyperlinks available as part of the HyperAddin Visual Studio plug-in. // It is available from http://www.codeplex.com/hyperAddin +#if !PLATFORM_UNIX #define FEATURE_MANAGED_ETW #if !ES_BUILD_STANDALONE #define FEATURE_ACTIVITYSAMPLING #endif +#endif // PLATFORM_UNIX #if ES_BUILD_STANDALONE #define FEATURE_MANAGED_ETW_CHANNELS @@ -44,7 +46,9 @@ namespace System.Diagnostics.Tracing { public partial class EventSource { +#if FEATURE_MANAGED_ETW private byte[] providerMetadata; +#endif /// <summary> /// Construct an EventSource with a given name for non-contract based events (e.g. those using the Write() API). @@ -420,6 +424,7 @@ namespace System.Diagnostics.Tracing Guid* childActivityID, params object[] values) { +#if FEATURE_MANAGED_ETW int identity = 0; byte level = (options.valuesSet & EventSourceOptions.levelSet) != 0 ? options.level @@ -488,7 +493,7 @@ namespace System.Diagnostics.Tracing this.WriteCleanup(pins, pinCount); } } - +#endif // FEATURE_MANAGED_ETW } /// <summary> @@ -530,6 +535,7 @@ namespace System.Diagnostics.Tracing Guid* childActivityID, EventData* data) { +#if FEATURE_MANAGED_ETW if (!this.IsEnabled()) { return; @@ -595,6 +601,7 @@ namespace System.Diagnostics.Tracing (IntPtr)descriptors); } } +#endif // FEATURE_MANAGED_ETW } [SecuritySafeCritical] @@ -618,6 +625,7 @@ namespace System.Diagnostics.Tracing return; } +#if FEATURE_MANAGED_ETW var pinCount = eventTypes.pinCount; var scratch = stackalloc byte[eventTypes.scratchSize]; var descriptors = stackalloc EventData[eventTypes.dataCount + 3]; @@ -631,6 +639,7 @@ namespace System.Diagnostics.Tracing descriptors[0].SetMetadata(pMetadata0, this.providerMetadata.Length, 2); descriptors[1].SetMetadata(pMetadata1, nameInfo.nameMetadata.Length, 1); descriptors[2].SetMetadata(pMetadata2, eventTypes.typeMetadata.Length, 1); +#endif // FEATURE_MANAGED_ETW #if (!ES_BUILD_PCL && !PROJECTN) System.Runtime.CompilerServices.RuntimeHelpers.PrepareConstrainedRegions(); @@ -658,6 +667,7 @@ namespace System.Diagnostics.Tracing try { +#if FEATURE_MANAGED_ETW DataCollector.ThreadInstance.Enable( scratch, eventTypes.scratchSize, @@ -676,6 +686,7 @@ namespace System.Diagnostics.Tracing pRelatedActivityId, (int)(DataCollector.ThreadInstance.Finish() - descriptors), (IntPtr)descriptors); +#endif // FEATURE_MANAGED_ETW // TODO enable filtering for listeners. if (m_Dispatchers != null) @@ -692,11 +703,13 @@ namespace System.Diagnostics.Tracing else ThrowEventSourceException(eventName, ex); } +#if FEATURE_MANAGED_ETW finally { this.WriteCleanup(pins, pinCount); } } +#endif // FEATURE_MANAGED_ETW } } catch (Exception ex) @@ -754,6 +767,7 @@ namespace System.Diagnostics.Tracing private void InitializeProviderMetadata() { +#if FEATURE_MANAGED_ETW if (m_traits != null) { List<byte> traitMetaData = new List<byte>(100); @@ -791,6 +805,7 @@ namespace System.Diagnostics.Tracing } else providerMetadata = Statics.MetadataForString(this.Name, 0, 0, 0); +#endif //FEATURE_MANAGED_ETW } private static int AddValueToMetaData(List<byte> metaData, string value) |