internal static void SendPerformanceLogEvent()
        {
            PerformanceLogEvent evt = new PerformanceLogEvent();
            var options             = new TrackerReportOptions();

            options.showSamples = true;
            options.showPeak    = true;
            options.showAvg     = true;
            options.showTotal   = true;
            options.sort        = true;
            options.sortBy      = ColumnId.AvgTime;
            options.sortAsc     = false;
            evt.report          = PerformanceTrackerReportUtils.GenerateTrackerReport(options);
            evt.Done();

            Send(EventName.PerformanceLogEvent, evt);
        }
コード例 #2
0
        public static void OpenBugReportingTool(string marker, Analytics.ActionSource source = Analytics.ActionSource.Scripting)
        {
            Analytics.SendPerformanceActionEvent(new Analytics.PerformanceActionEvent(
                                                     Analytics.ActionType.LogPerformanceBug,
                                                     marker, source));
            var options = new TrackerReportOptions();

            options.showSamples = true;
            options.showPeak    = true;
            options.showAvg     = true;
            options.showTotal   = true;
            options.sort        = true;
            options.sortBy      = ColumnId.PeakTime;
            options.sortAsc     = false;
            var report = PerformanceTrackerReportUtils.GetAllTrackersReport(options);

            var reportFilePath = SavePerformanceTrackerReport(report);

            var descriptionBuilder = new StringBuilder();

            descriptionBuilder.AppendLine("1. What is slow (complete performance tracker report attached)");
            if (!string.IsNullOrEmpty(marker))
            {
                options.trackerFilter = $"^{marker}$";
                var markerReport = PerformanceTrackerReportUtils.GetTrackersReport(options);
                descriptionBuilder.AppendLine();
                descriptionBuilder.AppendLine(markerReport);
            }
            descriptionBuilder.AppendLine();
            descriptionBuilder.Append("2. How we can reproduce it using the example you attached");

            var myAssets = new[]
            {
                GetFullPath(reportFilePath)
            };

            BugReporterUtils.OpenBugReporter(descriptionBuilder.ToString(), myAssets);
        }