[Ruby] 処理の実行時間を知りたいとき
Ruby
公開日 : 2023/5/3
はじめに
Rubyで大変重い処理を書いてしまい、ボトルネックがどこなのか等調査したくなり、実行時間を吐かせるようにしたので、その時の備忘録。
環境
Ruby 3.1.0 Rails 7.0
方法
以下のように、処理開始の時刻を変数に入れ、時間を調べたい所でその時点の時刻との差を出力するようにした。
kuso_omoi_syori.rb
def kuso_omoi_syori
# 開始時間
start_time = Time.zone.now
# いろんな処理
# ...
puts "=============================================="
puts ""
puts ""
puts ""
print "\e[31m"
puts " 実行時間: #{Time.zone.now - start_time}秒 "
print "\e[0m"
puts ""
puts ""
puts ""
puts "=============================================="
# 処理の最終結果の式
# ...
end上記の処理を動かすと

のようにログが出力される。