puoi fare un file download.php
che accetta come parametro get il nome del file da scaricare

ad ogni richiesta del file download:
1- controlli che esiste un parametro get
2- controlli che il parametro è esatto (esiste il file)
3- fai la query su db
4- invii una mail a te stesso
5- cambi l'header della response e ritorni il file pdf

poi ti crei una tabella fatta cosi

id, filename, ip, data