/// <param name="applicationName">Application name</param> /// <param name="persistenceManager">Persistence manager</param> /// <param name="slackNotificationsManager">Slack notifications manager. Can be null</param> /// <param name="lastResortLog">Last resort log (e.g. Console), which will be used to log logging infrastructure's issues</param> /// <param name="maxBatchLifetime">Log entries batch's lifetime, when exceeded, batch will be saved, and new batch will be started. Default is 5 seconds</param> /// <param name="batchSizeThreshold">Log messages batch's size threshold, when exceeded, batch will be saved, and new batch will be started. Default is 100 entries</param> /// <param name="ownPersistenceManager">Is log instance owns persistence manager: should it manages Start/Stop</param> /// <param name="ownSlackNotificationsManager">Is log instance owns slack notifications manager: should it manages Start/Stop</param> public LykkeLogToAzureStorage( string applicationName, ILykkeLogToAzureStoragePersistenceManager persistenceManager, ILykkeLogToAzureSlackNotificationsManager slackNotificationsManager = null, ILog lastResortLog = null, TimeSpan?maxBatchLifetime = null, int batchSizeThreshold = 100, bool ownPersistenceManager = true, bool ownSlackNotificationsManager = true) : base(applicationName, periodMs: 20, log: lastResortLog ?? EmptyLog.Instance) { _persistenceManager = persistenceManager; _slackNotificationsManager = slackNotificationsManager; _lastResortLog = lastResortLog; _batchSizeThreshold = batchSizeThreshold; _ownPersistenceManager = ownPersistenceManager; _ownSlackNotificationsManager = ownSlackNotificationsManager; _maxBatchLifetime = maxBatchLifetime ?? TimeSpan.FromSeconds(5); _component = AppEnvironment.Name; DisableTelemetry(); StartNewBatch(); }
public LykkeLogToAzureStorageTests() { _persistenceManagerMock = Substitute.For <ILykkeLogToAzureStoragePersistenceManager>(); _slackNotificationsManagerMock = Substitute.For <ILykkeLogToAzureSlackNotificationsManager>(); }