Socket
Book a DemoInstallSign in
Socket

benchmeth

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

benchmeth

0.2.0
bundlerRubygems
Version published
Maintainers
1
Created
Source

Benchmeth

The super easy way to benchmark methods in a live application

class Person
  def compute
    # boom
  end
  benchmark :compute
end

Works with class methods, too

class Person
  def self.compute
    # yolo
  end
  class << self
    benchmark :compute
  end
end

Installation

Add this line to your application’s Gemfile:

gem "benchmeth"

How to Use

By default, benchmark data is written to stdout in the following format:

compute : 1000 ms

but you can easily do whatever you want with it.

Benchmeth.on_benchmark do |method_name, seconds|
  puts "#{method_name} took #{seconds} seconds!"
end

To call a method without benchmarking, append _without_benchmark to the name.

Active Support Notifications

You can switch to Active Support notifications with:

Benchmeth.use_notifications = true

And subscribe with:

ActiveSupport::Notifications.monotonic_subscribe "benchmark.benchmeth" do |*args|
  event = ActiveSupport::Notifications::Event.new(*args)
  puts "%s : %d ms" % [event.payload[:name], event.duration]
end

Contributing

Everyone is encouraged to help improve this project. Here are a few ways you can help:

  • Report bugs
  • Fix bugs and submit pull requests
  • Write, clarify, or fix documentation
  • Suggest or add new features

To get started with development:

git clone https://github.com/ankane/benchmeth.git
cd benchmeth
bundle install
bundle exec rake test

FAQs

Package last updated on 06 Sep 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.