Exemple #1
0
        /// <summary>
        /// Проверка на равенство
        /// </summary>
        /// <param name="other"></param>
        /// <returns></returns>
        public bool Equals(TraceId other)
        {
            if (other == null)
            {
                return(false);
            }

            return(other.Id == Id &&
                   other.Name == Name &&
                   other.Timestamp == Timestamp);
        }
Exemple #2
0
        /// <summary>
        /// Создание события
        /// </summary>
        /// <param name="id">идентификатор трассировки</param>
        /// <param name="name">имя события</param>
        /// <returns></returns>
        public static TraceEvent Create(
            TraceId id
            , string name)
        {
            var @event = new TraceEvent()
            {
                BeginTime = (DateTime.UtcNow - id.Timestamp),
                Name      = name,
            };

            return(@event);
        }
Exemple #3
0
 /// <summary>
 /// Получить дату и время начала события
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public DateTime GetBeginDateTime(TraceId id)
 {
     return((id.Timestamp + BeginTime).ToLocalTime());
 }
Exemple #4
0
 /// <summary>
 /// Установить время завершения события
 /// </summary>
 /// <param name="id">идентификатор трассировки</param>
 internal void SetEnd(TraceId id)
 {
     _end = (int)Math.Ceiling((DateTime.UtcNow - id.Timestamp).TotalMilliseconds);
 }