Пример #1
0
        public static IwrService GetService()
        {
            try
            {
                wrService ws = new wrService();
                foreach (var item in ws.Endpoint.Contract.Operations)
                {
                    DataContractSerializerOperationBehavior dc = item.Behaviors.Find <DataContractSerializerOperationBehavior>() as DataContractSerializerOperationBehavior;
                    if (dc != null)
                    {
                        dc.MaxItemsInObjectGraph = int.MaxValue;
                    }
                }

                return(ws.GetChannel());
                //return new wrService().GetChannel();
            }
            catch (System.Exception ex)
            {
                if (log == null)
                {
                    log = LogService.Getlog(typeof(wrService));
                }

                log.Error(ex);

                throw;
            }
        }
Пример #2
0
        public void ChildSeverityOk()
        {
            var f    = LoggerEx.CreateDefaultFactory();
            var root = f.Root;
            var test = f.Get("test");

            Assert.Equal(test, f.Get("test"));
            var test2 = f.Get(2);

            Assert.Equal(test2, f.Get(2));
            Assert.Equal("test", test.ToString());
            Assert.Equal("2", test2.ToString());
            root.Severity = Severity.Debug;
            Assert.Equal(Severity.Debug, test.Severity);
            Assert.Equal(Severity.Debug, test2.Severity);
            root.Severity = Severity.Info;
            Assert.Equal(Severity.Info, test.Severity);
            Assert.Equal(Severity.Info, test2.Severity);
            test.Severity = Severity.Debug;
            Assert.Equal(Severity.Debug, test.Severity);
            Assert.Equal(Severity.Info, test2.Severity);
            root.Severity = Severity.Fatal;
            Assert.Equal(Severity.Debug, test.Severity);
            Assert.Equal(Severity.Fatal, test2.Severity);
            //f.Dispose();
            //Assert.NotEqual(test, f.Get("test"));
        }
Пример #3
0
        static void Main()
        {
            try
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
                AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(AppDomain_UnhandledException);

                LogService.InitializeService(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Start.exe.config"));
                log = LogService.Getlog(typeof(Program));
                log.Fatal("======>=Start up=>=====");

                #region 检查是否有服务器地址
                string url = Config.GetXmlValue(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Start.exe.config"), "RemoteURL");
                if (string.IsNullOrEmpty(url))
                {
                    frm_Set frmSet = new frm_Set();
                    frmSet.ShowDialog();
                }

                url = Config.GetXmlValue(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Start.exe.config"), "RemoteURL");
                if (string.IsNullOrEmpty(url))
                {
                    MessageBox.Show("没有指定服务器地址,不能启动程序!", "信息提示", MessageBoxButtons.OK);
                    return;
                }
                #endregion

                #region 检查是否有更新文件
                using (frm_update set = new frm_update())
                {
                    if (set.ShowDialog() != DialogResult.OK)
                    {
                        return;
                    }
                }
                #endregion

                //System.Diagnostics.Process.Start(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "WR.Pos.exe"));
                Form frm = System.Reflection.Assembly.LoadFrom(Application.StartupPath + "\\WR.Client.UI.dll").CreateInstance("WR.Client.UI.frm_main") as Form;
                if (frm != null)
                {
                    Application.Run(frm);
                    log.Fatal("=========<=Shut down=<============");
                }
                else
                {
                    log.Fatal("not find Assembly");
                }

                Application.DoEvents();
                Application.Exit();
            }
            catch (Exception ex)
            {
                log.Error(ex);
                MessageBox.Show("操作中出现错误!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #4
0
        public static void Main(string[] args)
        {
            LoggerEx.InitializeConsoleLogger();

            new Program().Run(args);
            Console.ReadLine();
        }
Пример #5
0
        public void RootCanLogMessage()
        {
            var o    = new SomeOutput();
            var f1   = LoggerEx.CreateDefaultFactory();
            var root = f1.Root;

            root.Severity = Severity.Debug;
            root.Log(Severity.Debug, "test");

            root.Outputs.Add(o);

            root.Log(Severity.Debug, "test");
            Assert.Equal("test", o.LastMessage.Get(MessageTokens.Message));
            Assert.Equal(Severity.Debug, o.LastMessage.Severity);

            root.Severity = Severity.Error;

            root.Log(Severity.Info, "test1");
            // this should not be logged
            Assert.Equal("test", o.LastMessage.Get(MessageTokens.Message));
            Assert.Equal(Severity.Debug, o.LastMessage.Severity);

            root.Log(Severity.Error, "error");
            // but this should
            Assert.Equal("error", o.LastMessage.Get(MessageTokens.Message));
            Assert.Equal(Severity.Error, o.LastMessage.Severity);

            root.Log(Severity.Fatal, "fatal");
            // and this should
            Assert.Equal("fatal", o.LastMessage.Get(MessageTokens.Message));
            Assert.Equal(Severity.Fatal, o.LastMessage.Severity);
        }
Пример #6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void fileWatcher_Changed(object sender, FileSystemEventArgs e)
        {
            if (this.licenseFileOperateLock.TryEnterWriteLock(CgwConst.ENTER_LOCK_WAIT_TIME))
            {
                LoggerEx logEx = new LoggerEx(log);
                try
                {
                    fileWatcher.EnableRaisingEvents = false;
                    try
                    {
                        if (e.ChangeType == WatcherChangeTypes.Changed)
                        {
                            uint resultErr = 0;

                            byte[] bteLic;
                            if (File.Exists(strPathLic))
                            {
                                Thread.Sleep(1000);
                                FileStream files = File.Open(strPathLic, FileMode.Open, FileAccess.Read, FileShare.Read);
                                if (files.Length != 0)
                                {
                                    byte[] btemp = new byte[files.Length];
                                    files.Read(btemp, 0, btemp.Length);
                                    bteLic = btemp;
                                }
                                else
                                {
                                    bteLic = new byte[0];
                                }
                                files.Close();
                            }
                            else
                            {
                                byte[] b = new byte[0];
                                bteLic = b;
                            }
                            CLicenseManagedAdapter licMan = new CLicenseManagedAdapter();
                            SmcErr smcErr = Convert2ErrNo(licMan.ActivateLicenseKey(bteLic, ref resultErr));
                        }
                        GetControlLicItem(null);
                    }
                    catch (System.Exception ex)
                    {
                        logEx.Error("fileWatcher_Changed Exception:{0}", ex.ToString());
                    }
                    finally
                    {
                        fileWatcher.EnableRaisingEvents = true;
                    }
                }
                finally
                {
                    this.licenseFileOperateLock.ExitWriteLock();
                }
            }
        }
Пример #7
0
        public void TokenStringWorksForCustomMessages()
        {
            var custom =
                LoggerEx.CustomMessage(Severity.Error, (m, t, f) => t.Token == "TOKEN" ? f == "i" ? "42" : "fmt:" + f : null);
            var first = WriterEx.TokenString("Test %TOKEN:i%");

            Assert.Equal("Test 42", first.ToString(custom));
            var second = WriterEx.TokenString("Test `%SomeToken%` is %TOKEN:m%");

            Assert.Equal("Test `` is fmt:m", second.ToString(custom));
        }
Пример #8
0
        public frm_update()
        {
            InitializeComponent();

            SetStyle(ControlStyles.UserPaint |
                     ControlStyles.SupportsTransparentBackColor |
                     ControlStyles.OptimizedDoubleBuffer |
                     ControlStyles.AllPaintingInWmPaint, true);

            log = LogService.Getlog(this.GetType());
        }
Пример #9
0
        public void CanGetRoot()
        {
            var f1     = LoggerEx.CreateDefaultFactory();
            var f1Root = f1.Root;

            Assert.NotNull(f1Root);
            Assert.Equal(f1Root, f1.Root);
            var f2     = LoggerEx.CreateDefaultFactory(rootName: "TestRoot");
            var f2Root = f2.Root;

            Assert.Equal("TestRoot", f2Root.ToString());
            Assert.Equal(f2Root, f2.Root);
            Assert.NotEqual(f1Root, f2Root);
        }
Пример #10
0
        public void LogUsesMessageFactory()
        {
            var f    = LoggerEx.CreateDefaultFactory(new FatalMessageFactory());
            var root = f.Root;

            root.Severity = Severity.Debug;
            var rootOutput = new SomeOutput();

            root.Outputs.Add(rootOutput);
            root.Log(Severity.Warn, "W");
            var lastMessage = rootOutput.LastMessage;

            Assert.Equal(Severity.Fatal, lastMessage.Severity);
            f.Get("test").Log(Severity.Info, "I");
            Assert.Equal(Severity.Fatal, rootOutput.LastMessage.Severity);
            Assert.NotEqual(lastMessage, rootOutput.LastMessage);
        }
Пример #11
0
        /// <summary>
        /// 写文件
        /// </summary>
        /// <param name="path"></param>
        /// <param name="content"></param>
        public void WriteFile(string path, string content)
        {
            LoggerEx logEx = new LoggerEx(log);

            try
            {
                FileStream   fs = new FileStream(path, FileMode.Create, FileAccess.Write);
                StreamWriter sw = new StreamWriter(fs, Encoding.Default);
                sw.Write(content);
                sw.Close();
                fs.Close();
            }
            catch (System.Exception ex)
            {
                logEx.Error("FileOperation.WriteFile failed. message:{0}", ex.ToString());
            }
        }
Пример #12
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void fileWatcher_Deleted(object sender, FileSystemEventArgs e)
        {
            if (this.licenseFileOperateLock.TryEnterWriteLock(CgwConst.ENTER_LOCK_WAIT_TIME))
            {
                LoggerEx logEx = new LoggerEx(log);
                try
                {
                    fileWatcher.EnableRaisingEvents = false;
                    if (e.ChangeType == WatcherChangeTypes.Deleted)
                    {
                        uint   resultErr = 0;
                        byte[] bteLic;
                        if (File.Exists(strPathLic))
                        {
                            bteLic = File.ReadAllBytes(strPathLic);
                        }
                        else
                        {
                            byte[] b = new byte[0];
                            bteLic = b;
                            int licCountNew = 0;
                            if (licCount != licCountNew)
                            {
                                SessionManage.Instance().RemoveAllSession();
                                logEx.Trace("License have changed! the New Count is:{0}, the Old Count:{1} ", licCountNew.ToString(), licCount.ToString());
                                licCount = licCountNew;
                            }
                        }
                        CLicenseManagedAdapter licMan = new CLicenseManagedAdapter();
                        SmcErr smcErr = Convert2ErrNo(licMan.ActivateLicenseKey(bteLic, ref resultErr));
                    }
                    fileWatcher.EnableRaisingEvents = true;
                }

                catch (Exception ex)
                {
                    logEx.Error("fileWatcher_Deleted Exception:{0}", ex.ToString());
                }
                finally
                {
                    this.licenseFileOperateLock.ExitWriteLock();
                }
            }
        }
Пример #13
0
        /// <summary>
        /// 获取控制项信息
        /// </summary>
        /// <param name="err"></param>
        /// <param name="licMan"></param>
        private SmcErr GetControlLicItem(List <ConfigItem> configList)
        {
            LoggerEx logEx  = new LoggerEx(log);
            SmcErr   smcErr = new SmcErr();
            CLicenseManagedAdapter licMan          = new CLicenseManagedAdapter();
            List <LKItemValue>     licItemTypeList = new List <LKItemValue>();

            smcErr = Convert2ErrNo(licMan.GetLicenseInfo(ref licItemTypeList));
            if (smcErr.IsSuccess())
            {
                licenseInfo.IsMonitorPlatform = false;
                licenseInfo.IsEltePlatform    = false;
                foreach (LKItemValue item in licItemTypeList)
                {
                    if (LicItemfType.LicItemMaxChannelNum == item.ItemID)
                    {
                        int licCountNew = Convert.ToInt32(item.ItemValue);
                        if (licCount != licCountNew)
                        {
                            SessionManage.Instance().RemoveAllSession();
                            logEx.Trace("License have changed! the New Count is:{0}, the Old Count:{1} ", licCountNew.ToString(), licCount.ToString());
                            licCount = licCountNew;
                        }
                    }
                    if (item.ItemID.ToString() == "LicItemMonitorEnable" && item.ItemValue.ToString() == "1")
                    {
                        licenseInfo.IsMonitorPlatform = true;
                    }
                    if (item.ItemID.ToString() == "LicItemELTEEnable" && item.ItemValue.ToString() == "1")
                    {
                        licenseInfo.IsEltePlatform = true;
                    }

                    logEx.Info("GetControlLicItem item:{0},{1}", item.ItemID, item.ItemValue);
                }
            }
            else
            {
                logEx.Warn("GetControlLicItem errNo:{0}", smcErr.ErrNo);
            }

            return(smcErr);
        }
Пример #14
0
        public void ChildLogToRootAndSelf()
        {
            var f    = LoggerEx.CreateDefaultFactory();
            var root = f.Root;

            root.Severity = Severity.Debug;
            var child      = f.Get("test");
            var rootOutput = new SomeOutput();

            root.Outputs.Add(rootOutput);
            child.Log(Severity.Debug, "d");
            Assert.Equal(Severity.Debug, rootOutput.LastMessage.Severity);
            var childOutput = new SomeOutput();

            child.Outputs.Add(childOutput);
            child.Log(Severity.Warn, "W");
            Assert.Equal(Severity.Warn, rootOutput.LastMessage.Severity);
            Assert.Equal(Severity.Warn, childOutput.LastMessage.Severity);
            f.Get("test2").Log(Severity.Info, "I");
            Assert.Equal(Severity.Info, rootOutput.LastMessage.Severity);
            Assert.Equal(Severity.Warn, childOutput.LastMessage.Severity);
        }
Пример #15
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void fileWatcher_Created(object sender, FileSystemEventArgs e)
 {
     if (this.licenseFileOperateLock.TryEnterWriteLock(CgwConst.ENTER_LOCK_WAIT_TIME))
     {
         LoggerEx logEx = new LoggerEx(log);
         try
         {
             fileWatcher.EnableRaisingEvents = false;
             if (e.ChangeType == WatcherChangeTypes.Created)
             {
                 uint   resultErr = 0;
                 byte[] bteLic;
                 if (File.Exists(strPathLic))
                 {
                     Thread.Sleep(1000);
                     bteLic = File.ReadAllBytes(strPathLic);
                 }
                 else
                 {
                     byte[] b = new byte[0];
                     bteLic = b;
                 }
                 CLicenseManagedAdapter licMan = new CLicenseManagedAdapter();
                 SmcErr smcErr = Convert2ErrNo(licMan.ActivateLicenseKey(bteLic, ref resultErr));
             }
             fileWatcher.EnableRaisingEvents = true;
         }
         catch (Exception ex)
         {
             logEx.Error("fileWatcher_Created Exception:{0}", ex.ToString());
         }
         finally
         {
             this.licenseFileOperateLock.ExitWriteLock();
         }
     }
 }
Пример #16
0
 public CHGSinf()
 {
     log = LogService.Getlog(this.GetType());
 }
Пример #17
0
        /// <summary>
        /// 读取license信息
        /// </summary>
        /// <param name="licMsg"></param>
        /// <returns></returns>
        public uint ReceiveLicMsg(ref LicMsg licMsg)
        {
            CLicenseManagedAdapter licMan = new CLicenseManagedAdapter();
            SmcErr   smcErr = new SmcErr();
            LoggerEx logEx  = new LoggerEx(log);

            if (null == licMsg)
            {
                smcErr.ErrNo = SmcErr.SMC_INVALID_PARAM;
                logEx.Warn("Perform ReceiveLicMsg's licMsg is null msg!");
                return(smcErr.ErrNo);
            }
            else
            {
                logEx.Trace("ReceiveLicMsg licMsg msg: {0}", licMsg.GetType());
            }

            if (LicCallBackType.LicLKReadRevokeTicket == licMsg.MsgID)
            {
                LicMsg license = new LicMsg();
                if (LicPersisFileType.LicPersistentSafemem == licMsg.FileType)
                {
                    if (File.Exists(strPathPersistent))
                    {
                        license.MsgParam = File.ReadAllBytes(strPathPersistent);
                        logEx.Info("LoadLicPersistentSafemem is successful!");
                    }
                    else
                    {
                        //string str = "0x";
                        //byte[] b = Encoding.Default.GetBytes(str);
                        byte[] b = new byte[0];
                        license          = new LicMsg();
                        license.MsgParam = b;
                    }
                }
                else if (LicPersisFileType.LicPersistentInfo == licMsg.FileType)
                {
                    if (this.licenseFileOperateLock.TryEnterWriteLock(CgwConst.ENTER_LOCK_WAIT_TIME))
                    {
                        try
                        {
                            try
                            {
                                if (File.Exists(strPathLic))
                                {
                                    license.MsgParam = File.ReadAllBytes(strPathLic);
                                    logEx.Info("LoadLicenseInfo is successful!");
                                }
                                else
                                {
                                    byte[] b = new byte[0];
                                    license          = new LicMsg();
                                    license.MsgParam = b;
                                }
                            }
                            catch (System.Exception ex)
                            {
                                logEx.Error(ex, "LicLKReadRevokeTicket faild!");
                                //记录系统加载License失败
                                SmcErr recordErr = new SmcErr(SmcErr.LICENSE_LOAD_ERR);
                                recordErr.ErrorInfoParam = new ErrorInfo();
                                recordErr.ErrorInfoParam.AddSmcErrInfo(smcErr);

                                logEx.Error(recordErr);
                            }
                        }
                        finally
                        {
                            this.licenseFileOperateLock.ExitWriteLock();
                        }
                    }
                }
                licMsg = license;
            }
            //License变更
            else if (LicCallBackType.LicLKStateChange == licMsg.MsgID)
            {
                GetControlLicItem(null);
            }
            //保存Licsense失效信息
            else if (LicCallBackType.LicLKWriteRevokeTicket == licMsg.MsgID)
            {
                File.WriteAllBytes(strPathPersistent, licMsg.MsgParam);
            }

            return(smcErr.ErrNo);
        }
Пример #18
0
        public FormBase()
        {
            InitializeComponent();

            log = LogService.Getlog(this.GetType());
        }
Пример #19
0
 public ServiceBase()
 {
     //初始化日志器
     log = LogService.Getlog(this.GetType());
 }