gpt4 book ai didi

.Net Web 服务日志记录

转载 作者:行者123 更新时间:2023-12-04 10:59:42 24 4
gpt4 key购买 nike

我登录 Web 服务的理想情况是记录所有方法调用(身份验证和数据访问)以及传递给它们的参数以及可能发生的错误,并将它们与关联的单个 ID 相关联他们用同样的电话。此外,我希望能够控制是否记录所有参数,或者是否只记录方法调用。我希望能够控制是记录所有登录还是仅记录失败的登录。同样,在单个请求中检索到的所有信息都将通过 id(guid 或其他方式)链接在一起。

这是我理想的日志记录情况。如果有人知道如何实现所有这些并且愿意搬到新罕布什尔州曼彻斯特地区......;)

但说真的,有谁知道我将如何将收到的 Web 服务请求与错误或方法调用联系起来?我最初的尝试涉及在 Soap 扩展中乱搞,尝试添加 header (soap 或 html)以及不将扩展中的任意值传递到服务本身的内容。我所有的尝试都没有成功。

我们目前的日志情况有认证记录到一个表,方法/业务调用到另一个表,异常记录到另一个表,它们之间没有互连。时间戳有时很有用,但不够可靠,无法有效调试。我们目前在 .Net 2.0 上,有可能在今年年底使用 3.5,所以如果回复保留到 2.0 功能会更有帮助。

有人有任何想法吗?

最佳答案

如果可能,请使用 wcf 并实现消息日志记录,请参阅 http://msdn.microsoft.com/en-us/library/ms730064.aspx

<system.diagnostics>
<sources>
<source name="System.ServiceModel.MessageLogging">
<listeners>
<add name="messages"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData="c:\logs\messages.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>

<system.serviceModel>
<diagnostics>
<messageLogging
logEntireMessage="true"
logMalformedMessages="false"
logMessagesAtServiceLevel="true"
logMessagesAtTransportLevel="false"
maxMessagesToLog="3000"
maxSizeOfMessageToLog="2000"/>
</diagnostics>
</system.serviceModel>

关于.Net Web 服务日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/141781/

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