Find current IOPS usage of EBS volume from my application on AWS EC2

Solution 1:

From within your application/instance, I'd attempt to trace the output of iostat during controlled application runs. Perhaps iostat -x 1 in a terminal window.

I also like the collectl utility for watching this output. nmon is a good tool for this as well.

Also read through this article... Even Stranger than Expected: a Systematic Look at EC2 I/O.

Solution 2:

You can check this in cloudwatch

Check for EBS Metrics and choose VolumeWriteOps (Metric Name)

take any sample from the graph

for e.g.

Data-point : 152398 at 2011-02-10T07:54+0000 (Any highest count from the graph)

so it means 152398 IOPS for 10 mins intervel 

calculate this for 1 min

152398 IOPS / 10 minutes = 15239.8 IOPS/minute

then calculate this for 60 seconds

15239.8 IOPS / 60 seconds = 253.996666667 IOPS/second

so 253 is your average IOPS / seconds for the volume