How to get execution time in rails console?
timing = Benchmark.measure { Post.all }
The various attributes of the object returned (Benchmark::Tms) are provided here.
With benchmark-ips gem:
2.3.0 :001 > require 'benchmark/ips'=> true 2.3.0 :002 > Benchmark.ips do |x|2.3.0 :003 > x.report("add: ") { 1+2 }2.3.0 :004?> x.report("div: ") { 1/2 }2.3.0 :005?> x.report("iis: ") { 1/2.0 }2.3.0 :006?> endWarming up -------------------------------------- add: 280.299k i/100ms div: 278.189k i/100ms iis: 266.526k i/100msCalculating ------------------------------------- add: 11.381M (± 4.5%) i/s - 56.901M in 5.010669s div: 9.879M (± 4.6%) i/s - 49.518M in 5.024084s iis: 9.289M (± 4.2%) i/s - 46.376M in 5.001639s
Here is my version of how to measure performance automatically in rails console using gem: https://github.com/igorkasyanchuk/execution_time
It's showing similar information which you already see during requests.
Sample:
[METRICS] Completed in 908.3ms | Allocations: 2894 | ActiveRecord: 0.9ms (queries: 13)