/// <summary>
 /// We keep track of stopwatches which have an Elapsed value and we sum them by area.
 /// </summary>
 /// <param name="pm"></param>
 public void AppendMarker(IPerformanceMarker pm)
 {
     if (pm.Type == PerformanceMarkerType.Stopwatch && pm.Elapsed.HasValue)
     {
         PerformanceMarkerArea currentArea = pm.Area;
         double elapsed = pm.Elapsed.Value.TotalMilliseconds;
         AggregatesInMilliseconds[(int)currentArea] += elapsed;
         TryUpdateMetaData(pm.Timestamp, pm.RequestId, pm.SessionId);
     }
 }
Exemple #2
0
        public void Log(IPerformanceMarker marker)
        {
            _logger.Log(marker);

            IPerformanceAggregate ag = GetPerformanceAggregate();

            if (ag != null)
            {
                ag.AppendMarker(marker);
            }
        }
        public void StopMarker(IPerformanceMarker marker)
        {
            if (marker == null)
            {
                // Err on the side of not having performance code throw any errors.
                return;
            }

            marker.Stop();
            _logger.Log(marker);
        }
        public void PerformanceMarker(IPerformanceMarker marker)
        {
            if (marker == null)
            {
                return;
            }

            PerformanceMarker(
                marker.Id,
                marker.Name ?? string.Empty,
                marker.Type,
                marker.Source,
                marker.Timestamp,
                marker.RequestId ?? string.Empty,
                marker.SessionId ?? string.Empty,
                PerfMarkerAreaHelper.AreaEnumToString(marker.Area),
                marker.Tag ?? string.Empty,
                marker.Elapsed.GetValueOrDefault().TotalMilliseconds,
                this.PortalUrl,
                this.PortalVersion,
                this.ProductionOrTrial);
        }
Exemple #5
0
 public void Log(IPerformanceMarker marker)
 {
     PerformanceEventSource.Log.PerformanceMarker(marker);
 }