I have been noticing this heartbeat.aspx in few blogs.But nothing explains the use of heartbeat.aspx,What exatcly is hearbeat.aspx and how/when can i use it ?
You can access
Heartbeat.aspx checks if all your SQL databases configured in your
connectionStrings config are accessible.
I they are accessible, it just render empty response.
If at least one of the databases is not accessible, it returns
500 Internal Error page and writes to the log file lines like:
5112 16:42:04 FATAL SINGLE MSG: Sitecore heartbeat:
Message: Database ........................ is not available
You can exclude some of the connection strings from being checked by Hearbeat using
<setting name="Sitecore.Services.Heartbeat.ExcludeConnection" value="some-connection-string-name-1|another-connection-string-name-2"/>
We have faced a similar fatal issue when using Redis Cache to store user sessions:
FATAL SINGLE MSG: Sitecore heartbeat:
Message: Database redis.cache is not available
So I would recommend to exclude your "sessions" connection string from checks too.