Detect when a user clicks file download link
Module Track da files (despite its goofy name) tracks both public and private files. Here is a quote about it (from the module's project page):

... enables the possibility to track how much visitors are viewing files on site.
Every link to a file can be configured to be tracked. Then, a record is registered each time a visitor access the file from this specific link.