diff --git a/src/coreclr/src/System.Private.CoreLib/ILLinkTrim.xml b/src/coreclr/src/System.Private.CoreLib/ILLinkTrim.xml index ff08dc62974c1..77dc30fe2e702 100644 --- a/src/coreclr/src/System.Private.CoreLib/ILLinkTrim.xml +++ b/src/coreclr/src/System.Private.CoreLib/ILLinkTrim.xml @@ -55,8 +55,6 @@ - - diff --git a/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs b/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs index fd42fb69b6183..3d774c297e127 100644 --- a/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs +++ b/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs @@ -2178,9 +2178,8 @@ private unsafe void WriteEventString(string msgString) Keywords = (EventKeywords)unchecked(keywords), Level = level }; - var msg = new { message = msgString }; - var tlet = new TraceLoggingEventTypes(EventName, EventTags.None, new Type[] { msg.GetType() }); - WriteMultiMergeInner(EventName, ref opt, tlet, null, null, msg); + var tlet = new TraceLoggingEventTypes(EventName, EventTags.None, new Type[] { typeof(string) }); + WriteMultiMergeInner(EventName, ref opt, tlet, null, null, msgString); } else { diff --git a/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/TraceLogging/SimpleTypeInfos.cs b/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/TraceLogging/SimpleTypeInfos.cs index 0525413ccd956..768a3ad071bd7 100644 --- a/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/TraceLogging/SimpleTypeInfos.cs +++ b/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/TraceLogging/SimpleTypeInfos.cs @@ -147,7 +147,11 @@ public override void WriteMetadata( string? name, EventFieldFormat format) { - collector.AddNullTerminatedString(name!, Statics.MakeDataType(TraceLoggingDataType.Utf16String, format)); + // name can be null if the string was used as a top-level object in an event. + // In that case, use 'message' as the name of the field. + name ??= "message"; + + collector.AddNullTerminatedString(name, Statics.MakeDataType(TraceLoggingDataType.Utf16String, format)); } public override void WriteData(TraceLoggingDataCollector collector, PropertyValue value)