diff --git a/src/Microsoft.AspNet.Diagnostics.Elm/ActivityContext.cs b/src/Microsoft.AspNet.Diagnostics.Elm/ActivityContext.cs index 41833c3955..16b22fbc1a 100644 --- a/src/Microsoft.AspNet.Diagnostics.Elm/ActivityContext.cs +++ b/src/Microsoft.AspNet.Diagnostics.Elm/ActivityContext.cs @@ -14,5 +14,7 @@ namespace Microsoft.AspNet.Diagnostics.Elm public DateTimeOffset Time { get; set; } public bool IsCollapsed { get; set; } + + public bool RepresentsScope { get; set; } } } \ No newline at end of file diff --git a/src/Microsoft.AspNet.Diagnostics.Elm/ElmLogger.cs b/src/Microsoft.AspNet.Diagnostics.Elm/ElmLogger.cs index 9238d6d6e1..2e25edca93 100644 --- a/src/Microsoft.AspNet.Diagnostics.Elm/ElmLogger.cs +++ b/src/Microsoft.AspNet.Diagnostics.Elm/ElmLogger.cs @@ -45,7 +45,7 @@ namespace Microsoft.AspNet.Diagnostics.Elm else { var context = GetNewActivityContext(); - context.Id = Guid.Empty; // mark as a non-scope log + context.RepresentsScope = false; // mark as a non-scope log context.Root = new ScopeNode(); context.Root.Messages.Add(info); _store.AddActivity(context); @@ -69,7 +69,8 @@ namespace Microsoft.AspNet.Diagnostics.Elm return new ActivityContext() { Id = Guid.NewGuid(), - Time = DateTimeOffset.UtcNow + Time = DateTimeOffset.UtcNow, + RepresentsScope = true }; } diff --git a/src/Microsoft.AspNet.Diagnostics.Elm/ElmPageMiddleware.cs b/src/Microsoft.AspNet.Diagnostics.Elm/ElmPageMiddleware.cs index 9cf5614540..0c4dab97b4 100644 --- a/src/Microsoft.AspNet.Diagnostics.Elm/ElmPageMiddleware.cs +++ b/src/Microsoft.AspNet.Diagnostics.Elm/ElmPageMiddleware.cs @@ -49,7 +49,7 @@ namespace Microsoft.AspNet.Diagnostics.Elm } else { - RenderRequestDetailsPage(options, context); + RenderDetailsPage(options, context); } } @@ -66,24 +66,23 @@ namespace Microsoft.AspNet.Diagnostics.Elm await logPage.ExecuteAsync(context); } - private async void RenderRequestDetailsPage(ViewOptions options, HttpContext context) + private async void RenderDetailsPage(ViewOptions options, HttpContext context) { var parts = context.Request.Path.Value.Split('/'); var id = Guid.Empty; if (!Guid.TryParse(parts[parts.Length - 1], out id)) { context.Response.StatusCode = 400; - await context.Response.WriteAsync("Invalid Request Id"); + await context.Response.WriteAsync("Invalid Id"); return; } - var model = new RequestPageModel() + var model = new DetailsPageModel() { - RequestID = id, - Activity = _store.GetActivities().Where(a => a.HttpInfo?.RequestID == id).FirstOrDefault(), + Activity = _store.GetActivities().Where(a => a.Id == id).FirstOrDefault(), Options = options }; - var requestPage = new RequestPage(model); - await requestPage.ExecuteAsync(context); + var detailsPage = new DetailsPage(model); + await detailsPage.ExecuteAsync(context); } private async Task> ParseParams(HttpContext context) diff --git a/src/Microsoft.AspNet.Diagnostics.Elm/Views/RequestPage.cs b/src/Microsoft.AspNet.Diagnostics.Elm/Views/DetailsPage.cs similarity index 87% rename from src/Microsoft.AspNet.Diagnostics.Elm/Views/RequestPage.cs rename to src/Microsoft.AspNet.Diagnostics.Elm/Views/DetailsPage.cs index fbee9111ae..52d3684656 100644 --- a/src/Microsoft.AspNet.Diagnostics.Elm/Views/RequestPage.cs +++ b/src/Microsoft.AspNet.Diagnostics.Elm/Views/DetailsPage.cs @@ -1,42 +1,42 @@ namespace Microsoft.AspNet.Diagnostics.Elm.Views { -#line 1 "RequestPage.cshtml" +#line 1 "DetailsPage.cshtml" using System #line default #line hidden ; -#line 2 "RequestPage.cshtml" +#line 2 "DetailsPage.cshtml" using System.Globalization #line default #line hidden ; -#line 3 "RequestPage.cshtml" +#line 3 "DetailsPage.cshtml" using System.Linq #line default #line hidden ; -#line 4 "RequestPage.cshtml" +#line 4 "DetailsPage.cshtml" using Microsoft.AspNet.Diagnostics.Elm #line default #line hidden ; -#line 5 "RequestPage.cshtml" +#line 5 "DetailsPage.cshtml" using Microsoft.AspNet.Diagnostics.Views #line default #line hidden ; -#line 6 "RequestPage.cshtml" +#line 6 "DetailsPage.cshtml" using Microsoft.AspNet.Diagnostics.Elm.Views #line default #line hidden ; -#line 7 "RequestPage.cshtml" +#line 7 "DetailsPage.cshtml" using Microsoft.Framework.Logging #line default @@ -44,17 +44,17 @@ using Microsoft.Framework.Logging ; using System.Threading.Tasks; - public class RequestPage : Microsoft.AspNet.Diagnostics.Views.BaseView + public class DetailsPage : Microsoft.AspNet.Diagnostics.Views.BaseView { public HelperResult -#line 19 "RequestPage.cshtml" +#line 19 "DetailsPage.cshtml" LogRow(LogInfo log) { #line default #line hidden return new HelperResult((__razor_helper_writer) => { -#line 20 "RequestPage.cshtml" +#line 20 "DetailsPage.cshtml" if (log.Severity >= Model.Options.MinLevel && (string.IsNullOrEmpty(Model.Options.NamePrefix) || log.Name.StartsWith(Model.Options.NamePrefix, StringComparison.Ordinal))) @@ -64,13 +64,13 @@ LogRow(LogInfo log) #line hidden WriteLiteralTo(__razor_helper_writer, " \r\n "); -#line 25 "RequestPage.cshtml" +#line 25 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, string.Format("{0:MM/dd/yy}", log.Time)); #line default #line hidden WriteLiteralTo(__razor_helper_writer, "\r\n "); -#line 26 "RequestPage.cshtml" +#line 26 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, string.Format("{0:H:mm:ss}", log.Time)); #line default @@ -79,7 +79,7 @@ WriteTo(__razor_helper_writer, string.Format("{0:H:mm:ss}", log.Time)); WriteAttributeTo(__razor_helper_writer, "class", Tuple.Create(" class=\"", 768), Tuple.Create("\"", 819), Tuple.Create(Tuple.Create("", 776), Tuple.Create(log.Severity.ToString().ToLowerInvariant(), 776), false)); WriteLiteralTo(__razor_helper_writer, ">"); -#line 27 "RequestPage.cshtml" +#line 27 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, log.Severity); #line default @@ -88,7 +88,7 @@ WriteTo(__razor_helper_writer, string.Format("{0:H:mm:ss}", log.Time)); WriteAttributeTo(__razor_helper_writer, "title", Tuple.Create(" title=\"", 856), Tuple.Create("\"", 873), Tuple.Create(Tuple.Create("", 864), Tuple.Create(log.Name, 864), false)); WriteLiteralTo(__razor_helper_writer, ">"); -#line 28 "RequestPage.cshtml" +#line 28 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, log.Name); #line default @@ -97,7 +97,7 @@ WriteTo(__razor_helper_writer, string.Format("{0:H:mm:ss}", log.Time)); WriteAttributeTo(__razor_helper_writer, "title", Tuple.Create(" title=\"", 906), Tuple.Create("\"", 926), Tuple.Create(Tuple.Create("", 914), Tuple.Create(log.Message, 914), false)); WriteLiteralTo(__razor_helper_writer, " class=\"logState\" width=\"100px\">"); -#line 29 "RequestPage.cshtml" +#line 29 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, log.Message); #line default @@ -106,13 +106,13 @@ WriteTo(__razor_helper_writer, string.Format("{0:H:mm:ss}", log.Time)); WriteAttributeTo(__razor_helper_writer, "title", Tuple.Create(" title=\"", 993), Tuple.Create("\"", 1015), Tuple.Create(Tuple.Create("", 1001), Tuple.Create(log.Exception, 1001), false)); WriteLiteralTo(__razor_helper_writer, ">"); -#line 30 "RequestPage.cshtml" +#line 30 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, log.Exception); #line default #line hidden WriteLiteralTo(__razor_helper_writer, "\r\n \r\n"); -#line 32 "RequestPage.cshtml" +#line 32 "DetailsPage.cshtml" } #line default @@ -120,21 +120,21 @@ WriteTo(__razor_helper_writer, string.Format("{0:H:mm:ss}", log.Time)); } ); -#line 33 "RequestPage.cshtml" +#line 33 "DetailsPage.cshtml" } #line default #line hidden public HelperResult -#line 35 "RequestPage.cshtml" +#line 35 "DetailsPage.cshtml" Traverse(ScopeNode node) { #line default #line hidden return new HelperResult((__razor_helper_writer) => { -#line 36 "RequestPage.cshtml" +#line 36 "DetailsPage.cshtml" var messageIndex = 0; var childIndex = 0; @@ -147,12 +147,12 @@ Traverse(ScopeNode node) #line default #line hidden -#line 43 "RequestPage.cshtml" +#line 43 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, LogRow(node.Messages[messageIndex])); #line default #line hidden -#line 43 "RequestPage.cshtml" +#line 43 "DetailsPage.cshtml" messageIndex++; } @@ -163,12 +163,12 @@ WriteTo(__razor_helper_writer, LogRow(node.Messages[messageIndex])); #line default #line hidden -#line 48 "RequestPage.cshtml" +#line 48 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, Traverse(node.Children[childIndex])); #line default #line hidden -#line 48 "RequestPage.cshtml" +#line 48 "DetailsPage.cshtml" childIndex++; } @@ -182,12 +182,12 @@ WriteTo(__razor_helper_writer, Traverse(node.Children[childIndex])); #line default #line hidden -#line 56 "RequestPage.cshtml" +#line 56 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, LogRow(node.Messages[i])); #line default #line hidden -#line 56 "RequestPage.cshtml" +#line 56 "DetailsPage.cshtml" } } @@ -200,12 +200,12 @@ WriteTo(__razor_helper_writer, LogRow(node.Messages[i])); #line default #line hidden -#line 63 "RequestPage.cshtml" +#line 63 "DetailsPage.cshtml" WriteTo(__razor_helper_writer, Traverse(node.Children[i])); #line default #line hidden -#line 63 "RequestPage.cshtml" +#line 63 "DetailsPage.cshtml" } } @@ -215,25 +215,25 @@ WriteTo(__razor_helper_writer, Traverse(node.Children[i])); } ); -#line 66 "RequestPage.cshtml" +#line 66 "DetailsPage.cshtml" } #line default #line hidden -#line 10 "RequestPage.cshtml" +#line 10 "DetailsPage.cshtml" - public RequestPage(RequestPageModel model) + public DetailsPage(DetailsPageModel model) { Model = model; } - public RequestPageModel Model { get; set; } + public DetailsPageModel Model { get; set; } #line default #line hidden #line hidden - public RequestPage() + public DetailsPage() { } @@ -350,13 +350,13 @@ td, th {

ASP.NET Logs

"); -#line 80 "RequestPage.cshtml" +#line 80 "DetailsPage.cshtml" #line default #line hidden -#line 80 "RequestPage.cshtml" +#line 80 "DetailsPage.cshtml" var context = Model.Activity?.HttpInfo; @@ -365,13 +365,13 @@ td, th { #line hidden WriteLiteral("\r\n"); -#line 83 "RequestPage.cshtml" +#line 83 "DetailsPage.cshtml" #line default #line hidden -#line 83 "RequestPage.cshtml" +#line 83 "DetailsPage.cshtml" if (context != null) { @@ -381,35 +381,35 @@ td, th { WriteLiteral("

Request Details

\r\n \r\n \r\n\r\n " + " \r\n \r\n \r\n \r\n \r\n \r\n " + " \r\n \r\n \r\n " + "\r\n \r\n \r\n \r\n \r\n " + " \r\n \r\n \r\n \r\n " + " "); -#line 120 "RequestPage.cshtml" +#line 120 "DetailsPage.cshtml" #line default #line hidden -#line 120 "RequestPage.cshtml" +#line 120 "DetailsPage.cshtml" foreach (var header in context.Headers) { @@ -442,19 +442,19 @@ td, th { #line hidden WriteLiteral(" \r\n \r\n \r\n \r\n"); -#line 126 "RequestPage.cshtml" +#line 126 "DetailsPage.cshtml" } #line default @@ -463,27 +463,27 @@ td, th { WriteLiteral(" \r\n
Path"); -#line 91 "RequestPage.cshtml" +#line 91 "DetailsPage.cshtml" Write(context.Path); #line default #line hidden WriteLiteral("
Host"); -#line 95 "RequestPage.cshtml" +#line 95 "DetailsPage.cshtml" Write(context.Host); #line default #line hidden WriteLiteral("
Content Type"); -#line 99 "RequestPage.cshtml" +#line 99 "DetailsPage.cshtml" Write(context.ContentType); #line default #line hidden WriteLiteral("
Method"); -#line 103 "RequestPage.cshtml" +#line 103 "DetailsPage.cshtml" Write(context.Method); #line default #line hidden WriteLiteral("
Protocol"); -#line 107 "RequestPage.cshtml" +#line 107 "DetailsPage.cshtml" Write(context.Protocol); #line default @@ -428,13 +428,13 @@ td, th {
"); -#line 123 "RequestPage.cshtml" +#line 123 "DetailsPage.cshtml" Write(header.Key); #line default #line hidden WriteLiteral(""); -#line 124 "RequestPage.cshtml" +#line 124 "DetailsPage.cshtml" Write(string.Join(";", header.Value)); #line default #line hidden WriteLiteral("
\r\n <" + "/td>\r\n \r\n \r\n Status Code\r" + "\n "); -#line 133 "RequestPage.cshtml" +#line 133 "DetailsPage.cshtml" Write(context.StatusCode); #line default #line hidden WriteLiteral("\r\n \r\n \r\n User\r\n " + " "); -#line 137 "RequestPage.cshtml" +#line 137 "DetailsPage.cshtml" Write(context.User.Identity.Name); #line default #line hidden WriteLiteral("\r\n \r\n \r\n Claims\r\n " + " \r\n"); -#line 142 "RequestPage.cshtml" +#line 142 "DetailsPage.cshtml" #line default #line hidden -#line 142 "RequestPage.cshtml" +#line 142 "DetailsPage.cshtml" if (context.User.Claims.Any()) { @@ -499,13 +499,13 @@ td, th { "); -#line 152 "RequestPage.cshtml" +#line 152 "DetailsPage.cshtml" #line default #line hidden -#line 152 "RequestPage.cshtml" +#line 152 "DetailsPage.cshtml" foreach (var claim in context.User.Claims) { @@ -514,26 +514,26 @@ td, th { WriteLiteral(" \r\n " + " "); -#line 155 "RequestPage.cshtml" +#line 155 "DetailsPage.cshtml" Write(claim.Issuer); #line default #line hidden WriteLiteral("\r\n "); -#line 156 "RequestPage.cshtml" +#line 156 "DetailsPage.cshtml" Write(claim.Value); #line default #line hidden WriteLiteral("\r\n \r\n"); -#line 158 "RequestPage.cshtml" +#line 158 "DetailsPage.cshtml" } #line default #line hidden WriteLiteral(" \r\n \r\n"); -#line 161 "RequestPage.cshtml" +#line 161 "DetailsPage.cshtml" } #line default @@ -541,27 +541,27 @@ td, th { WriteLiteral(" \r\n \r\n \r\n S" + "cheme\r\n "); -#line 166 "RequestPage.cshtml" +#line 166 "DetailsPage.cshtml" Write(context.Scheme); #line default #line hidden WriteLiteral("\r\n \r\n \r\n Query\r\n " + " "); -#line 170 "RequestPage.cshtml" +#line 170 "DetailsPage.cshtml" Write(context.Query.Value); #line default #line hidden WriteLiteral("\r\n \r\n \r\n Cookies\r\n " + " \r\n"); -#line 175 "RequestPage.cshtml" +#line 175 "DetailsPage.cshtml" #line default #line hidden -#line 175 "RequestPage.cshtml" +#line 175 "DetailsPage.cshtml" if (context.Cookies.Any()) { @@ -577,13 +577,13 @@ td, th { "); -#line 185 "RequestPage.cshtml" +#line 185 "DetailsPage.cshtml" #line default #line hidden -#line 185 "RequestPage.cshtml" +#line 185 "DetailsPage.cshtml" foreach (var cookie in context.Cookies) { @@ -592,46 +592,46 @@ td, th { WriteLiteral(" \r\n " + " "); -#line 188 "RequestPage.cshtml" +#line 188 "DetailsPage.cshtml" Write(cookie.Key); #line default #line hidden WriteLiteral("\r\n "); -#line 189 "RequestPage.cshtml" +#line 189 "DetailsPage.cshtml" Write(string.Join(";", cookie.Value)); #line default #line hidden WriteLiteral("\r\n \r\n"); -#line 191 "RequestPage.cshtml" +#line 191 "DetailsPage.cshtml" } #line default #line hidden WriteLiteral(" \r\n \r\n"); -#line 194 "RequestPage.cshtml" +#line 194 "DetailsPage.cshtml" } #line default #line hidden WriteLiteral(" \r\n \r\n \r\n"); -#line 198 "RequestPage.cshtml" +#line 198 "DetailsPage.cshtml" } #line default #line hidden WriteLiteral("

Logs

\r\n
\r\n