The best way is to get a apache log analyzer to do this work for you. The reason for this is that this kind of monitoring takes a lot (way too much) resources to be done from eZ publish.
Yes. The best way is to get a apache log analyzer (web based apps - Webalizer or sys based apps - Quest Software Funnel Web Analyzer)
Frederik eZ system use simple download statistic in eZ publish system. You can find it example on Comunity section. One example on http://www.ez.no/community/contribs/examples - Download module extension is downloaded 159 times till now (27.01.2005 - 01.56).
The version on eZ.no uses {$node.object.data_map.file.content.download_count} This counter is incremented each time content/download is called and is a very simple form of statistics that are built in.