I mean I get it, DB trigger is easy to use.
But, isn't Audit Log supposed to be consumed by customers directly? Hence it's a domain entity. And DB table is implementation detail that may or may not corelate to domain entity?
It looks to me, using DB trigger for audit log is a terrible idea. So why should we use DB trigger to implement audit log? Or, if it's obviously wrong, then why would so many articles support the idea?
If you're designing the system from scratch, you might want to consider a journal and ledger design. It's an insert-only database design where all changes are added as new rows in a journal table and a current roll-up is kept in a ledger table. This design also has a nice side effect of giving you the ability to recover from application data errors.
Edit: audit is about proving that something did or didn't happen, so low level logging is usually appropriate, and required if you're doing federal stuff.
You could return an abstraction of the audit log and decouple consumers from your table schema?
Triggers give you a simple way to ensure the log tracks the changes. Another popular approach is change-data-capture which allows you to record logs in a different store.