Is there any way to get real time bandwidth usage of a particular pre-signed URL?
I did some Google searches and it seemed not possible?
We need this because we want to release some pretty large data sets (over 300GB) to our members and it wouldn't be wise to not audit the bandwidth usage against potential download abuses.
For Amazon S3 access logging, enable S3 Server Access Logging. Make sure that you store the log files in different bucket. The output format looks somewhat like Apache log files so there are lots of tools that process the data. A simple Python script can do the job too.
After deciding how to process the log files, you then need to develop something that processes the access data and generates alerts / alarms. You may want to take a look at presigned URLs, signed cookies, etc. to better control access. With 300 GB datasets and apx $0.09 per GB data transfer, it won't take long for abuse to rack up some bills.
Here is a document link with all the details:
Amazon S3 Server Access Logging