public bool IsEquivalent(ILogAnalyserConfiguration obj)
        {
            if (ReferenceEquals(obj, null))
            {
                return(false);
            }

            if (ReferenceEquals(this, obj))
            {
                return(true);
            }

            var other = obj as LogEntryCountAnalyserConfiguration;

            if (ReferenceEquals(other, null))
            {
                return(false);
            }

            if (!_quickFilters.IsEquivalent(other.QuickFilters))
            {
                return(false);
            }

            return(true);
        }
Esempio n. 2
0
 public ILogAnalyser Create(ITaskScheduler scheduler, ILogFile source, ILogAnalyserConfiguration configuration)
 {
     return(new LogEntryCountAnalyser(scheduler,
                                      source,
                                      TimeSpan.FromMilliseconds(100),
                                      (LogEntryCountAnalyserConfiguration)configuration));
 }
 public ILogAnalyser Create(ITaskScheduler scheduler, ILogFile source, ILogAnalyserConfiguration configuration)
 {
     return(new EventsLogAnalyser(scheduler,
                                  source,
                                  TimeSpan.FromMilliseconds(500),
                                  (EventsLogAnalyserConfiguration)configuration));
 }
Esempio n. 4
0
        public LogAnalyserProxy(ITaskScheduler scheduler,
                                ILogFile logFile,
                                ILogAnalyserPlugin plugin,
                                ILogAnalyserConfiguration configuration,
                                IDataSourceAnalysisListener listener)
        {
            if (scheduler == null)
            {
                throw new ArgumentNullException(nameof(scheduler));
            }
            if (logFile == null)
            {
                throw new ArgumentNullException(nameof(logFile));
            }
            if (plugin == null)
            {
                throw new ArgumentNullException(nameof(plugin));
            }
            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }
            if (listener == null)
            {
                throw new ArgumentNullException(nameof(listener));
            }

            _syncRoot      = new object();
            _scheduler     = scheduler;
            _logFile       = logFile;
            _plugin        = plugin;
            _configuration = configuration;
            _listener      = listener;
        }
Esempio n. 5
0
        /// <summary>
        /// </summary>
        /// <param name="factoryId"></param>
        /// <param name="configuration"></param>
        /// <returns></returns>
        public IDataSourceAnalyser Add(LogAnalyserFactoryId factoryId, ILogAnalyserConfiguration configuration)
        {
            var template = new AnalyserTemplate
            {
                Id            = AnalyserId.CreateNew(),
                FactoryId     = factoryId,
                Configuration = configuration
            };

            var analyser = new DataSourceAnalyser(template, _logFile, _logAnalyserEngine);

            try
            {
                analyser.Configuration = configuration;
                lock (_syncRoot)
                {
                    _analysers.Add(analyser, template);
                    _template.Add(template);
                }

                return(analyser);
            }
            catch (Exception)
            {
                analyser.Dispose();
                throw;
            }
        }
Esempio n. 6
0
        public DataSourceAnalyserProxy(IDataSourceAnalyserPlugin plugin,
                                       AnalyserId id,
                                       ITaskScheduler scheduler,
                                       ILogFile logFile,
                                       ILogAnalyserConfiguration configuration)
        {
            _plugin        = plugin;
            _id            = id;
            _logFile       = logFile;
            _configuration = configuration;

            _analyser = TryCreateAnalyser(scheduler);
        }
Esempio n. 7
0
        /// <summary>
        /// </summary>
        /// <param name="pluginId"></param>
        /// <param name="configuration"></param>
        /// <returns></returns>
        public IDataSourceAnalyser Add(AnalyserPluginId pluginId, ILogAnalyserConfiguration configuration)
        {
            var template = new AnalyserTemplate
            {
                Id = AnalyserId.CreateNew(),
                AnalyserPluginId = pluginId,
                Configuration    = configuration
            };

            var analyser = Add(template);

            _template.Add(template);

            return(analyser);
        }
Esempio n. 8
0
        /// <summary>
        /// </summary>
        protected AbstractWidgetViewModel(IWidgetTemplate template,
                                          IDataSourceAnalyser dataSourceAnalyser)
        {
            if (dataSourceAnalyser == null)
            {
                throw new ArgumentNullException(nameof(dataSourceAnalyser));
            }

            _dataSourceAnalyser    = dataSourceAnalyser;
            _analyserConfiguration = dataSourceAnalyser.Configuration?.Clone() as ILogAnalyserConfiguration;
            _isAnalysisFinished    = false;
            _template     = template;
            CanBeEdited   = AnalyserConfiguration != null && !dataSourceAnalyser.IsFrozen;
            DeleteCommand = new DelegateCommand(Delete);
        }
Esempio n. 9
0
        private IDataSourceAnalyser CreateAnalyser(LogAnalyserFactoryId factoryId, ILogAnalyserConfiguration configuration)
        {
            try
            {
                if (factoryId != LogAnalyserFactoryId.Empty)
                {
                    return(_analyser.Add(factoryId, configuration));
                }

                Log.DebugFormat("Widget '{0}' doesn't specify a log analyser, none will created", factoryId);
                return(new NoAnalyser());
            }
            catch (Exception e)
            {
                Log.ErrorFormat("Caught unexpected exception while creating log analyser for widget '{0}': {1}", factoryId, e);
                return(new NoAnalyser(factoryId));
            }
        }
Esempio n. 10
0
        private IDataSourceAnalysisHandle CreatAnalysisFor(AnalyserPluginId id,
                                                           ILogFile logFile,
                                                           ILogAnalyserConfiguration configuration,
                                                           IDataSourceAnalysisListener listener)
        {
            IDataSourceAnalysisHandle analysis;
            ILogAnalyserPlugin        plugin;

            if (_factoriesById.TryGetValue(id, out plugin))
            {
                analysis = new LogAnalyserProxy(_scheduler, logFile, plugin, configuration, listener);
            }
            else
            {
                Log.ErrorFormat("Unable to find plugin '{0}', analysis will be skipped", id);
                analysis = new DummyAnalysis();
            }

            return(analysis);
        }
Esempio n. 11
0
        public DataSourceAnalyserSnapshot(AnalyserId id,
                                          LogAnalyserFactoryId factoryId,
                                          ILogAnalyserConfiguration configuration,
                                          ILogAnalysisResult result,
                                          Percentage progress)
        {
            if (id == AnalyserId.Empty)
            {
                throw new ArgumentException(nameof(id));
            }
            if (factoryId == LogAnalyserFactoryId.Empty)
            {
                throw new ArgumentException(nameof(factoryId));
            }

            Id             = id;
            FactoryId      = factoryId;
            _configuration = configuration;
            _result        = result;
            _progress      = progress;
        }
Esempio n. 12
0
        public DataSourceAnalyser(AnalyserTemplate template,
                                  ILogFile logFile,
                                  ILogAnalyserEngine logAnalyserEngine)
        {
            if (template == null)
            {
                throw new ArgumentNullException(nameof(template));
            }
            if (logFile == null)
            {
                throw new ArgumentNullException(nameof(logFile));
            }
            if (logAnalyserEngine == null)
            {
                throw new ArgumentNullException(nameof(logAnalyserEngine));
            }

            _template          = template;
            _logFile           = logFile;
            _logAnalyserEngine = logAnalyserEngine;
            _configuration     = template.Configuration;
            RestartAnalysis();
        }
Esempio n. 13
0
 public bool IsEquivalent(ILogAnalyserConfiguration other)
 {
     return(other is TestLogAnalyserConfiguration);
 }
Esempio n. 14
0
 public ILogAnalyser Create(ITaskScheduler scheduler, ILogFile source, ILogAnalyserConfiguration configuration)
 {
     throw new System.NotImplementedException();
 }
 public bool IsEquivalent(ILogAnalyserConfiguration other)
 {
     throw new System.NotImplementedException();
 }
 public bool IsEquivalent(ILogAnalyserConfiguration other)
 {
     return(false);
 }
Esempio n. 17
0
 public IDataSourceAnalyser Add(LogAnalyserFactoryId factoryId, ILogAnalyserConfiguration configuration)
 {
     throw new InvalidOperationException("Adding new analysers to a snapshot is not allowed");
 }
Esempio n. 18
0
 public IDataSourceAnalyser Create(AnalyserId id, ITaskScheduler scheduler, ILogFile logFile,
                                   ILogAnalyserConfiguration configuration)
 {
     return(new DataSourcesAnalyser(id, TimeSpan.FromMilliseconds(100)));
 }