/// <summary> /// Creates a new object. /// </summary> /// <param name="connectorName"></param> /// <param name="type"></param> /// <param name="message"></param> /// <param name="exception"></param> protected ConnectorActivityEvent(string connectorName, ConnectorActivityType type, string message, TimestampedException exception) { Id = Interlocked.Increment(ref _NextId); ConnectorName = connectorName; Time = DateTime.UtcNow; Type = type; Message = message; Exception = exception; }
/// <summary> /// Records an exception. /// </summary> /// <param name="ex"></param> private TimestampedException RecordException(Exception ex) { TimestampedException result = null; if (ex != null && !(ex is ThreadAbortException)) { lock (_SyncLock) { while (_Exceptions.Count >= MaxExceptions) { _Exceptions.RemoveFirst(); } result = new TimestampedException(ex); _Exceptions.AddLast(result); ++_TotalExceptions; } } return(result); }
/// <summary> /// Creates a new object. /// </summary> /// <param name="connectorName"></param> /// <param name="message"></param> /// <param name="exception"></param> public ConnectorActivityEvent(string connectorName, string message, TimestampedException exception) : this(connectorName, ConnectorActivityType.Exception, message, exception) { }