//*** public *** public void writeLog(Loglevel iLogType, string cmpnt, string Msg) { if ((int)iLogType >= 0 && (int)iLogType <= _LogLevel) { attempts = 0; write(iLogType, cmpnt, Msg, attempts); } }
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) }); }
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) }); }
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); } } }
//*** 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; } } }
/// <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'; } }
/// <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'); } }
/// <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); } }
/// <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; } }
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; }
/// <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; }
/* * protected void SetMaxRenderSize(int size) * { * MAXRENDER = size; * } */ public void SetLogLevel(Loglevel l) { lg = l; }
public LogMessage() { Color = Color.Black; TimeStamp = DateTime.Now; Loglevel = Loglevel.Normal; }
public LogMessage(Color color, Loglevel loglevel, string message, params object[] args) { TimeStamp = DateTime.Now; Loglevel = Loglevel.Normal; }
public LogMessage(Color color, Loglevel loglevel, string message, params object[] args) { TimeStamp = DateTime.Now; Loglevel = Loglevel.Normal; }
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."); }
public Pig(ILoggerFactory loggerFactory, IOptionsSnapshot <Rootobject> Rootobjects, IOptionsSnapshot <Loglevel> Loglevel) { this.logger = loggerFactory.CreateLogger <Pig>(); _Rootobjects = Rootobjects.Get("lxsh"); Loglevel LogLevel = Loglevel.Value; }
/// <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; }
/* * //如果环境变量中配置了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"); //}); }
/// <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) )); }