コード例 #1
0
        private void SetWatchers(string settings)
        {
            LogFiles lf = LogFiles.Load(settings);

            if (lf == null)
            {
                return;
            }
            _watchers.ForEach(x => { x.LogChanged -= new TextLogHandler(fw_LogChanged); x.Dispose(); });
            _watchers.Clear();
            foreach (LogFile f in lf.Files)
            {
                FileWatcher fw = new FileWatcher();
                fw.Config(f.Folder, f.FileTemplate, f.MessageTemplate, f.NagiosServiceName, f.MessageLevel);
                fw.LogChanged += new TextLogHandler(fw_LogChanged);
                fw.Start();
                _watchers.Add(fw);
            }
        }
コード例 #2
0
ファイル: LogFiles.cs プロジェクト: xonv/nagios-net-client
        protected static LogFiles Deserialize(string data)
        {
            LogFiles     o  = null;
            MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(data));

            try
            {
                DataContractJsonSerializer ser = GetSerializer();
                o = ser.ReadObject(ms) as LogFiles;
            }
            catch (Exception e)
            {
                throw new LogFilesLoadException(string.Format("Error thrown then read LogFiles settings: {0}", e.Message));
            }
            finally
            {
                ms.Close();
            }
            return(o);
        }