gpt4 book ai didi

c# - 您将如何构建 HttpTraceListener?

转载 作者:太空宇宙 更新时间:2023-11-03 14:37:21 25 4
gpt4 key购买 nike

我的应用程序使用 Trace 对象来记录信息。信息通过 TextWriterTraceListener 捕获在一个文件中,并且可以完美运行。但是,我想添加另一个将信息记录到 Web 服务的 TraceListerner。换句话说,我需要一个 HttpTraceListener。此外,我需要一些智能,我不希望看到每个日志条目都有一个 HTTP 请求。

你会如何构建这样的东西?我知道我必须继承 TraceListener(文档有点含糊...)但是是否有人知道 HttpTraceListener 是否已经存在?我不想重新发明轮子...

谢谢!

最佳答案

由于您对可变日志记录的要求,即不对每个条目发出请求,您肯定需要创建自己的监听器。

根据 TraceListener 上的 MSDN 文档 (http://msdn.microsoft.com/en-us/library/system.diagnostics.tracelistener(VS.80).aspx)

“继承此类以实现 Debug 和 Trace 类的自定义监听器。至少,您必须实现 Write 和 WriteLine 方法。此外,您还可以实现 Fail、Close 和 Flush 方法。”

我会开始:

  1. 继承自 TraceListener。
  2. 实现 Write/WriteLine 方法
  3. 在 Write 中添加您的逻辑以将请求提交到网络服务。如果您使用基类实现,WriteLine 只是附加一个行终止符。
  4. 根据您的应用程序的需要覆盖 Fail/Close/Flush。

这 5 个方法将为您提供实现监听器所需的所有访问权限。

关于c# - 您将如何构建 HttpTraceListener?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/503320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com