【日志-logback】教程文章相关的互联网学习教程文章

c#-使用Excel作为日志读取器.如果Excel打开,如何写日志文件?

我已经到了一个位置,所有现有的预定应用程序都将其日志写入.CSV文件,以便人们可以在Excel中打开它们.当有人打开日志文件并将其保持打开状态时,就会出现问题.然后,应用程序将无法写入其日志,并且按照规则,它们将死亡. 因此,选项为: >以某种方式使用户以非排他的方式在Excel中打开文件;>尽管用户很粗鲁,但仍能够以某种方式写入日志;>写一个更友善,更柔和的日志阅读器(不会,公司在Excel和.csv文件上运行,它们不会改变);> ??????? ...

C#-NLog.将日志写入不同的表【代码】

我有一个带有区域的ASP MVC项目,我必须将异常记录到数据库中.但是我有一个问题.我必须将每个区域的日志异常写入数据库中自己的表中.我有一个想法,要为与表名相关的CommandText为所有区域配置DataTargets,但这似乎很丑陋.一种更好的方法是通过某个工厂启动应用程序的所有区域并建立目标. 有人对此问题有任何想法或最佳做法吗?解决方法:数据库目标的CommandText属性是一个布局,因此您可以执行以下操作:<target xsi:type="Database"...

c#-日志记录和“依赖倒置抽象”-关注点分离【代码】

由于那里有很多日志记录框架,因此我希望为每个应用程序编写一个抽象,以便控制可以插入哪个日志记录框架.这意味着我在Log4Net或NLog等方面并不可靠,但是我提供了一个接口/抽象,然后以自己的抽象形式提供了插件框架. 遵循这些原则(可能有些简化),我可以将其传递给需要依赖的任何对象.interface ILogger {void LogMessage(string message, Severity severity);void LogDebug(string message);void LogInfo(string message);void LogWa...

c#-如何在Azure上查看应用程序日志【代码】

我有一个运行在azure上的aspnetcore 2.1应用程序. 现在,我想查看日志记录信息以调试仅在Azure上发生的问题. 在该应用中,ILogger<>被注入到类中并使用: this._logger.LogInformation(“ constructor ********************************************** ****“); 如果我在VS中运行该应用程序,则可以在调试输出窗口和asp.net核心Web服务器输出窗口中看到输出. 然后,我发布并继续使用Azure并启用日志流并对其进行查看.我确实看到信息出...

c#-无法使控制台日志在.net Core 2.0中工作【代码】

我有以下代码:var builder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);Configuration = builder.Build(); var serviceProvider = new ServiceCollection().AddLogging(loggingBuilder => loggingBuilder.AddConfiguration(Configuration.GetSection("Logging")).AddConsole().AddDebug()).AddSingleton<IEngine, Engin...

c#-日志实体框架.Net Core 2.2 EF调试输出窗口【代码】

使用.Net Core 2.2中的实体框架,我想将EF生成的所有SQL语句记录到Visual Studio中的“调试输出”窗口中. 在.Net Framework中,我只需要将此行添加到DbContext构造函数中:Database.Log = s => System.Diagnostics.Debug.WriteLine(s);在EF中,我正在尝试以下操作.它会编译,并且会调用OnConfiguring方法,但是没有数据库调用记录到“调试输出”窗口中.我想念什么?public class MyContext : DbContext {private ILoggerFactory GetLogg...

C#-log4net自定义日志对象和附加程序【代码】

我想扩展log4net以接受自定义日志对象作为参数.例如:public class MyLogObject{public string PropA;public int PropB;}private MyLogObject entry = new MyLogObject() {PropA = "FooBar", PropB = 1};Log.Debug(entry);…这应该类似于例外. 在第二步中,应使用自定义数据库附加程序将自定义日志对象写入数据库.定制数据库追加器将类似于ADONetAppender,但进行了一些修改,例如内部缓冲的日志条目队列. 有谁知道它是否适用于log4ne...

C#-log4net-仅创建一个日志文件【代码】

我正在使用log4net,并且在运行应用程序时,会创建几个日志文件.每当时间格式更改时,log4net似乎都在创建一个新的日志文件,这意味着每隔一分钟我都会得到一个新的日志文件. 我可能误解了所使用的xml语法,但是我不确定其错误之处(也许是RollingFileAppender?). 这是xml文件:<log4net><appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"><layout type="log4net.Layout.PatternLayout"><conversionPattern va...

C#-ASP.Net MVC AsyncController日志请求处理时间【代码】

我需要获取asp.net MVC的请求处理时间.我使用IHttpModule订阅onBeginRequest和onEndRequest事件.对于同步控制器,它工作得很好,但对于异步,它返回错误的结果(例如,当实时时间大约为2分钟时为20毫秒).如何以一般方式获取AsyncController的请求处理时间(不为每个异步操作在ActionAsync / ActionCompleted中编写附加代码)?public class TrackRequestModule : RequestProcessingModuleBase, IHttpModule {public const string BeginReq...

c#-GetEventLogs()返回没有安装事件日志?【代码】

请使用以下C#代码:EventLog[] eventLogs; eventLogs = EventLog.GetEventLogs(computername); foreach (EventLog evt in eventLogs) {statusMessagesListBox.Items.Add("evt.Log.ToString(): " + evt.Log.ToString() + "\t\tevt.LogDisplayName: " + evt.LogDisplayName); }运行该命令时,输出如下:evt.Log.ToString(): Application evt.LogDisplayName: Application evt.Log.ToString(): HardwareEvents evt.LogDisplayNa...

C#运行总输出txt日志文件

public static void AddLgoToTXT(string logstring){string path = AppDomain.CurrentDomain.BaseDirectory + "log_opera.txt";// if (!System.IO.Directory.Exists(path))//{// Directory.CreateDirectory(path);//}//string pathlog = path + "\\log_opera.txt";if (!System.IO.File.Exists(path)){FileStream stream = System.IO.File.Create(path);stream.Close();stream.Dispose();}using (StreamWriter writer = new Stre...

c# – 使用Hangfire,SQL Server日志文件增长了40GB【代码】

我使用在IIS中运行的MVC开发了一个Hangfire应用程序,它工作得很好,直到我看到我的SQL Server日志文件的大小,一夜之间增长了40 GB! 根据我们DBA的信息,有一个长时间运行的事务,有以下SQL语句(我有2个hangfire队列) – (@queues1 nvarchar(4000),@queues2 nvarchar(4000),@timeout float) delete top (1) from [HangFire].JobQueue with (readpast, updlock, rowlock) output DELETED.Id, DELETED.JobId, DELETED.Queue where (Fetc...

首页> C#>如何删除和创建Windows事件查看器中的日志【代码】

我有一个应用.我正在尝试在Windows Event Viewer崩溃时编写日志.我发现Write to Windows Application Event Log,并且我正在使用DispatcherUnhandledExceptionEventHandler捕获未处理的异常.我在应用程序的构造函数中设置它,例如:DispatcherUnhandledException += MyApplication_DispatcherUnhandledException;并这样写日志:using (EventLog eventLog = new EventLog("Application")){eventLog.Source = "Application";eventLog.W...

c#-在现有应用程序(Windows或Web).Net中添加日志记录的最佳方法【代码】

我继承了几个.Net(C#)应用程序,该应用程序未添加任何跟踪或日志记录.该应用程序可以完成创建,读取,更新和删除记录的所有操作.它发送电子邮件并呼叫Web服务. 当然,维护它是一场噩梦,因为没有日志记录也没有try catch机制(我知道我也不敢相信). 因此,在该系统中实现日志记录的最佳方法是什么.我不能转到每个函数调用并添加日志记录行.有什么方法可以使动态日志记录基于我提供的方法名称进行记录. 即调用UpdateOrder()时,我的记录器应...

c# – 格式化日志的好方法是什么?

我正在设计一个应用程序,其中包括记录从Telnet连接收到的所有传入消息的需要.虽然可以包含提供文本颜色和格式的ANSI标签(16种颜色,粗体,下划线等),但文本基本上很简单. 我想格式化我的日志以存储格式,日期/时间以及稍后可能的其他元数据的文本.我的第一个想法是所有XML,但这可能会影响我以后编写快速搜索工具的能力.我目前的想法是在一个文件中的日期/时间文本,其中元数据存储在另一个XML文件中,由行号引用. 这是一个好的解决方案吗...