- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Microsoft.ServiceModel.Samples.CircularTracecListener 二进制文件来实现 Web 服务上的错误日志记录。
它应该写入一个文件,直到达到 maxFileSizeKB,然后滚动到一个辅助文件。当我以较低的文件大小限制对其进行测试并且滚动发生在短时间内时,此过程运行良好。
奇怪的是,当我设置 maxFileSizeKB 时,第二天我发现记录器覆盖了主文件而未触及辅助文件。
web.config文件设置如下:
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Information,ActivityTracing" >
<listeners>
<add name="CircularTraceListener" />
</listeners>
</source>
</sources>
<sharedListeners>
<add name="CircularTraceListener" type="Microsoft.Samples.ServiceModel.CircularTraceListener,CircularTraceListener"
initializeData="c:\log\webserviceLog.xml" maxFileSizeKB="5120" />
</sharedListeners>
<trace autoflush="true" />
有人遇到过类似的问题吗?
我只能想到重新启动网络服务并使其从第一个文件开始。
可能是应用程序池回收?
当我检查 iis 日志时,我发现应用程序池大约在我的日志文件被删除的同时被回收。
最佳答案
Microsoft.ServiceModel.Samples.CircularTraceListener
代码示例读取一次 maxFileSizeKB
设置。为了使对该设置的更改生效,您必须重新启动托管过程。
编辑:
当您编辑 web.config 时,IIS 应用程序池将默认自动回收。
如果您的 IIS 应用程序池被回收,它将覆盖主文件 (webserviceLog00.xml)。
您可以将“Application Pool > Advanced Settings... > Recycling > Disable Recycling for Configuration Changes”设置为 true 以防止应用程序池重新启动。
关于c# Circular traceListener 不滚动文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46284384/
在编写自定义 TraceListener 时,如何强制 writeheader、数据/消息和 writefooter 成为一个谨慎的记录?特别是有问题的自定义跟踪监听器写入非基于文件的源,例如数据库或
我有一个自定义 TraceListener 和两个线程。跟踪消息仅来自第一个线程,第二个线程的 Trace.Write() 消息不会通过。我已经尝试使用两个线程都可以访问的单个全局 TraceList
我对 DefaultTraceListener(这是唯一的跟踪监听器,如果没有在 app.config 中覆盖的话)的问题是,如果 AssertUiEnabled 是 false(即在 ASP.NET
我有代码: var listener = new TextWriterTraceListener(@"C:\logs\1.log", "myListener") {
我正在使用 Microsoft.ServiceModel.Samples.CircularTracecListener 二进制文件来实现 Web 服务上的错误日志记录。 它应该写入一个文件,直到达到
我正在使用 TextWriterTraceListener 进行日志记录,它正在使用 app.config 配置到应用程序中,如下所示。
我在使用自定义 TraceListener 时遇到了一些困难。问题在于写入单个跟踪线会产生两次调用,一个调用 Write(),另一个调用 WriteLine()。对 Write() 的调用包含跟踪源、
我一直在研究使用 System.Diagnostics.Trace 进行日志记录是一个非常基本的应用程序。通常它会完成我需要它做的所有事情。缺点是如果我调用 Trace.TraceInformatio
我正在使用 Microsoft.Owin.Hosting 来托管以下非常简单的网络应用。 这是启动它的调用: WebApp.Start("http://localhost:8080/events");
我尝试使用两种不同的日志级别设置 MySource 跟踪源。 FileLog 应跟踪所有内容(详细),系统事件日志应仅跟踪错误。 以下设置似乎已终止记录到 FileLog。我做错了什么?
我尝试在我的网络服务中实现跟踪,但收到错误: Couldn't find type for class Host.AzureLocalStorageTraceListener, MyProject.H
我已进行以下配置,但没有任何跟踪记录进入 Application Insights(否则 Application Insights 对于其他日志记录工作正常,并且 Azure 诊断监听器也在工作并捕获
我正在寻找实现 TraceListener 的最佳实践将从 ASP.NET 应用程序写入 SQL Server 内的日志。 实现此类时应考虑哪些事项以避免性能下降? 存储过程会比普通的 ADO.NET
我有以下日志文件 tracelistener,它扩展了 filelogtracelistener,它工作正常,我能够记录消息,但我想在此指定一个额外的自定义属性,例如MaxUsers 及以下是它的
为什么 Moq 验证失败并显示“Moq.MockException:未对模拟执行调用”? var mock = new Mock(); var ts = new TraceSource("traceS
好吧,我是 .net 的新手,我一直在搜索一些可用于 c# 的日志记录工具。我发现,Apache基金会创建的TraceListener和Log4Net,即使在大型项目中也有非常广泛的应用。但这两者之间
这个问题的答案可能是简单的“否”,但我想设置报告的跟踪事件的严重性级别。 我正在使用 Application Insights API 和 Application Insights TraceList
我已经实现了一个自定义跟踪监听器(源自 TextWriteTraceListener),现在我想将我的应用程序设置为使用它而不是标准 TextWriteTraceListener。 首先,我添加了默认
我正在使用 TraceSource 记录 ASP.Net 应用程序。 要更改输出格式,我需要创建自己的 TraceListener 而不是 TextwriterListener。
是否可以在 TraceListener 的“initializeData”中放置时间戳? 像这样: 一旦应用程序启动,我想将 DateTime.Now 放入每
我是一名优秀的程序员,十分优秀!