Example #1
0
 //*** public ***
 public void writeLog(Loglevel iLogType, string cmpnt, string Msg)
 {
     if ((int)iLogType >= 0 && (int)iLogType <= _LogLevel)
     {
         attempts = 0;
         write(iLogType, cmpnt, Msg, attempts);
     }
 }
Example #2
0
 public static void Exception(Exception exception, Loglevel level = Loglevel.Debug)
 {
     Logger.Instance.AddLogmessage(
         new LogMessage
         {
             Color = Color.Red,
             Loglevel = level,
             Message = string.Format("Exception: [{0}]{1}{2}", exception.Message, Environment.NewLine, exception)
         });
 }
Example #3
0
 public static void Exception(Exception exception, Loglevel level = Loglevel.Debug)
 {
     Logger.Instance.AddLogmessage(
         new LogMessage
     {
         Color    = Color.Red,
         Loglevel = level,
         Message  = string.Format("Exception: [{0}]{1}{2}", exception.Message, Environment.NewLine, exception)
     });
 }
Example #4
0
        public void LogMessage(string requestId, ProxyProtocol proxyProtocol, Loglevel logLevel, string message, params object[] messageParams)
        {
            if (string.IsNullOrEmpty(message) ||
                string.IsNullOrWhiteSpace(message))
            {
                return;
            }

            if (logLevel < this.CurrentLoggingLevel)
            {
                return;
            }

            if (string.IsNullOrEmpty(requestId))
            {
                requestId = "UNDEF";
            }

            try
            {
                // Prepare log message
                var timestamp = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                if (messageParams != null &&
                    messageParams.Length > 0)
                {
                    message = string.Format(message, messageParams);
                }

                message = message.Trim();

                lock (this.syncObj)
                {
                    var logMessage = $"{timestamp} {requestId} {proxyProtocol}: {message}";
                    logFileStreamWriter.WriteLine(logMessage);
                    logFileStreamWriter.Flush();
                    logFileStreamWriter.BaseStream.Flush();

                    Console.WriteLine(logMessage);
                    // If testing this application add record to array
                    if (this.IsInTestingMode)
                    {
                        var logLine = $"{timestamp} {requestId}: {message}{Environment.NewLine}";
                        this.logs.Add(logLine);
                    }
                }
            }
            catch (Exception ex)
            {
                if (logLevel == Loglevel.Debug)
                {
                    Console.WriteLine("ERROR: Error occurred in LogMessage: {0}", ex.Message);
                }
            }
        }
Example #5
0
        //*** Methods ***
        #region
        //*** private ***
        // writing LogMsg into Logfile with current timestamp no LogLevel is checked
        private void write(Loglevel iLogType, string cmpnt, string LogMsg, byte attempts)
        {
            DateTime Now = DateTime.Now;

            if (attempts < 100)
            {
                try
                {
                    using (StreamWriter fs = new StreamWriter(_PathToLogFile, true))
                    {
                        switch (iLogType)
                        {
                        case Loglevel.Error:
                            fs.WriteLine("[" + Now.ToString("yyyy/MM/dd HH:mm:ss") + "]" + "[Error]" + "[" + cmpnt + "] " + LogMsg + " ");
                            break;

                        case Loglevel.Warning:
                            fs.WriteLine("[" + Now.ToString("yyyy/MM/dd HH:mm:ss") + "]" + "[Warning]" + "[" + cmpnt + "] " + LogMsg + " ");
                            break;

                        case Loglevel.Debug:
                            fs.WriteLine("[" + Now.ToString("yyyy/MM/dd HH:mm:ss") + "]" + "[Debug]" + "[" + cmpnt + "] " + LogMsg + " ");
                            break;
                        }

                        /*
                         * //no zero when time got one digit elements
                         * fs.WriteLine("[" + Now.Year.ToString() + @"/"
                         + Now.Month.ToString() + @"/"
                         + Now.Day.ToString() + " "
                         + Now.Hour.ToString() + ":"
                         + Now.Minute.ToString() + ":"
                         + Now.Second.ToString() + "] " + LogMsg);*/
                    }
                }
                catch (IOException e)                       //put current thread on hold if another one is already writing in the logfile
                {
                    attempts++;
                    Thread.Sleep(attempts);
                    write(iLogType, cmpnt, LogMsg, attempts);
                }
                catch (UnauthorizedAccessException e)
                {
                    System.Windows.Forms.MessageBox.Show("An error while logging has occurred. Check if file is write protected. Loglevel has been set to \"None\"");
                    SimpleMind._LogLevel = 0;
                }
                catch (Exception e)
                {
                    System.Windows.Forms.MessageBox.Show("An error while logging has occurred. Check if path exists. Loglevel has been set to \"None\"");
                    SimpleMind._LogLevel = 0;
                }
            }
        }
Example #6
0
 /// <summary>
 /// Get Loglevel char
 /// </summary>
 /// <param name="loglevel">Loglevel</param>
 /// <returns>char</returns>
 public char LoglevelChar(Loglevel loglevel)
 {
     switch (loglevel)
     {
         case Loglevel.Debug:
             return 'D';
         case Loglevel.Verbose:
             return 'V';
         default:
             return 'N';
     }
 }
Example #7
0
        /// <summary>
        ///     Get Loglevel char
        /// </summary>
        /// <param name="loglevel">Loglevel</param>
        /// <returns>char</returns>
        public char LoglevelChar(Loglevel loglevel)
        {
            switch (loglevel)
            {
            case Loglevel.Debug:
                return('D');

            case Loglevel.Verbose:
                return('V');

            default:
                return('N');
            }
        }
Example #8
0
 /// <summary>
 /// Gets the hash code
 /// </summary>
 /// <returns>Hash code</returns>
 public override int GetHashCode()
 {
     unchecked // Overflow is fine, just wrap
     {
         var hashCode = 41;
         // Suitable nullity checks etc, of course :)
         if (ManagerRoot != null)
         {
             hashCode = hashCode * 59 + ManagerRoot.GetHashCode();
         }
         if (HttpServiceFilter != null)
         {
             hashCode = hashCode * 59 + HttpServiceFilter.GetHashCode();
         }
         if (DefaultRender != null)
         {
             hashCode = hashCode * 59 + DefaultRender.GetHashCode();
         }
         if (Realm != null)
         {
             hashCode = hashCode * 59 + Realm.GetHashCode();
         }
         if (Username != null)
         {
             hashCode = hashCode * 59 + Username.GetHashCode();
         }
         if (Password != null)
         {
             hashCode = hashCode * 59 + Password.GetHashCode();
         }
         if (Category != null)
         {
             hashCode = hashCode * 59 + Category.GetHashCode();
         }
         if (Locale != null)
         {
             hashCode = hashCode * 59 + Locale.GetHashCode();
         }
         if (Loglevel != null)
         {
             hashCode = hashCode * 59 + Loglevel.GetHashCode();
         }
         if (Plugins != null)
         {
             hashCode = hashCode * 59 + Plugins.GetHashCode();
         }
         return(hashCode);
     }
 }
Example #9
0
        /// <summary>
        /// 选择日志等级
        /// </summary>
        /// <param name="str">传入的日志等级</param>
        private void SetLoglevel(string str)
        {
            switch (str)
            {
            case "Debug": loglevelbase = HdisCommon.Log.Loglevel.Debug;
                break;

            case "Error": loglevelbase = HdisCommon.Log.Loglevel.Error;
                break;

            case "Info": loglevelbase = HdisCommon.Log.Loglevel.Info;
                break;

            default: Console.WriteLine("日志等级错误!");
                break;
            }
        }
Example #10
0
        public static void Write(string Text, Loglevel lvl = Loglevel.Normal)
        {
            switch (lvl)
            {
            case Loglevel.Warning:
                Console.ForegroundColor = ConsoleColor.Yellow;
                break;

            case Loglevel.Error:
                Console.ForegroundColor = ConsoleColor.Red;
                break;

            case Loglevel.Normal:
            default:
                Console.ForegroundColor = ConsoleColor.Gray;
                break;
            }

            Console.WriteLine(Text);
            Console.ForegroundColor = ConsoleColor.Gray;
        }
Example #11
0
        /// <summary>
        /// 读取配置文件
        /// </summary>
        private void GetXml()
        {
            System.Xml.XmlDocument xml = new System.Xml.XmlDocument();

            if (File.Exists(Loadpath))
            {
                xml.Load(@Loadpath);
                XmlNode     root         = xml.SelectSingleNode("LogConfigSettings");
                XmlNodeList childrenlist = root.ChildNodes;

                if (null != childrenlist)
                {
                    foreach (XmlNode ai in childrenlist)
                    {
                        switch (ai.Attributes[0].Value)
                        {
                        case "LogLevel": SetLoglevel(ai.Attributes[1].Value.ToString());
                            break;

                        case "LogPath": logDir = ai.Attributes["value"].Value.ToString();
                            break;

                        case "RetentionTime": Retentiontime = Convert.ToInt32(ai.Attributes["value"].Value);
                            break;

                        default:
                            break;
                        }
                    } // end foreach
                }     // end if (null != childrenlist)
            }
            else
            {
                loglevelbase  = HdisCommon.Log.Loglevel.Info;
                logDir        = AppDomain.CurrentDomain.BaseDirectory + "\\Log";
                Retentiontime = 30;
            }
            return;
        }
Example #12
0
 /*
  * protected void SetMaxRenderSize(int size)
  * {
  *  MAXRENDER = size;
  * }
  */
 public void SetLogLevel(Loglevel l)
 {
     lg = l;
 }
Example #13
0
 public LogMessage()
 {
     Color     = Color.Black;
     TimeStamp = DateTime.Now;
     Loglevel  = Loglevel.Normal;
 }
Example #14
0
 public LogMessage(Color color, Loglevel loglevel, string message, params object[] args)
 {
     TimeStamp = DateTime.Now;
     Loglevel  = Loglevel.Normal;
 }
Example #15
0
 public LogMessage(Color color, Loglevel loglevel, string message, params object[] args)
 {
     TimeStamp = DateTime.Now;
     Loglevel = Loglevel.Normal;
 }
Example #16
0
 public LogMessage()
 {
     Color = Color.Black;
     TimeStamp = DateTime.Now;
     Loglevel = Loglevel.Normal;
 }
 public static void Exception(Exception exception, Loglevel level = Loglevel.Debug)
 {
     s_logger.Error(exception, "Exception logged.");
 }
Example #18
0
 public Pig(ILoggerFactory loggerFactory, IOptionsSnapshot <Rootobject> Rootobjects, IOptionsSnapshot <Loglevel> Loglevel)
 {
     this.logger  = loggerFactory.CreateLogger <Pig>();
     _Rootobjects = Rootobjects.Get("lxsh");
     Loglevel LogLevel = Loglevel.Value;
 }
Example #19
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Logging"/> class.
 ///
 /// </summary>
 /// <param name="logLevel"></param>
 private Logging(Loglevel logLevel = Loglevel.Debug)
 {
     this.CurrentLoggingLevel = logLevel;
 }
Example #20
0
        /*
         * //如果环境变量中配置了Demo的环境,则配置中间件的方法
         * public void ConfigureDemo(IApplicationBuilder app, IWebHostEnvironment env)
         * {
         *
         * }
         */
        //默认的配置管道的方法
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IOptions <AppSetting> options)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            //app.UseStaticFiles();

            var setting = new AppSetting();

            //配置文件整个绑定到对象
            _configuration.Bind(setting);

            //配置文件部分绑定到对象
            var loglevel = new Loglevel();

            _configuration.GetSection("Logging").GetSection("Loglevel").Bind(loglevel);

            /*
             * app.Use(async (context, next) =>
             * {
             *  await context.Response.WriteAsync("hello use 1 begin \r\n");
             *  await next();
             *  await context.Response.WriteAsync("hello use 1 end \r\n");
             * });
             *
             * app.Use(async (context, next) =>
             * {
             *  await context.Response.WriteAsync("hello use 2 begin \r\n");
             *  await next();
             *  await context.Response.WriteAsync("hello use 2 end \r\n");
             * });
             */
            //自定义中间件的约定
            //1.具有RequestDelegate参数的构造函数
            //2.具有返回类型为Task的Invoke或者InvokeAsync的方法,且具有HttpContext参数
            //app.UseMiddleware<TestMiddleware>();

            app.UseSwagger();
            app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "My Demo API V1"));

            //获取路由信息,包括路由数据(路由模板)、获取对应的中间件
            app.UseRouting();

            //.net core 2.X里面没有这个
            //3.X里面拆开出来为了复用

            /*
             * app.Use(async (context, next) =>
             * {
             *  var ep = context.GetEndpoint();
             *  var rv = context.Request.RouteValues;
             *  //await ep.RequestDelegate(context);
             *  await next();
             * });
             */
            //终结点中间件
            app.UseEndpoints(endpoints =>
            {
                ////RazorPages路由
                //endpoints.MapRazorPages();
                ////特性路由(WebApi)
                endpoints.MapControllers();
                //控制器路由(MVC)
                endpoints.MapControllerRoute("area", "{area:exists}/{controller=Home}/{action=Index}/{id?}");
                endpoints.MapControllerRoute("default", "{controller=Home}/{action=Index}/{id?}");
                endpoints.MapGet("/test", async context =>
                {
                    await context.Response.WriteAsync("Hello World!\r\n");
                });
            });
            //app.Run(async context =>
            //{
            //    await context.Response.WriteAsync("end");
            //});
        }
Example #21
0
        /// <summary>
        /// Returns true if OrgApacheFelixWebconsoleInternalServletOsgiManagerProperties instances are equal
        /// </summary>
        /// <param name="other">Instance of OrgApacheFelixWebconsoleInternalServletOsgiManagerProperties to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(OrgApacheFelixWebconsoleInternalServletOsgiManagerProperties other)
        {
            if (other is null)
            {
                return(false);
            }
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return
                ((
                     ManagerRoot == other.ManagerRoot ||
                     ManagerRoot != null &&
                     ManagerRoot.Equals(other.ManagerRoot)
                     ) &&
                 (
                     HttpServiceFilter == other.HttpServiceFilter ||
                     HttpServiceFilter != null &&
                     HttpServiceFilter.Equals(other.HttpServiceFilter)
                 ) &&
                 (
                     DefaultRender == other.DefaultRender ||
                     DefaultRender != null &&
                     DefaultRender.Equals(other.DefaultRender)
                 ) &&
                 (
                     Realm == other.Realm ||
                     Realm != null &&
                     Realm.Equals(other.Realm)
                 ) &&
                 (
                     Username == other.Username ||
                     Username != null &&
                     Username.Equals(other.Username)
                 ) &&
                 (
                     Password == other.Password ||
                     Password != null &&
                     Password.Equals(other.Password)
                 ) &&
                 (
                     Category == other.Category ||
                     Category != null &&
                     Category.Equals(other.Category)
                 ) &&
                 (
                     Locale == other.Locale ||
                     Locale != null &&
                     Locale.Equals(other.Locale)
                 ) &&
                 (
                     Loglevel == other.Loglevel ||
                     Loglevel != null &&
                     Loglevel.Equals(other.Loglevel)
                 ) &&
                 (
                     Plugins == other.Plugins ||
                     Plugins != null &&
                     Plugins.Equals(other.Plugins)
                 ));
        }