public void RenderReport(BaseReportView baseViewModel)
        {
            CrashReportView viewModel = (CrashReportView)baseViewModel;
            var             region    = new Region(0,
                                                   0,
                                                   1080,
                                                   10800,
                                                   true);



            var console = _invocationContext;

            if (console is ITerminal terminal)
            {
                terminal.Clear();
            }

            console.Append(new ContentView("Dump details"));
            console.Append(new SplitterView());
            console.Append(new DumpDetailsView(viewModel));
            StackLayoutView stackLayoutView2 = new StackLayoutView
            {
                new TemplateStackView("Thread details", new ThreadsDetailView(viewModel)),
                new TemplateStackView("Threads with exceptions", new StackFramesStackView(viewModel)),
                new SplitterView()
            };
            var screen = new ScreenView(_consoleRenderer, _invocationContext)
            {
                Child = stackLayoutView2
            };

            screen.Render(region);
        }
Ejemplo n.º 2
0
 public DumpDetailsView(BaseReportView reportView)
 {
     SetColumns(ColumnDefinition.Star(0.3), ColumnDefinition.Star(1));
     SetRows(RowDefinition.Star(1), RowDefinition.Star(1), RowDefinition.Star(1), RowDefinition.Star(1), RowDefinition.Star(1), RowDefinition.Star(1));
     SetChild(new ContentView("Main Module Name"), 0, 0);
     SetChild(new ContentView($"{reportView.MainModuleName}"), 1, 0);
     SetChild(new ContentView("Clr Version"), 0, 1);
     SetChild(new ContentView($"{reportView.ClrVersion}"), 1, 1);
     SetChild(new ContentView("Dotnet type"), 0, 2);
     SetChild(new ContentView($"{reportView.DotnetFlavor}"), 1, 2);
     SetChild(new ContentView("GC Mode"), 0, 3);
     SetChild(new ContentView($"{reportView.GCMode}"), 1, 3);
     SetChild(new ContentView("Dump file analyzed"), 0, 4);
     SetChild(new ContentView($"{reportView.DumpPath}"), 1, 4);
 }
Ejemplo n.º 3
0
        public void RenderReport(BaseReportView baseViewModel)
        {
            MemoryReportView viewModel = (MemoryReportView)baseViewModel;
            var region = new Region(0,
                                    0,
                                    1080,
                                    10800,
                                    true);



            var console = _invocationContext;

            if (console is ITerminal terminal)
            {
                terminal.Clear();
            }

            console.Append(new ContentView("Dump details"));
            console.Append(new SplitterView());
            console.Append(new DumpDetailsView(viewModel));
            console.Append(new ContentView("\n\n"));
            StackLayoutView stackLayoutView2 = new StackLayoutView
            {
                new SplitterView(),
                new ContentView($"Total GC Heap Size: {viewModel.TotalGCMemory}"),
                new SplitterView(),
                new ContentView("\n\n"),
                new TemplateStackView("GC split per logical heap", new HeapBalanceView(viewModel)),
                new TemplateStackView("Memory stats per GC type", new GCHeapBreakupView(viewModel)),
                new TemplateStackView("LOH stats", new LOHView(viewModel)),
                new TemplateStackView("Finalizer Object Stats", new FinalizerView(viewModel)),
                new TemplateStackView("Top 50 Types consumig memory", new HeapStatsView(viewModel)),
                new SplitterView()
            };
            var screen = new ScreenView(_consoleRenderer, _invocationContext)
            {
                Child = stackLayoutView2
            };

            screen.Render(region);
        }
Ejemplo n.º 4
0
 public void GenerateReport(BaseReportView viewModel, string templatePath)
 {
     _reportRender.RenderReport(viewModel);
 }
Ejemplo n.º 5
0
 public void GenerateReport(BaseReportView viewModel, string templatePath)
 {
     throw new NotImplementedException();
 }