/// <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;
 }
예제 #2
0
        /// <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)
 {
 }