protected override void ApplicationStartup(TinyIoCContainer container, IPipelines pipelines) { // set up the log4net log4net.Config.XmlConfigurator.Configure(); Log4NetExtensions.Configure(); // set up json.net config BootstraperExtensions.ConfigureJsonNet(); }
public Service1() { InitializeComponent(); //The logger initialization only needs to be performed ONCE during runtime, so put it at the beginning of an executable or something. You //don't need to perform this per-class Log4NetExtensions.SetupDebugLogger("TestService"); Log4NetExtensions.SetLog4NetAsDefaultLogger(); //THIS needs to be performed per-class in order to get a logger that acts as a proxy to the default logger you setup earlier. Updating the default //logger will automatically update all proxy loggers, so don't worry about the order. Logger = LogServices.CreateLoggerFromDefault(this.GetType()); }
public UnitTestBase(string name = null) { if (name == null) { name = this.GetType().Name; } TestName = name; Log4NetExtensions.SetupDebugLogger($"Unit_{name}"); Log4NetExtensions.SetLog4NetAsDefaultLogger(); Logger = LogServices.CreateLoggerFromDefault(name); }
static void Main(string[] args) { Console.WriteLine("Hello World!"); #region Creater.LogsAuto(); var Repository = "MeRepository"; LogManager.CreateRepository(Repository); ILog logs = Log4NetExtensions.GetLog(Repository); logs.Debug("动态给log4net添加日志类型"); logs.Info("动态生成日志配置项 生成的日志配应该是保存在内存中的,如果停止运行会消失,不会保存到log4net.config文件中"); logs.Warn("WarnWarnWarnWarnWarnWarn"); #endregion var log4netRepository = LogManager.GetRepository(Assembly.GetEntryAssembly()); XmlConfigurator.Configure(log4netRepository, new FileInfo("log4net.config")); ILog log = LogManager.GetLogger(log4netRepository.Name, "NETCorelog4net"); log.Info("NETCorelog4net log"); log.Error("Error log"); log.Debug("Debug"); log.Warn("Warn"); try { log.Info(new LogContent("127.0.0.1", "111111", "登陆系统", "登陆成功")); var ss = 1 - int.Parse("sss"); } catch (Exception ex) { log.Error(new LogContent("127.0.0.1", "111111", "登陆系统", ex.Message + ":" + ex.StackTrace)); } //Creater.Logs(); Console.ReadLine(); }
/// <summary> /// Log a support request with the support provider, including the log file /// and supplied problem description /// </summary> /// <param name="supportEmailAddress">The email address to send the support request to</param> /// <param name="logfileAppenderName">The name of the log file appender as configured in the log4net configuration for the application</param> /// <param name="problemDescription">The user described problem description</param> /// <param name="stepsToReproduce">The user described steps to reproduce the issue</param> /// <param name="allFiles">Flag indicating if all log files should be extracted</param> public void LogSupportRequest(string supportEmailAddress, string logfileAppenderName, string problemDescription, string stepsToReproduce, bool allFiles) { var emailClient = new EmailClient(); emailClient.FromAddress = new MailAddress(WinUtils.CurrentUserEmailAddress(), WinUtils.GetCurrentUserNameWithoutDomain()); var messageBody = string.Format("Problem Description:\n\n{0}\n\n\nSteps to Reproduce:\n\n{1}\n\n", problemDescription, stepsToReproduce); MailMessage message = emailClient.CreateMessage("NOES Support Request from " + System.Environment.MachineName, messageBody); var files = Log4NetExtensions.GetLogFiles(logfileAppenderName, allFiles); // Initialise any progress listeners if (InitialiseSupportProgress != null) { var e = new InitialiseProgressEventArgs() { ElementCount = files.Count }; InitialiseSupportProgress(this, e); } foreach (var logfilePath in files) { var logfileName = Path.GetFileName(logfilePath); using (var stream = new FileStream(logfilePath, FileMode.Open)) { Attachment logfile = emailClient.CreateGzipAttachment(stream, logfileName + ".gz", EmailClient.ApplicationGzip); message.Attachments.Add(logfile); } // Update any progress listeners if (UpdateSupportProgress != null) { UpdateSupportProgress(this, EventArgs.Empty); Application.DoEvents(); } } var supportAddress = new MailAddress(supportEmailAddress); emailClient.SendEmail(message, supportAddress); }
protected override async Task <HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) { // log request body string requestBody = await request.Content.ReadAsStringAsync(); Log4NetExtensions.LogDebug(this, new System.Exception(requestBody)); //Trace.WriteLine(requestBody); // let other handlers process the request var result = await base.SendAsync(request, cancellationToken); if (result.Content != null) { // once response body is ready, log it var responseBody = await result.Content.ReadAsStringAsync(); Log4NetExtensions.LogDebug(this, new System.Exception(responseBody)); //Trace.WriteLine(responseBody); } return(result); }