草庐IT

日志告警

全部标签

c# - OpenTracing 不使用 Serilog 发送日志

我正在尝试使用OpenTracing.Contrib.NetCore与Serilog。我需要将我的自定义日志发送给Jaeger。现在,它仅在我使用默认记录器工厂Microsoft.Extensions.Logging.ILoggerFactory时有效我的创业公司:publicvoidConfigureServices(IServiceCollectionservices){services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);services.AddSingleton(sp=>{varl

c# - IIS 抛出 ThreadAbortException 并回收 worker,IIS 日志记录为 "IIS configuration change"的可能原因是什么?

当后台线程正在运行时,我开始在Appharbor上托管的.NetMVC网络应用程序中看到错误-经过仔分割析-我无法找出原因。首先,我注意到的异常是ThreadAbortException。然而,这实际上只是表示线程正在被杀死。在线程被杀死之前,您可以看到IIS创建了一个新的worker,并在同一台机器上调用了Application_Start。新应用程序启动并运行后,IIS会终止旧应用程序并按预期处理新请求。同时,IIS记录一条消息:ShutDownMessage:IISconfigurationchangeHostingEnvironmentinitiatedshutdownHost

c# - 非常简单的文件追加器日志记录不起作用

这是我的web.config信息:...这是初始化记录器的代码:protectedvoidSendMessage(){log4net.Config.XmlConfigurator.Configure();ILoglog=LogManager.GetLogger(typeof(Contact));...log.Info("herewego!");log.Debug("debugafasf");...}无论我做什么,它都不起作用。我正确引用了“log4net.dll”,通过调试应用程序我可以看到日志对象正在正确启动。这是一个asp.net3.5框架的web项目。有什么想法/建议吗?我原以为

c# - HttpRequestMessage.Content 在 ASP.Net Web API 中的日志记录 DelegatingHandler 中读取时丢失

当尝试在Controller中的Action中访问对象时,它有时似乎为null。我发现这是由于DelegatingHandler的SendAsync()覆盖中的ReadAsStringAsync()造成的。问题在于内容。当我的客户端发送内容主体并在记录器中读取它时,它永远不会被Controller操作调用程序读取(或者可能位于JsonFormatter中的某处)。我怀疑随后对Content.ReadAsStringAsync()的调用不会引发异常,但也不会返回预期的内容主体(返回一些信息表明异步读取已完成)。但我的问题仍然存在,因为我想在操作中读取一个[FromBody]参数,当Con

c# - 每天创建一个新的日志文件

正如标题所暗示的那样,我如何在C#中每天创建一个新的日志文件?现在该程序可能不一定会全天候运行,而只会在工作时间被调用。所以我需要做两件事。如何每天创建一个新的日志文件?日志文件的名称格式类似于MMDDYYYY.txt我怎样才能在午夜之后创建它以防它运行到晚上的所有时间? 最佳答案 2018年更新:我现在更喜欢使用NLog以前关于log4net的回答:Thisexample显示如何配置RollingFileAppender以在日期期间滚动日志文件。此示例将每分钟滚动一次日志文件!要更改滚动周期,请调整DatePattern值。例如,

c# - 日志文件的并行 GZip 解压缩 - 调整 MaxDegreeOfParallelism 以获得最高吞吐量

我们每天有多达30GB的GZip日志文件。每个文件包含100.000行,压缩后大小在6到8MB之间。已剥离解析逻辑的简化代码利用了Parallel.ForEach循环。在双NUMA节点、32个逻辑CPU盒(IntelXeonE7-2820@2GHz)上,MaxDegreeOfParallelism处理峰值的最大行数:usingSystem;usingSystem.Collections.Concurrent;usingSystem.Linq;usingSystem.IO;usingSystem.IO.Compression;usingSystem.Threading.Tasks;nam

git查看日志

目录引言git查看该项目提交记录查看指定条数的记录显示提交的差异提交的简略信息按行显示提交信息按照指定格式显示记录指定文件的提交记录指定字符串或函数的提交记录示例引言有时需要对之前所做的一些修改查看记录,这里是查看git提交记录的指令。git查看该项目提交记录gitlog会按时间先后顺序列出所有的提交,最近的更新排在最上面。查看指定条数的记录gitlog-n限制显示的日志条目数量为n条。显示提交的差异gitlog-p-p或--patch,它会显示每次提交所引入的差异。提交的简略信息每次提交的简略统计信息,可以使用--stat;gitlog--stat按行显示提交信息–pretty。这个选项可以

c# - .NET 中的异常处理和日志记录策略

我正在构建一个包含ASP.NETMVCWeb应用程序的多层应用程序。它由表示层、业务层、数据层等常用层组成。如何创建/使用一种体面的异常处理机制?我在PatternsandPractices上读到,您需要将异常冒泡到各个层。还有记录。记录发生在哪里?在MVC网络应用程序中?您将如何根据错误类型重定向到各种错误页面?如果你们有一些关于此的反馈和一些文章,我将不胜感激。如果有任何示例应用程序使用了不错的异常处理和日志记录策略,请告诉我:) 最佳答案 首先,我建议阅读VexingExceptions的文章“EricLippert”.这应该

c# - Windows 事件日志 - 如何注册事件源?

我正在创建一个新的事件源并使用以下代码记录一条消息:staticvoidMain(string[]args){if(!EventLog.SourceExists("MyLog")){EventLog.CreateEventSource("MyApplication","MyLog");Console.WriteLine("Creatednewlog\"MyLog\"");}EventLogmyLog=newEventLog("MyLog");myLog.Source="MyApplication";myLog.WriteEntry("Couldnotconnect",EventLogE

c# - 我可以写入控制台日志以使用 C# 调试 Web 应用程序吗

我想在调试时在我的ASPMVC3应用程序中记录一些变量。我尝试了一些不同的东西,例如:Debug.Log(topTitle+""+subTitle);这似乎行不通。如何从我的C#代码写入VS2010的控制台? 最佳答案 要在VisualStudio中写入控制台窗口,请使用:System.Diagnostics.Debug.WriteLine(topTitle+""+subTitle);下面是它的运行截图: 关于c#-我可以写入控制台日志以使用C#调试Web应用程序吗,我们在StackOv