Skip to content

Built-in metrics for monitoring Schked recurring jobs out of the box.

License

Notifications You must be signed in to change notification settings

yabeda-rb/yabeda-schked

Repository files navigation

Yabeda::Schked

Gem Version Build Status

Built-in metrics for monitoring Schked recurring jobs out of the box! Part of the yabeda suite.

Sponsored by Evil Martians

Installation

gem "yabeda-schked"

# Then add monitoring system adapter, e.g.:
# gem "yabeda-prometheus"

And then execute:

$ bundle

And that is it! Schked metrics are being collected!

Metrics

  • Total number of executed jobs: schked_jobs_executed_total - (the jobs' names and whether their execution was successful)
  • Time of job run: schked_job_execution_runtime (seconds per job execution, segmented by the jobs' names, and whether their execution was successful)

❗ Notice: Schked jobs without a name specified (with as or name attribute) will be marked with the name 'none', so it's highly recommended to specify unique names for all jobs.

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install.

Releasing

  1. Bump version number in lib/yabeda/schked/version.rb

    In case of pre-releases keep in mind rubygems/rubygems#3086 and check version with command like Gem::Version.new(Yabeda::Schked::VERSION).to_s

  2. Fill CHANGELOG.md with missing changes, add header with version and date.

  3. Make a commit:

    git add lib/yabeda/schked/version.rb CHANGELOG.md
    version=$(ruby -r ./lib/yabeda/schked/version.rb -e "puts Gem::Version.new(Yabeda::Schked::VERSION)")
    git commit --message="${version}: " --edit
  4. Create annotated tag:

    git tag v${version} --annotate --message="${version}: " --edit --sign
  5. Fill version name into subject line and (optionally) some description (list of changes will be taken from CHANGELOG.md and appended automatically)

  6. Push it:

    git push --follow-tags
  7. GitHub Actions will create a new release, build and push gem into rubygems.org! You're done!

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/yabeda-rb/yabeda-schked.

License

The gem is available as open source under the terms of the MIT License.