예제 #1
0
        public void statePrepare(reportPlugIn_workload_settings plugin_settings)
        {
            TestID  = imbWEMManager.index.experimentEntry.TestID;
            Crawler = imbWEMManager.index.experimentEntry.CrawlID;

            RecordID = 0;
            //settings = plugin_settings;
            DLCDoneForNext = plugin_settings.stepUp_DLCCount;

            trendMemory        = new measureTrendTaker <performanceResourcesTake>(x => x.physicalMemory, "RAM", "MiB", plugin_settings.macroSampleSize, -1, -1, plugin_settings.ZeroMargin);
            trendMemory.format = "#,###.##";

            trendCPU        = new measureTrendTaker <performanceResourcesTake>(x => x.cpuRateOfProcess, "CPUp", "%", plugin_settings.macroSampleSize, -1, -1, plugin_settings.ZeroMargin);
            trendCPU.format = "P2";

            trendCPUm        = new measureTrendTaker <performanceTake>(x => (x.reading / 100), "CPUm", "%", plugin_settings.macroSampleSize, -1, -1, plugin_settings.ZeroMargin);
            trendCPUm.format = "P2";

            trendDataLoad        = new measureTrendTaker <performanceResourcesTake>(x => x.bytesLoadedSample * x.PerMinuteFactor, "Data", "MiB/min", plugin_settings.macroSampleSize, -1, -1, plugin_settings.ZeroMargin);
            trendDataLoad.format = "#,###.##";

            trendContentPages        = new measureTrendTaker <performanceDataLoadTake>(x => x.ContentPages * x.PerMinuteFactor, "Pages", "n/min", plugin_settings.macroSampleSize, -1, -1, plugin_settings.ZeroMargin);
            trendContentPages.format = "#,###.##";

            trendContentTerms        = new measureTrendTaker <performanceDataLoadTake>(x => x.ContentTerms * x.PerMinuteFactor, "Terms", "n/min", plugin_settings.macroSampleSize, -1, -1, plugin_settings.ZeroMargin);
            trendContentTerms.format = "#,###.##";

            trendIterations        = new measureTrendTaker <performanceDataLoadTake>(x => x.CrawlerIterations * x.PerMinuteFactor, "Cycles", "i/min", plugin_settings.macroSampleSize, -1, -1, plugin_settings.ZeroMargin);
            trendIterations.format = "#,###.##";
        }
예제 #2
0
        /// <summary>
        /// Gets the trend.
        /// </summary>
        /// <param name="typedTaker">The typed taker.</param>
        /// <returns></returns>
        public measureTrend GetTrend(measureTrendTaker <T> typedTaker)
        {
            var sampleset = GetLastSamples(typedTaker.MacroSampleSize);

            var sValues = (from num in sampleset select typedTaker.selector(num));

            measureTrend trend = new measureTrend(sValues, typedTaker, sampleset.GetTimeSpan());

            return(trend);
        }
        /// <summary>
        /// Gets the trend.
        /// </summary>
        /// <param name="selector">The selector.</param>
        /// <param name="trendTaker">The trend taker.</param>
        /// <returns></returns>
        public measureTrend GetTrend(Func <T, double> selector, measureTrendTaker trendTaker)
        {
            var sampleset = GetLastSamples(trendTaker.MacroSampleSize);

            //sampleset.Min(x=>x.samplingTime)

            var sValues = (from num in sampleset select selector(num));

            measureTrend trend = new measureTrend(sValues, trendTaker, sampleset.GetTimeSpan());

            return(trend);
        }