SQL Server – Detect Who is Connecting via an AG Listener

availability-groupslistenersql server

We have multiple generations of applications connecting to SQL Server, some of which we know [their connection libraries] do not support using the MultiSubnetFailover=True connection parameter. Fine.

For the apps that "say" they are capable of using the AG listener, is there any way to verify this from the SQL side once they are connected? Unfortunately, our role (DBAs) does not grant us (nor would we want) the liberty of validating all kinds of application strings to ensure they configured it correctly. These older generation applications have historically used the literal server name, but we're trying to migrate all over to listeners.

First post; please let me know what info I might be missing from my question. Thanks!

Best Answer

[…] is there any way to verify this from the SQL side once they are connected?

Unfortunately there is not, most of the client side connection string settings are not persisted or sent across the wire as they are specific to the connection library - one such is the MultiSubnetFailover setting.

These older generation applications have historically used the literal server name, but we're trying to migrate all over to listeners.

I'll point you to a post I made a while ago for someone that had a very similar issue and they wanted a way to track it down. It was very helpful for them, it may or may not be helpful for you but it's the closest you're going to get without asking to see the connection string of the application. The very minimum it'll show you if they are using the listener and which one. It gives some extra information so you can narrow down which client on the remote (note that this data can be spoofed, as I show).