示例#1
0
        public LogSettingsViewModel(LoggingSettingsTo logging, IEnvironmentModel currentEnvironment)
        {
            if (logging == null)
            {
                throw new ArgumentNullException("logging");
            }
            if (currentEnvironment == null)
            {
                throw new ArgumentNullException("currentEnvironment");
            }
            CurrentEnvironment      = currentEnvironment;
            GetServerLogFileCommand = new DelegateCommand(OpenServerLogFile);
            GetStudioLogFileCommand = new DelegateCommand(OpenStudioLogFile);
            LogLevel serverLogLevel;

            if (Enum.TryParse(logging.LogLevel, out serverLogLevel))
            {
                _serverLogLevel = serverLogLevel;
            }
            _serverLogMaxSize = logging.LogSize.ToString(CultureInfo.InvariantCulture);

            LogLevel studioLogLevel;

            if (Enum.TryParse(Dev2Logger.GetLogLevel(), out studioLogLevel))
            {
                _studioLogLevel = studioLogLevel;
            }
            _studioLogMaxSize = Dev2Logger.GetLogMaxSize().ToString(CultureInfo.InvariantCulture);
        }
示例#2
0
        public override StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            try
            {
                var fileLogLevel  = Dev2Logger.GetFileLogLevel();
                var eventLogLevel = Dev2Logger.GetEventLogLevel();
                var logMaxSize    = Dev2Logger.GetLogMaxSize();

                var loggingSettings = new LoggingSettingsTo
                {
                    FileLoggerLogLevel     = fileLogLevel,
                    EventLogLoggerLogLevel = eventLogLevel,
                    FileLoggerLogSize      = logMaxSize
                };

                var serializer         = new Dev2JsonSerializer();
                var serializeToBuilder = serializer.SerializeToBuilder(loggingSettings);
                return(serializeToBuilder);
            }
            catch (Exception e)
            {
                Dev2Logger.Error("LoggingSettingsRead", e, GlobalConstants.WarewolfError);
            }
            return(null);
        }
示例#3
0
        public LogSettingsViewModel(LoggingSettingsTo logging, IServer currentEnvironment)
        {
            if (logging == null)
            {
                throw new ArgumentNullException(nameof(logging));
            }

            CurrentEnvironment      = currentEnvironment ?? throw new ArgumentNullException(nameof(currentEnvironment));
            GetServerLogFileCommand = new DelegateCommand(OpenServerLogFile);
            GetStudioLogFileCommand = new DelegateCommand(OpenStudioLogFile);
            if (Enum.TryParse(logging.FileLoggerLogLevel, out LogLevel serverFileLogLevel))
            {
                _serverFileLogLevel = serverFileLogLevel;
            }
            if (Enum.TryParse(logging.EventLogLoggerLogLevel, out LogLevel serverEventLogLevel))
            {
                _serverEventLogLevel = serverEventLogLevel;
            }
            _serverLogMaxSize = logging.FileLoggerLogSize.ToString(CultureInfo.InvariantCulture);
            if (Enum.TryParse(Dev2Logger.GetFileLogLevel(), out LogLevel studioFileLogLevel))
            {
                _studioFileLogLevel = studioFileLogLevel;
            }
            if (Enum.TryParse(Dev2Logger.GetEventLogLevel(), out LogLevel studioEventLogLevel))
            {
                _studioEventLogLevel = studioEventLogLevel;
            }
            _studioLogMaxSize = Dev2Logger.GetLogMaxSize().ToString(CultureInfo.InvariantCulture);
        }
示例#4
0
        public virtual void Save(LoggingSettingsTo logSettings)
        {
            logSettings.LogLevel = ServerLogLevel.ToString();
            logSettings.LogSize  = int.Parse(ServerLogMaxSize);
            var settingsConfigFile = HelperUtils.GetStudioLogSettingsConfigFile();

            Dev2Logger.WriteLogSettings(StudioLogMaxSize, StudioLogLevel.ToString(), settingsConfigFile);
        }
示例#5
0
        public virtual void Save(LoggingSettingsTo logSettings)
        {
            logSettings.EventLogLoggerLogLevel = ServerEventLogLevel.ToString();
            logSettings.FileLoggerLogSize      = int.Parse(ServerLogMaxSize);
            var settingsConfigFile = HelperUtils.GetStudioLogSettingsConfigFile();

            Dev2Logger.WriteLogSettings(StudioLogMaxSize, StudioFileLogLevel.ToString(), StudioEventLogLevel.ToString(), settingsConfigFile, "Warewolf Studio");
            SetItem(this);
        }
示例#6
0
        static LogSettingsViewModel CreateLogSettingViewModel()
        {
            XmlConfigurator.ConfigureAndWatch(new FileInfo("Settings.config"));
            var loggingSettingsTo = new LoggingSettingsTo {
                FileLoggerLogSize = 50, FileLoggerLogLevel = "TRACE"
            };

            var _resourceRepo = new Mock <IResourceRepository>();
            var env           = new Mock <IServer>();
            var expectedServerSettingsData = new ServerSettingsData
            {
                ExecutionLogLevel = LogLevel.DEBUG.ToString(),
                Sink = "AuditingSettingsData"
            };

            _resourceRepo.Setup(res => res.GetServerSettings(env.Object)).Returns(expectedServerSettingsData);
            var dependency          = new Depends(Depends.ContainerType.AnonymousElasticsearch);
            var hostName            = "http://" + dependency.Container.IP;
            var elasticsearchSource = new ElasticsearchSource
            {
                AuthenticationType = AuthenticationType.Anonymous,
                Port        = dependency.Container.Port,
                HostName    = hostName,
                SearchIndex = "warewolflogstests"
            };
            var jsonSource           = JsonConvert.SerializeObject(elasticsearchSource);
            var auditingSettingsData = new AuditingSettingsData
            {
                Endpoint          = "ws://127.0.0.1:5000/ws",
                EncryptDataSource = true,
                LoggingDataSource = new NamedGuidWithEncryptedPayload
                {
                    Name    = "Auditing Data Source",
                    Value   = Guid.Empty,
                    Payload = jsonSource
                },
            };

            _resourceRepo.Setup(res => res.GetAuditingSettings <AuditingSettingsData>(env.Object)).Returns(auditingSettingsData);
            var selectedAuditingSourceId = Guid.NewGuid();
            var mockAuditingSource       = new Mock <IResource>();

            mockAuditingSource.Setup(source => source.ResourceID).Returns(selectedAuditingSourceId);
            var auditingSources = new Mock <IResource>();
            var expectedList    = new List <IResource>
            {
                mockAuditingSource.Object, auditingSources.Object
            };

            _resourceRepo.Setup(resourceRepository => resourceRepository.FindResourcesByType <IAuditingSource>(env.Object)).Returns(expectedList);

            env.Setup(a => a.ResourceRepository).Returns(_resourceRepo.Object);
            var logSettingsViewModel = new LogSettingsViewModel(loggingSettingsTo, env.Object);

            return(logSettingsViewModel);
        }
        static LogSettingsViewModel CreateLogSettingViewModel()
        {
            XmlConfigurator.ConfigureAndWatch(new FileInfo("Settings.config"));
            var loggingSettingsTo = new LoggingSettingsTo {
                LogSize = 50, LogLevel = "TRACE"
            };
            var logSettingsViewModel = new LogSettingsViewModel(loggingSettingsTo, new Mock <IEnvironmentModel>().Object);

            return(logSettingsViewModel);
        }
示例#8
0
 public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
 {
     try
     {
         var logLevel        = Dev2Logger.GetLogLevel();
         var logMaxSize      = Dev2Logger.GetLogMaxSize();
         var loggingSettings = new LoggingSettingsTo {
             LogLevel = logLevel, LogSize = logMaxSize
         };
         var serializer         = new Dev2JsonSerializer();
         var serializeToBuilder = serializer.SerializeToBuilder(loggingSettings);
         return(serializeToBuilder);
     }
     catch (Exception e)
     {
         Dev2Logger.Log.Error("LoggingSettingsRead", e);
     }
     return(null);
 }
示例#9
0
        public void LogSettingsViewModel_Save_AuditingSettingsData()
        {
            var _resourceRepo = new Mock <IResourceRepository>();
            //------------Setup for test--------------------------
            var logSettingsViewModel = CreateLogSettingViewModel("AuditingSettingsData", _resourceRepo);
            var loggingSettingsTo    = new LoggingSettingsTo {
                FileLoggerLogSize = 50, FileLoggerLogLevel = "TRACE", EventLogLoggerLogLevel = "DEBUG"
            };
            //------------Execute Test---------------------------
            var mockResource = new Mock <IResource>();

            mockResource.Setup(o => o.ResourceName).Returns("Default");
            mockResource.Setup(o => o.ResourceID).Returns(Guid.NewGuid());
            logSettingsViewModel.SelectedAuditingSource = mockResource.Object;
            CustomContainer.Register(new Mock <IPopupController>().Object);
            //------------Assert Results-------------------------
            logSettingsViewModel.Save(loggingSettingsTo);
            _resourceRepo.Verify(o => o.SaveAuditingSettings(It.IsAny <IServer>(), It.IsAny <AuditingSettingsData>()), Times.Once);
        }
        static LogSettingsViewModel CreateLogSettingViewModel()
        {
            XmlConfigurator.ConfigureAndWatch(new FileInfo("Settings.config"));
            var loggingSettingsTo = new LoggingSettingsTo {
                FileLoggerLogSize = 50, FileLoggerLogLevel = "TRACE"
            };

            var _resourceRepo      = new Mock <IResourceRepository>();
            var env                = new Mock <IServer>();
            var serverSettingsData = new ServerSettingsData {
                AuditFilePath = "somePath"
            };

            _resourceRepo.Setup(res => res.GetServerSettings(env.Object)).Returns(serverSettingsData);
            env.Setup(a => a.ResourceRepository).Returns(_resourceRepo.Object);

            var logSettingsViewModel = new LogSettingsViewModel(loggingSettingsTo, env.Object);

            return(logSettingsViewModel);
        }
示例#11
0
 public static void Write(LoggingSettingsTo loggingSettingsTo)
 {
     VerifyArgument.IsNotNull("loggingSettingsTo", loggingSettingsTo);
     Dev2Logger.WriteLogSettings(loggingSettingsTo.FileLoggerLogSize.ToString(CultureInfo.InvariantCulture), loggingSettingsTo.FileLoggerLogLevel, loggingSettingsTo.EventLogLoggerLogLevel, EnvironmentVariables.ServerLogSettingsFile, "Warewolf Server");
 }
示例#12
0
        static LogSettingsViewModel CreateLogSettingViewModel(string sink, Mock <IResourceRepository> _resourceRepo = null)
        {
            XmlConfigurator.ConfigureAndWatch(new FileInfo("Settings.config"));
            var loggingSettingsTo = new LoggingSettingsTo {
                FileLoggerLogSize = 50, FileLoggerLogLevel = "TRACE", EventLogLoggerLogLevel = "DEBUG"
            };

            var env = new Mock <IServer>();

            if (_resourceRepo is null)
            {
                _resourceRepo = new Mock <IResourceRepository>();
            }

            var expectedServerSettingsData = new ServerSettingsData
            {
                Sink = sink,
                ExecutionLogLevel = LogLevel.DEBUG.ToString()
            };

            _resourceRepo.Setup(res => res.GetServerSettings(env.Object)).Returns(expectedServerSettingsData);
            var selectedAuditingSourceId = Guid.NewGuid();

            if (sink == "LegacySettingsData")
            {
                var legacySettingsData = new LegacySettingsData()
                {
                    AuditFilePath = "somePath"
                };
                _resourceRepo.Setup(res => res.GetAuditingSettings <LegacySettingsData>(env.Object)).Returns(legacySettingsData);
                _resourceRepo.Setup(res => res.SaveAuditingSettings(env.Object, legacySettingsData)).Verifiable();
            }
            else
            {
                var dependency          = new Depends(Depends.ContainerType.AnonymousElasticsearch);
                var hostName            = "http://" + dependency.Container.IP;
                var elasticsearchSource = new ElasticsearchSource
                {
                    AuthenticationType = AuthenticationType.Anonymous,
                    Port        = dependency.Container.Port,
                    HostName    = hostName,
                    SearchIndex = "warewolflogstests"
                };
                var serializer           = new Dev2JsonSerializer();
                var payload              = serializer.Serialize(elasticsearchSource);
                var encryptedPayload     = DpapiWrapper.Encrypt(payload);
                var auditingSettingsData = new AuditingSettingsData
                {
                    Endpoint          = "ws://127.0.0.1:5000/ws",
                    EncryptDataSource = true,
                    LoggingDataSource = new NamedGuidWithEncryptedPayload
                    {
                        Name    = "Auditing Data Source",
                        Value   = selectedAuditingSourceId,
                        Payload = encryptedPayload
                    },
                };
                _resourceRepo.Setup(res => res.GetAuditingSettings <AuditingSettingsData>(env.Object)).Returns(auditingSettingsData);
                _resourceRepo.Setup(res => res.SaveAuditingSettings(env.Object, auditingSettingsData)).Verifiable();
            }

            IResource mockAuditingSource = new ElasticsearchSource
            {
                ResourceID   = selectedAuditingSourceId,
                ResourceName = "Auditing Data Source"
            };
            var expectedList = new List <IResource>();

            expectedList.Add(mockAuditingSource);

            _resourceRepo.Setup(resourceRepository => resourceRepository.FindResourcesByType <IAuditingSource>(env.Object)).Returns(expectedList);

            env.Setup(a => a.ResourceRepository).Returns(_resourceRepo.Object);
            var logSettingsViewModel = new LogSettingsViewModel(loggingSettingsTo, env.Object);

            return(logSettingsViewModel);
        }
示例#13
0
 public static void Write(LoggingSettingsTo loggingSettingsTo)
 {
     VerifyArgument.IsNotNull("loggingSettingsTo", loggingSettingsTo);
     Dev2Logger.WriteLogSettings(loggingSettingsTo.LogSize.ToString(CultureInfo.InvariantCulture), loggingSettingsTo.LogLevel, "Settings.config");
 }