namespace Microsoft.AspNetCore.Diagnostics.Elm.Views { #line 1 "LogPage.cshtml" using System #line default #line hidden ; #line 2 "LogPage.cshtml" using System.Collections.Generic #line default #line hidden ; #line 3 "LogPage.cshtml" using System.Globalization #line default #line hidden ; #line 4 "LogPage.cshtml" using System.Linq #line default #line hidden ; #line 5 "LogPage.cshtml" using Microsoft.AspNetCore.Diagnostics.Elm #line default #line hidden ; #line 6 "LogPage.cshtml" using Microsoft.AspNetCore.Diagnostics.Elm.Views #line default #line hidden ; #line 7 "LogPage.cshtml" using Microsoft.AspNetCore.DiagnosticsViewPage.Views #line default #line hidden ; #line 8 "LogPage.cshtml" using Microsoft.Extensions.Logging #line default #line hidden ; using System.Threading.Tasks; [Obsolete("This type is for internal use only and will be removed in a future version.")] public class LogPage : Microsoft.AspNetCore.DiagnosticsViewPage.Views.BaseView { #line 11 "LogPage.cshtml" public LogPage(LogPageModel model) { Model = model; } public LogPageModel Model { get; set; } public HelperResult LogRow(LogInfo log, int level) { return new HelperResult((writer) => { if (log.Severity >= Model.Options.MinLevel && (string.IsNullOrEmpty(Model.Options.NamePrefix) || log.Name.StartsWith(Model.Options.NamePrefix, StringComparison.Ordinal))) { WriteLiteralTo(writer, " \r\n "); WriteTo(writer, string.Format("{0:MM/dd/yy}", log.Time)); WriteLiteralTo(writer, "\r\n "); WriteTo(writer, string.Format("{0:H:mm:ss}", log.Time)); WriteLiteralTo(writer, $"\r\n "); WriteTo(writer, log.Name); var severity = log.Severity.ToString().ToLowerInvariant(); WriteLiteralTo(writer, $"\r\n "); WriteTo(writer, log.Severity); WriteLiteralTo(writer, $"\r\n \r\n"); for (var i = 0; i < level; i++) { WriteLiteralTo(writer, " \r\n"); } WriteLiteralTo(writer, " "); WriteTo(writer, log.Message); WriteLiteralTo(writer, $"\r\n \r\n "); WriteTo(writer, log.Exception); WriteLiteralTo(writer, "\r\n \r\n"); } }); } public HelperResult Traverse(ScopeNode node, int level, Dictionary counts) { return new HelperResult((writer) => { // print start of scope WriteTo(writer, LogRow(new LogInfo() { Name = node.Name, Time = node.StartTime, Severity = LogLevel.Debug, Message = "Beginning " + node.State, }, level)); var messageIndex = 0; var childIndex = 0; while (messageIndex < node.Messages.Count && childIndex < node.Children.Count) { if (node.Messages[messageIndex].Time < node.Children[childIndex].StartTime) { WriteTo(writer, LogRow(node.Messages[messageIndex], level)); counts[node.Messages[messageIndex].Severity.ToString()]++; messageIndex++; } else { WriteTo(writer, Traverse(node.Children[childIndex], level + 1, counts)); childIndex++; } } if (messageIndex < node.Messages.Count) { for (var i = messageIndex; i < node.Messages.Count; i++) { WriteTo(writer, LogRow(node.Messages[i], level)); counts[node.Messages[i].Severity.ToString()]++; } } else { for (var i = childIndex; i < node.Children.Count; i++) { WriteTo(writer, Traverse(node.Children[i], level + 1, counts)); } } // print end of scope WriteTo(writer, LogRow(new LogInfo() { Name = node.Name, Time = node.EndTime, Severity = LogLevel.Debug, Message = string.Format("Completed {0} in {1}ms", node.State, node.EndTime - node.StartTime) }, level)); }); } #line default #line hidden #line hidden public LogPage() { } #pragma warning disable 1998 public override async Task ExecuteAsync() { WriteLiteral("\r\n"); #line 114 "LogPage.cshtml" Response.ContentType = "text/html"; #line default #line hidden WriteLiteral(@" ASP.NET Core Logs

ASP.NET Core Logs

\r\n
"); #line 170 "LogPage.cshtml" #line default #line hidden #line 170 "LogPage.cshtml" foreach (var activity in Model.Activities.Reverse()) { #line default #line hidden WriteLiteral(" \r\n \r\n"); #line 174 "LogPage.cshtml" #line default #line hidden #line 174 "LogPage.cshtml" var activityPath = Model.Path.Value + "/" + activity.Id; if (activity.HttpInfo != null) { #line default #line hidden WriteLiteral(" \t\r\n \r\n \r\n \r\n"); #line 182 "LogPage.cshtml" } else if (activity.RepresentsScope) { #line default #line hidden WriteLiteral(" \r\n"); #line 186 "LogPage.cshtml" } else { #line default #line hidden WriteLiteral(" \r\n"); #line 190 "LogPage.cshtml" } #line default #line hidden WriteLiteral(@" \r\n \r\n \r\n"); #line 244 "LogPage.cshtml" } #line default #line hidden WriteLiteral(@"
Path Method Host Status Code Logs
"); #line 179 "LogPage.cshtml" Write(activity.HttpInfo.Method); #line default #line hidden WriteLiteral(""); #line 180 "LogPage.cshtml" Write(activity.HttpInfo.Host); #line default #line hidden WriteLiteral(""); #line 181 "LogPage.cshtml" Write(activity.HttpInfo.StatusCode); #line default #line hidden WriteLiteral(" "); #line 204 "LogPage.cshtml" #line default #line hidden #line 204 "LogPage.cshtml" var counts = new Dictionary(); counts["Critical"] = 0; counts["Error"] = 0; counts["Warning"] = 0; counts["Information"] = 0; counts["Debug"] = 0; #line default #line hidden WriteLiteral(" \r\n"); #line 213 "LogPage.cshtml" #line default #line hidden #line 213 "LogPage.cshtml" if (!activity.RepresentsScope) { // message not within a scope var logInfo = activity.Root.Messages.FirstOrDefault(); #line default #line hidden #line 217 "LogPage.cshtml" Write(LogRow(logInfo, 0)); #line default #line hidden #line 217 "LogPage.cshtml" counts[logInfo.Severity.ToString()] = 1; } else { #line default #line hidden #line 222 "LogPage.cshtml" Write(Traverse(activity.Root, 0, counts)); #line default #line hidden #line 222 "LogPage.cshtml" } #line default #line hidden WriteLiteral(" \r\n \r\n \r\n \r\n"); #line 228 "LogPage.cshtml" #line default #line hidden #line 228 "LogPage.cshtml" foreach (var kvp in counts) { if (string.Equals("Debug", kvp.Key)) { #line default #line hidden WriteLiteral(" \r\n"); #line 232 "LogPage.cshtml" } else { #line default #line hidden WriteLiteral(" \r\n"); #line 236 "LogPage.cshtml" } } #line default #line hidden WriteLiteral(" \r\n \r\n
Date Time Name Severity State Error^
"); #line 227 "LogPage.cshtml" Write(activity.Time.ToString("MM-dd-yyyy HH:mm:ss")); #line default #line hidden WriteLiteral(""); #line 231 "LogPage.cshtml" Write(kvp.Value); #line default #line hidden WriteLiteral(" "); #line 231 "LogPage.cshtml" Write(kvp.Key); #line default #line hidden WriteLiteral("v"); #line 235 "LogPage.cshtml" Write(kvp.Value); #line default #line hidden WriteLiteral(" "); #line 235 "LogPage.cshtml" Write(kvp.Key); #line default #line hidden WriteLiteral("
\r\n
"); } #pragma warning restore 1998 } }