"Always On Availability Groups: Essential DBA Scripts for Monitoring and Checking SQL Server High Availability"

Check Availability Group Health: SELECT ag.name AS [Availability Group], ar.replica_server_name AS [Replica Server], adc.database_name AS [Database], ags.is_local AS [Is Local], ags.is_primary_replica AS [Is Primary] FROM sys.availability_groups AS ag INNER JOIN sys.dm_hadr_availability_replica_states AS ars ON ag.group_id = ars.group_id INNER JOIN sys.dm_hadr_availability_replica_cluster_states AS arcs ON ars.group_id = arcs.group_id AND ars.replica_id = arcs.replica_id INNER JOIN sys.dm_hadr_database_replica_cluster_states AS adc ON arcs.group_id = adc.group_id AND arcs.replica_id = adc.replica_id INNER JOIN sys.availability_group_listeners AS agl ON ag.gro...