Audit Database Log On/Off SQL Server 2012 introduced a few new audit action groups.  Two that I'm interested in using are to audit log-ons/offs at the database level:

SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP
DATABASE_LOGOUT_GROUP


The problem is, I also have SQL Server 2008 R2 instances that I'd like to deploy this on.  Are there alternatives to achieve this using native SQL Server Audit?  Or do I have to do this by other means (eg. SQL Profiler Trace, Logon/logoff triggers)?
SQL Server 2012 introduced database-level logon/logoff audit tracking as part of the &quot;contained databases&quot; feature, which allows SQL Server logins to be defined at the database level.  In prior versions of SQL Server there is no such concept of login or logout at the database level.
From the Microsoft Docs:

SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP
Indicates that a principal successfully logged in to a contained database. Equivalent to the Audit Successful Database Authentication Event Class.
DATABASE_LOGOUT_GROUP
This event is raised when a contained database user logs out of a database. Equivalent to the Audit Database Logout Event Class.

Be aware that unless you are using contained databases, and connections are being made to those databases via contained logins, those audits will not reflect login/logout events.
SQL Server Audit on 2008 R2 includes the ability to audit successful and failed logins at the server level via:
SUCCESSFUL_LOGIN_GROUP
FAILED_LOGIN_GROUP

Alternatively, you can configure &quot;Login Auditing&quot; on the &quot;Security&quot; tab of the &quot;Server Properties&quot; dialog.
In SSMS, right-click the server name in the &quot;Object Explorer&quot; panel.  Then choose &quot;Properties&quot; from the list.  Select the &quot;Security&quot; page, then specify &quot;Both failed and successful logins&quot; from the &quot;Login auditing&quot; section.

Login audit entries are written to the SQL Server Error Log; you can view them with this command:
EXEC sys.xp_readerrorlog 0, 1, 'Login';