Ejemplo n.º 1
0
        public override void Snapshot(string id, System.Xml.XmlTextWriter writer)
        {
            writer.WriteStartElement(id + "_Statistics");
            writer.WriteAttributeString("ID", ID.ToString());
            writer.WriteAttributeString("ReceivedRequestCount", ReceivedRequestCount.ToString());
            writer.WriteAttributeString("ReceivedReadRequestCount", ReceivedReadRequestCount.ToString());
            writer.WriteAttributeString("ReceivedWriteRequestCount", ReceivedWriteRequestCount.ToString());
            writer.WriteAttributeString("HandledRequestsCount", HandledRequestsCount.ToString());
            writer.WriteAttributeString("HandledReadRequestsCount", HandledReadRequestsCount.ToString());
            writer.WriteAttributeString("HandledWriteRequestsCount", HandledWriteRequestsCount.ToString());
            writer.WriteAttributeString("IgnoredRequestsRatio", RatioOfIgnoredRequests.ToString());

            writer.WriteAttributeString("AverageCMDLifeTime_us", AverageCMDLifeTime.ToString());
            writer.WriteAttributeString("AverageCMDExecutionTime_us", AverageCMDExecutionTime.ToString());
            writer.WriteAttributeString("AverageCMDTransferTime_us", AverageCMDTransferTime.ToString());
            writer.WriteAttributeString("AverageCMDWaitingTime_us", AverageCMDWaitingTime.ToString());

            writer.WriteAttributeString("AverageReadCMDLifeTime_us", AverageReadCMDLifeTime.ToString());
            writer.WriteAttributeString("AverageReadCMDExecutionTime_us", AverageReadCMDExecutionTime.ToString());
            writer.WriteAttributeString("AverageReadCMDTransferTime_us", AverageReadCMDTransferTime.ToString());
            writer.WriteAttributeString("AverageReadCMDWaitingTime_us", AverageReadCMDWaitingTime.ToString());

            writer.WriteAttributeString("AverageProgramCMDLifeTime_us", AverageProgramCMDLifeTime.ToString());
            writer.WriteAttributeString("AverageProgramCMDExecutionTime_us", AverageProgramCMDExecutionTime.ToString());
            writer.WriteAttributeString("AverageProgramCMDTransferTime_us", AverageProgramCMDTransferTime.ToString());
            writer.WriteAttributeString("AverageProgramCMDWaitingTime_us", AverageProgramCMDWaitingTime.ToString());


            writer.WriteStartElement(id + "_Statistics_AfterGCStart");
            writer.WriteAttributeString("ID", ID.ToString());
            writer.WriteAttributeString("HandledRequestsCount", HandledRequestsCount_AGC.ToString());
            writer.WriteAttributeString("HandledReadRequestsCount", HandledReadRequestsCount_AGC.ToString());
            writer.WriteAttributeString("HandledWriteRequestsCount", HandledWriteRequestsCount_AGC.ToString());

            writer.WriteAttributeString("AverageCMDLifeTime_us", AverageCMDLifeTime_AGC.ToString());
            writer.WriteAttributeString("AverageCMDExecutionTime_us", AverageCMDExecutionTime_AGC.ToString());
            writer.WriteAttributeString("AverageCMDTransferTime_us", AverageCMDTransferTime_AGC.ToString());
            writer.WriteAttributeString("AverageCMDWaitingTime_us", AverageCMDWaitingTime_AGC.ToString());

            writer.WriteAttributeString("AverageReadCMDLifeTime_us", AverageReadCMDLifeTime_AGC.ToString());
            writer.WriteAttributeString("AverageReadCMDExecutionTime_us", AverageReadCMDExecutionTime_AGC.ToString());
            writer.WriteAttributeString("AverageReadCMDTransferTime_us", AverageReadCMDTransferTime_AGC.ToString());
            writer.WriteAttributeString("AverageReadCMDWaitingTime_us", AverageReadCMDWaitingTime_AGC.ToString());

            writer.WriteAttributeString("AverageProgramCMDLifeTime_us", AverageProgramCMDLifeTime_AGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDExecutionTime_us", AverageProgramCMDExecutionTime_AGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDTransferTime_us", AverageProgramCMDTransferTime_AGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDWaitingTime_us", AverageProgramCMDWaitingTime_AGC.ToString());
            writer.WriteEndElement();

            for (int i = 0; i < numberOfStreams; i++)
            {
                writer.WriteStartElement("Stream_Statistics");
                _inputStreams[i].Snapshot(writer);
                _inputStreams[i].Close();
                writer.WriteEndElement();
            }
        }
        public override void Snapshot(string id, System.Xml.XmlTextWriter writer)
        {
            writer.WriteStartElement(id + "_Statistics");
            writer.WriteAttributeString("ID", ID.ToString());
            writer.WriteAttributeString("ReceivedRequestCount", ReceivedRequestCount.ToString());
            writer.WriteAttributeString("ReceivedReadRequestCount", ReceivedReadRequestCount.ToString());
            writer.WriteAttributeString("ReceivedWriteRequestCount", ReceivedWriteRequestCount.ToString());
            writer.WriteAttributeString("HandledRequestsCount", HandledRequestsCount.ToString());
            writer.WriteAttributeString("HandledReadRequestsCount", HandledReadRequestsCount.ToString());
            writer.WriteAttributeString("HandledWriteRequestsCount", HandledWriteRequestsCount.ToString());
            writer.WriteAttributeString("AvgResponseTime_us", AvgResponseTime.ToString());
            writer.WriteAttributeString("MinResponseTime_us", MinResponseTime.ToString());
            writer.WriteAttributeString("MaxResponseTime_us", MaxResponseTime.ToString());
            writer.WriteAttributeString("AvgResponseTimeRead_us", AvgResponseTimeR.ToString());
            writer.WriteAttributeString("MinResponseTimeRead_us", MinResponseTimeR.ToString());
            writer.WriteAttributeString("MaxResponseTimeRead_us", MaxResponseTimeR.ToString());
            writer.WriteAttributeString("AvgResponseTimeWrite_us", AvgResponseTimeW.ToString());
            writer.WriteAttributeString("MinResponseTimeWrite_us", MinResponseTimeW.ToString());
            writer.WriteAttributeString("MaxResponseTimeWrite_us", MaxResponseTimeW.ToString());

            writer.WriteAttributeString("AverageCMDLifeTime_ms", AverageCMDLifeTime.ToString());
            writer.WriteAttributeString("AverageCMDExecutionTime_ms", AverageCMDExecutionTime.ToString());
            writer.WriteAttributeString("AverageCMDTransferTime_ms", AverageCMDTransferTime.ToString());
            writer.WriteAttributeString("AverageCMDWaitingTime_ms", AverageCMDWaitingTime.ToString());

            writer.WriteAttributeString("AverageReadCMDLifeTime_ms", AverageReadCMDLifeTime.ToString());
            writer.WriteAttributeString("AverageReadCMDExecutionTime_ms", AverageReadCMDExecutionTime.ToString());
            writer.WriteAttributeString("AverageReadCMDTransferTime_ms", AverageReadCMDTransferTime.ToString());
            writer.WriteAttributeString("AverageReadCMDWaitingTime_ms", AverageReadCMDWaitingTime.ToString());

            writer.WriteAttributeString("AverageProgramCMDLifeTime_ms", AverageProgramCMDLifeTime.ToString());
            writer.WriteAttributeString("AverageProgramCMDExecutionTime_ms", AverageProgramCMDExecutionTime.ToString());
            writer.WriteAttributeString("AverageProgramCMDTransferTime_ms", AverageProgramCMDTransferTime.ToString());
            writer.WriteAttributeString("AverageProgramCMDWaitingTime_ms", AverageProgramCMDWaitingTime.ToString());

            writer.WriteAttributeString("IOPS", IOPS.ToString());
            writer.WriteAttributeString("IOPSRead", IOPSReads.ToString());
            writer.WriteAttributeString("IOPSWrite", IOPSWrites.ToString());
            writer.WriteAttributeString("AggregateBandWidth_MB", AggregateBandWidth.ToString());
            writer.WriteAttributeString("AggregateBandWidthRead_MB", AggregateBandWidthReads.ToString());
            writer.WriteAttributeString("AggregateBandWidthWrites_MB", AggregateBandWidthWrites.ToString());
            writer.WriteEndElement();


            writer.WriteStartElement(id + "_Statistics_AfterGCStart");
            writer.WriteAttributeString("ID", ID.ToString());
            writer.WriteAttributeString("HandledRequestsCount", HandledRequestsCount_AGC.ToString());
            writer.WriteAttributeString("HandledReadRequestsCount", HandledReadRequestsCount_AGC.ToString());
            writer.WriteAttributeString("HandledWriteRequestsCount", HandledWriteRequestsCount_AGC.ToString());
            writer.WriteAttributeString("AvgResponseTime_us", AvgResponseTime_AGC.ToString());
            writer.WriteAttributeString("MinResponseTime_us", MinResponseTime_AGC.ToString());
            writer.WriteAttributeString("MaxResponseTime_us", MaxResponseTime_AGC.ToString());
            writer.WriteAttributeString("AvgResponseTimeRead_us", AvgResponseTimeR_AGC.ToString());
            writer.WriteAttributeString("MinResponseTimeRead_us", MinResponseTimeR_AGC.ToString());
            writer.WriteAttributeString("MaxResponseTimeRead_us", MaxResponseTimeR_AGC.ToString());
            writer.WriteAttributeString("AvgResponseTimeWrite_us", AvgResponseTimeW_AGC.ToString());
            writer.WriteAttributeString("MinResponseTimeWrite_us", MinResponseTimeW_AGC.ToString());
            writer.WriteAttributeString("MaxResponseTimeWrite_us", MaxResponseTimeW_AGC.ToString());

            writer.WriteAttributeString("AverageCMDLifeTime_ms", AverageCMDLifeTime_AGC.ToString());
            writer.WriteAttributeString("AverageCMDExecutionTime_ms", AverageCMDExecutionTime_AGC.ToString());
            writer.WriteAttributeString("AverageCMDTransferTime_ms", AverageCMDTransferTime_AGC.ToString());
            writer.WriteAttributeString("AverageCMDWaitingTime_ms", AverageCMDWaitingTime_AGC.ToString());

            writer.WriteAttributeString("AverageReadCMDLifeTime_ms", AverageReadCMDLifeTime_AGC.ToString());
            writer.WriteAttributeString("AverageReadCMDExecutionTime_ms", AverageReadCMDExecutionTime_AGC.ToString());
            writer.WriteAttributeString("AverageReadCMDTransferTime_ms", AverageReadCMDTransferTime_AGC.ToString());
            writer.WriteAttributeString("AverageReadCMDWaitingTime_ms", AverageReadCMDWaitingTime_AGC.ToString());

            writer.WriteAttributeString("AverageProgramCMDLifeTime_ms", AverageProgramCMDLifeTime_AGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDExecutionTime_ms", AverageProgramCMDExecutionTime_AGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDTransferTime_ms", AverageProgramCMDTransferTime_AGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDWaitingTime_ms", AverageProgramCMDWaitingTime_AGC.ToString());

            writer.WriteAttributeString("IOPS", IOPS_AGC.ToString());
            writer.WriteAttributeString("IOPSRead", IOPSReads_AGC.ToString());
            writer.WriteAttributeString("IOPSWrite", IOPSWrites_AGC.ToString());
            writer.WriteAttributeString("AggregateBandWidth_MB", AggregateBandWidth_AGC.ToString());
            writer.WriteAttributeString("AggregateBandWidthRead_MB", AggregateBandWidthReads_AGC.ToString());
            writer.WriteAttributeString("AggregateBandWidthWrites_MB", AggregateBandWidthWrites_AGC.ToString());
            writer.WriteEndElement();

            writer.WriteStartElement(id + "_Statistics" + "_BeforeGCStart");
            writer.WriteAttributeString("ID", ID.ToString());
            writer.WriteAttributeString("HandledRequestsCount", HandledRequestsCount_BGC.ToString());
            writer.WriteAttributeString("HandledReadRequestsCount", HandledReadRequestsCount_BGC.ToString());
            writer.WriteAttributeString("HandledWriteRequestsCount", HandledWriteRequestsCount_BGC.ToString());
            writer.WriteAttributeString("AvgResponseTime_us", AvgResponseTime_BGC.ToString());
            writer.WriteAttributeString("MinResponseTime_us", MinResponseTime_BGC.ToString());
            writer.WriteAttributeString("MaxResponseTime_us", MaxResponseTime_BGC.ToString());
            writer.WriteAttributeString("AvgResponseTimeRead_us", AvgResponseTimeR_BGC.ToString());
            writer.WriteAttributeString("MinResponseTimeRead_us", MinResponseTimeR_BGC.ToString());
            writer.WriteAttributeString("MaxResponseTimeRead_us", MaxResponseTimeR_BGC.ToString());
            writer.WriteAttributeString("AvgResponseTimeWrite_us", AvgResponseTimeW_BGC.ToString());
            writer.WriteAttributeString("MinResponseTimeWrite_us", MinResponseTimeW_BGC.ToString());
            writer.WriteAttributeString("MaxResponseTimeWrite_us", MaxResponseTimeW_BGC.ToString());

            writer.WriteAttributeString("AverageCMDLifeTime_ms", AverageCMDLifeTime_BGC.ToString());
            writer.WriteAttributeString("AverageCMDExecutionTime_ms", AverageCMDExecutionTime_BGC.ToString());
            writer.WriteAttributeString("AverageCMDTransferTime_ms", AverageCMDTransferTime_BGC.ToString());
            writer.WriteAttributeString("AverageCMDWaitingTime_ms", AverageCMDWaitingTime_BGC.ToString());
            writer.WriteAttributeString("AverageReadCMDLifeTime_ms", AverageReadCMDLifeTime_BGC.ToString());
            writer.WriteAttributeString("AverageReadCMDExecutionTime_ms", AverageReadCMDExecutionTime_BGC.ToString());
            writer.WriteAttributeString("AverageReadCMDTransferTime_ms", AverageReadCMDTransferTime_BGC.ToString());
            writer.WriteAttributeString("AverageReadCMDWaitingTime_ms", AverageReadCMDWaitingTime_BGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDLifeTime_ms", AverageProgramCMDLifeTime_BGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDExecutionTime_ms", AverageProgramCMDExecutionTime_BGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDTransferTime_ms", AverageProgramCMDTransferTime_BGC.ToString());
            writer.WriteAttributeString("AverageProgramCMDWaitingTime_ms", AverageProgramCMDWaitingTime_BGC.ToString());

            writer.WriteAttributeString("IOPS", IOPS_BGC.ToString());
            writer.WriteAttributeString("IOPSRead", IOPSReads_BGC.ToString());
            writer.WriteAttributeString("IOPSWrite", IOPSWrites_BGC.ToString());
            writer.WriteAttributeString("AggregateBandWidth_MB", AggregateBandWidth_BGC.ToString());
            writer.WriteAttributeString("AggregateBandWidthRead_MB", AggregateBandWidthReads_BGC.ToString());
            writer.WriteAttributeString("AggregateBandWidthWrites_MB", AggregateBandWidthWrites_BGC.ToString());
            writer.WriteEndElement();


            if (RTLoggingEnabled)
            {
                RTLogFile.Close();
                RTLogFileR.Close();
                RTLogFileW.Close();
            }
        }