Esempio n. 1
0
 public Replicator()
 {
     _factory     = new ChannelFactory <ISyslog>(new NetTcpBinding(), string.Format("net.tcp://{0}:{1}/SyslogService", AppConfig.BACKUP_ADDRESS, AppConfig.BACKUP_PORT));
     _backupProxy = _factory.CreateChannel();
     _replicator  = new Thread(ReplicatePeriodically);
     _replicator.Start();
 }
Esempio n. 2
0
 /// <summary>
 /// Trying to replicate logs from Queue. Create new channel, if channel is not created
 /// </summary>
 private void Replicate()
 {
     try
     {
         lock (locker)
         {
             _backupProxy.SendAll(_logQueue.ToList());
             Console.WriteLine("Replicated {0} logs on backup server.", _logQueue.Count);
             _logQueue.Clear();
         }
     }
     catch (Exception e)
     {
         Console.WriteLine("Backup server not available : {0}.", e.GetType());
         _backupProxy = _factory.CreateChannel();
     }
 }