gpt4 book ai didi

WCF 路由备份列表 - 使用时记录

转载 作者:行者123 更新时间:2023-12-04 20:04:20 25 4
gpt4 key购买 nike

是否可以向 WCF 路由列表添加一些日志记录或行为,以便我可以在路由使用备份列表上的端点时进行记录?

     <filterTables>
<filterTable name="RoutingTable">
<add filterName="Filter1" endpointName="EP1" priority="0" backupList="FailOver"/>
</filterTable>
</filterTables>
<backupLists>
<backupList name="FailOver">
<add endpointName="EP2" />
</backupList>
</backupLists>

行为能否以某种方式记录路由服务最终使用了哪个端点?

最佳答案

尝试创建服务行为(或端点行为并在所有端点上配置行为)

连接消息检查器 IClientMessageInspector

在构造函数中传入端点

在 BeforeSendRequest 方法上记录消息和端点

public class MyClientMessageInspector : IClientMessageInspector
{
private ServiceEndpoint _endpoint;

public MyClientMessageInspector(ServiceEndpoint endpoint)
{
_endpoint = endpoint;
}

public object BeforeSendRequest(ref Message request, IClientChannel channel)
{
Log(request, _endpoint);
return null;
}

public void AfterReceiveReply(ref Message reply, object correlationState)
{
//no-op
}
}

然后您想将检查器应用于行为并附加到路由器

关于WCF 路由备份列表 - 使用时记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5704401/

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