internal void ProcessingData() { try { if (_lock) { return; } _lock = true; var method = UtilHelper.GetMethodName(MethodBase.GetCurrentMethod()); _logger?.Info($"{method} => start"); var watch = System.Diagnostics.Stopwatch.StartNew(); var data = DataReaderHelper.GetData( _dataReaders, _filtersValidator, _filtersValidatorRepository, _aggregatorsValidator, _aggregatorsValidatorRepository); if (!data.Any()) { _logger?.Debug("No data found..."); return; } var sendedMessages = new Dictionary <SendedMessages, int>(); foreach (var message in data) { if (!_clientsManager.Send(message)) { _logger?.Debug("No clients defined to send..."); return; } var sendedMessage = new SendedMessages { Name = message.LogicalStorage, Id = message.ReaderId }; sendedMessages.AddOrIncrement(sendedMessage, 1); } foreach (var message in sendedMessages) { _logger?.Debug($"Sended: {message.Value} messages from {message.Key}"); } watch.Stop(); var elapsedMs = watch.ElapsedMilliseconds; _logger?.Info($"{method} => end, Time taken: {elapsedMs}ms"); } catch (Exception ex) { _logger?.Error(ex.Message); } finally { _lock = false; } }
private void Close() { var method = UtilHelper.GetMethodName(MethodBase.GetCurrentMethod()); _logger?.Info($"{method} => start"); var watch = System.Diagnostics.Stopwatch.StartNew(); if (!CheckTimeForCloseApp(_lifetime)) { _logger?.Debug("Not time to die..."); return; } try { var data = _dataReader.GetData(); var sendedMessages = new Dictionary <string, int>(); foreach (var message in data) { _clientsManager.Send(message); sendedMessages.AddOrIncrement(message.LogicalStorage, 1); } foreach (var message in sendedMessages) { _logger?.Debug($"Sended: {message.Value} messages about application exit from {message.Key}"); } watch.Stop(); var elapsedMs = watch.ElapsedMilliseconds; _logger?.Info($"{method} => end, Time taken: {elapsedMs}ms"); } catch (Exception ex) { _logger?.Error(ex.Message); } finally { _timer.Stop(); Environment.Exit(0); } }
public void GetMethodName_MethodNameIsNotNull_ReturnMethodName() { UtilHelper.GetMethodName(MethodBase.GetCurrentMethod()).Should() .Match("Queris.ExceptionNotifier.Common.UnitTests.Helpers.UtilHelperTests::GetMethodName_MethodNameIsNotNull_ReturnMethodName"); }
public void GetMethodName_MethodNameIsNull_ReturnUnknownMethod() { UtilHelper.GetMethodName(null).Should().Match("!MethodUnknown!"); }