Como você comentou que deseja fazer o log das operações do banco de dados, e na sua resposta você citou o exemplo de um banco de dados relacional, então uma solução seria utilizar uma trigger (gatilho).
Por exemplo, no SQL Server existem gatilhos que podem ser disparados no momento da gravação. Desta forma, a lógica do log fica no banco, não precisaria programar nada na sua aplicação.
Aqui tem a explicação de como isso funciona no SQL Server ou MySQL
https://www.devmedia.com.br/triggers-no-sql-server-teoria-e-pratica-aplicada-em-uma-situacao-real/28194
https://www.devmedia.com.br/mysql-triggers/8088
Caso o seu banco não seja relacional, como é o caso do Mongo, eu não sei te dizer se ele possui triggers. Caso não tenha, uma solução seria criar uma collection somente para logs (neste caso, teria que programar na aplicação).
A meu ver, se o banco for relacional, o esforço seria menor.