dottrace

AddressFilter mismatch at the EndpointDispatcher during dottrace remote debugger connection


Trying to connect to remote agent via load balancer gives error:

The message with To 'net.tcp/address/RemoteAgent' cannot be processed at the receiver, due to an AddressFilter mismatch at the EndpointDispatcher. Check that the sender and receiver's EndpointAddresses agree.

Most of the solutions talk about adding the below to service code:

[ServiceBehavior(AddressFilterMode = AddressFilterMode.Any)]

Can something be done in the config to turn off AddressFilter matching?

Contents of RemoteAgent.exe.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
  </startup>
  <system.serviceModel>
    <services>
      <service name="JetBrainsAgentService" behaviorConfiguration="JetBrainsAgentServiceBehavior" />
    </services>
    <bindings>
      <wsHttpBinding>
        <binding name="JetBrainsAgentBinding_WSHttp" maxReceivedMessageSize="2147483647" openTimeout="00:01:00" receiveTimeout="infinite" sendTimeout="00:01:00" closeTimeout="00:01:00">
          <readerQuotas maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" />
          <security mode="None" />
        </binding>
      </wsHttpBinding>
      <netTcpBinding>
        <binding name="JetBrainsAgentBinding_NetTcp" maxReceivedMessageSize="2147483647" openTimeout="00:01:00" receiveTimeout="infinite" sendTimeout="00:01:00" closeTimeout="00:01:00">
          <readerQuotas maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" />
          <security mode="None" />
        </binding>
      </netTcpBinding>
      <netNamedPipeBinding>
        <binding name="JetBrainsAgentBinding_NetNamedPipe" maxReceivedMessageSize="2147483647" openTimeout="00:01:00" receiveTimeout="infinite" sendTimeout="00:01:00" closeTimeout="00:01:00">
          <readerQuotas maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" />
          <security mode="None" />
        </binding>
      </netNamedPipeBinding>
    </bindings>
    <behaviors>
      <serviceBehaviors>
        <behavior name="JetBrainsAgentServiceBehavior">
          <serviceMetadata httpGetEnabled="true" />
          <serviceDebug httpHelpPageEnabled="true" includeExceptionDetailInFaults="true" />
          <dataContractSerializer maxItemsInObjectGraph="2147483647" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
</configuration>

Solution

  • You can try to use the workaround described here: http://androidyou.blogspot.com/2010/09/fix-wcf-addressfilter-mismatch-error.html Also, you can use dotTrace console profiler instead of Remote Agent: https://www.jetbrains.com/help/profiler/Performance_Profiling__Profiling_Using_the_Command_Line.html