public void Log(LoggingEventType entry, string message) { // TODO: Implement your favourite logger here // https://docs.microsoft.com/en-us/aspnet/core/fundamentals/logging/?view=aspnetcore-2.2 // https://github.com/NLog/NLog.Web/wiki/Getting-started-with-ASP.NET-Core-2 Trace.WriteLine(message, entry.ToString()); // Debug.WriteLine("Debug: " + message, entry.ToString()); }
private static IConfigurationWriter BuildConfigurationWithThreshold(string providerName, LoggingEventType threshold) { var configBuilder = new ConfigurationBuilder() { Logging = new LoggingConfigurationBuilder() { DefaultProvider = providerName, Providers = { // <provider name="[providerName]" type="MemoryLoggingProvider" threshold="..." /> new ProviderConfigLine() { Name = providerName, Type = typeof(MemoryLoggingProvider), CustomAttributes = @"threshold=""" + threshold.ToString() + @"""" } } }, }; return(configBuilder.Build()); }
/// <summary> /// Given a build event that is presumed to be 2.0 (due to its lack of a "ReadFromStream" method) and its /// LoggingEventType, read that event from the stream. /// </summary> private BuildEventArgs ReadEventFromStream(LoggingEventType eventType, ITranslator translator) { string message = null; string helpKeyword = null; string senderName = null; translator.Translate(ref message); translator.Translate(ref helpKeyword); translator.Translate(ref senderName); BuildEventArgs buildEvent = null; switch (eventType) { case LoggingEventType.TaskCommandLineEvent: buildEvent = ReadTaskCommandLineEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.BuildErrorEvent: buildEvent = ReadTaskBuildErrorEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.ProjectStartedEvent: buildEvent = ReadExternalProjectStartedEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.ProjectFinishedEvent: buildEvent = ReadExternalProjectFinishedEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.BuildMessageEvent: buildEvent = ReadBuildMessageEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.BuildWarningEvent: buildEvent = ReadBuildWarningEventFromStream(translator, message, helpKeyword, senderName); break; default: ErrorUtilities.ThrowInternalError("Not Supported LoggingEventType {0}", eventType.ToString()); break; } return(buildEvent); }
/// <summary> /// Given a build event that is presumed to be 2.0 (due to its lack of a "WriteToStream" method) and its /// LoggingEventType, serialize that event to the stream. /// </summary> private void WriteEventToStream(BuildEventArgs buildEvent, LoggingEventType eventType, ITranslator translator) { string message = buildEvent.Message; string helpKeyword = buildEvent.HelpKeyword; string senderName = buildEvent.SenderName; translator.Translate(ref message); translator.Translate(ref helpKeyword); translator.Translate(ref senderName); // It is essential that you translate in the same order during writing and reading switch (eventType) { case LoggingEventType.BuildMessageEvent: WriteBuildMessageEventToStream((BuildMessageEventArgs)buildEvent, translator); break; case LoggingEventType.TaskCommandLineEvent: WriteTaskCommandLineEventToStream((TaskCommandLineEventArgs)buildEvent, translator); break; case LoggingEventType.BuildErrorEvent: WriteBuildErrorEventToStream((BuildErrorEventArgs)buildEvent, translator); break; case LoggingEventType.BuildWarningEvent: WriteBuildWarningEventToStream((BuildWarningEventArgs)buildEvent, translator); break; case LoggingEventType.ProjectStartedEvent: WriteExternalProjectStartedEventToStream((ExternalProjectStartedEventArgs)buildEvent, translator); break; case LoggingEventType.ProjectFinishedEvent: WriteExternalProjectFinishedEventToStream((ExternalProjectFinishedEventArgs)buildEvent, translator); break; default: ErrorUtilities.ThrowInternalError("Not Supported LoggingEventType {0}", eventType.ToString()); break; } }
/// <summary> /// Given a build event that is presumed to be 2.0 (due to its lack of a "ReadFromStream" method) and its /// LoggingEventType, read that event from the stream. /// </summary> private BuildEventArgs ReadEventFromStream(LoggingEventType eventType, INodePacketTranslator translator) { string message = null; string helpKeyword = null; string senderName = null; translator.Translate(ref message); translator.Translate(ref helpKeyword); translator.Translate(ref senderName); BuildEventArgs buildEvent = null; switch (eventType) { case LoggingEventType.TaskCommandLineEvent: buildEvent = ReadTaskCommandLineEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.BuildErrorEvent: buildEvent = ReadTaskBuildErrorEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.ProjectStartedEvent: buildEvent = ReadExternalProjectStartedEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.ProjectFinishedEvent: buildEvent = ReadExternalProjectFinishedEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.BuildMessageEvent: buildEvent = ReadBuildMessageEventFromStream(translator, message, helpKeyword, senderName); break; case LoggingEventType.BuildWarningEvent: buildEvent = ReadBuildWarningEventFromStream(translator, message, helpKeyword, senderName); break; default: ErrorUtilities.ThrowInternalError("Not Supported LoggingEventType {0}", eventType.ToString()); break; } return buildEvent; }
/// <summary> /// Given a build event that is presumed to be 2.0 (due to its lack of a "WriteToStream" method) and its /// LoggingEventType, serialize that event to the stream. /// </summary> private void WriteEventToStream(BuildEventArgs buildEvent, LoggingEventType eventType, INodePacketTranslator translator) { string message = buildEvent.Message; string helpKeyword = buildEvent.HelpKeyword; string senderName = buildEvent.SenderName; translator.Translate(ref message); translator.Translate(ref helpKeyword); translator.Translate(ref senderName); // It is essential that you translate in the same order during writing and reading switch (eventType) { case LoggingEventType.BuildMessageEvent: WriteBuildMessageEventToStream((BuildMessageEventArgs)buildEvent, translator); break; case LoggingEventType.TaskCommandLineEvent: WriteTaskCommandLineEventToStream((TaskCommandLineEventArgs)buildEvent, translator); break; case LoggingEventType.BuildErrorEvent: WriteBuildErrorEventToStream((BuildErrorEventArgs)buildEvent, translator); break; case LoggingEventType.BuildWarningEvent: WriteBuildWarningEventToStream((BuildWarningEventArgs)buildEvent, translator); break; case LoggingEventType.ProjectStartedEvent: WriteExternalProjectStartedEventToStream((ExternalProjectStartedEventArgs)buildEvent, translator); break; case LoggingEventType.ProjectFinishedEvent: WriteExternalProjectFinishedEventToStream((ExternalProjectFinishedEventArgs)buildEvent, translator); break; default: ErrorUtilities.ThrowInternalError("Not Supported LoggingEventType {0}", eventType.ToString()); break; } }