yabeda-rails 0.7.2 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/lint.yml +25 -0
- data/.github/workflows/test.yml +15 -9
- data/.rubocop.yml +2 -0
- data/CHANGELOG.md +12 -0
- data/Gemfile +19 -2
- data/README.md +1 -1
- data/lib/yabeda/rails/config.rb +13 -0
- data/lib/yabeda/rails/version.rb +1 -1
- data/lib/yabeda/rails.rb +11 -1
- data/yabeda-rails-logo.png +0 -0
- data/yabeda-rails.gemspec +3 -1
- metadata +41 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 107b2a512068172c19c08b18dc0f452d9ee1794c4894979b1a88c459a8dcf5c5
|
4
|
+
data.tar.gz: 686e32000199bc29bb8096d09aa336b4cf67d9cfe789e44b91653467caee5524
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f59dd373f43b40e47b03cecef02ad47ce8fdcf49661430fddf003007f60d69895a26e538d23bd829e664aaa27145789f2a934ed401d6c593ca314ff3271d65d2
|
7
|
+
data.tar.gz: 6de6d25b29ef13f07f9a1e008999577c18891ceaede127a99ac541235442ed72f3b74316e6f7b16950169fd5309e6d1fcc86cf2b4999106ff08a46349db27e0b
|
@@ -0,0 +1,25 @@
|
|
1
|
+
name: Lint
|
2
|
+
|
3
|
+
on:
|
4
|
+
pull_request:
|
5
|
+
push:
|
6
|
+
branches:
|
7
|
+
- '**'
|
8
|
+
tags-ignore:
|
9
|
+
- 'v*'
|
10
|
+
|
11
|
+
jobs:
|
12
|
+
rubocop:
|
13
|
+
# Skip running tests for local pull requests (use push event instead), run only for foreign ones
|
14
|
+
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.owner.login != github.event.pull_request.base.repo.owner.login
|
15
|
+
name: RuboCop
|
16
|
+
runs-on: ubuntu-latest
|
17
|
+
steps:
|
18
|
+
- uses: actions/checkout@v2
|
19
|
+
- uses: ruby/setup-ruby@v1
|
20
|
+
with:
|
21
|
+
ruby-version: "3.1"
|
22
|
+
bundler-cache: true
|
23
|
+
- name: Lint Ruby code with RuboCop
|
24
|
+
run: |
|
25
|
+
bundle exec rubocop
|
data/.github/workflows/test.yml
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
name:
|
1
|
+
name: Tests
|
2
2
|
|
3
3
|
on:
|
4
4
|
pull_request:
|
@@ -10,21 +10,29 @@ on:
|
|
10
10
|
|
11
11
|
jobs:
|
12
12
|
test:
|
13
|
-
name:
|
14
|
-
|
13
|
+
name: 'Rails ${{ matrix.rails }} × Ruby ${{ matrix.ruby }}'
|
14
|
+
# Skip running tests for local pull requests (use push event instead), run only for foreign ones
|
15
|
+
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.owner.login != github.event.pull_request.base.repo.owner.login
|
15
16
|
runs-on: ubuntu-latest
|
16
17
|
strategy:
|
17
18
|
fail-fast: false
|
18
19
|
matrix:
|
19
20
|
include:
|
20
|
-
- ruby:
|
21
|
-
|
22
|
-
- ruby:
|
23
|
-
|
21
|
+
- ruby: "3.1"
|
22
|
+
rails: "HEAD"
|
23
|
+
- ruby: "3.0"
|
24
|
+
rails: "7.0"
|
25
|
+
- ruby: "2.7"
|
26
|
+
rails: "6.1"
|
27
|
+
- ruby: "2.6"
|
28
|
+
rails: "6.0"
|
29
|
+
- ruby: "2.5"
|
30
|
+
rails: "5.2"
|
24
31
|
container:
|
25
32
|
image: ruby:${{ matrix.ruby }}
|
26
33
|
env:
|
27
34
|
CI: true
|
35
|
+
RAILS_VERSION: ${{ matrix.rails }}
|
28
36
|
steps:
|
29
37
|
- uses: actions/checkout@v2
|
30
38
|
- uses: actions/cache@v2
|
@@ -41,7 +49,5 @@ jobs:
|
|
41
49
|
bundle config path vendor/bundle
|
42
50
|
bundle install
|
43
51
|
bundle update
|
44
|
-
- name: Run Rubocop
|
45
|
-
run: bundle exec rubocop
|
46
52
|
- name: Run RSpec
|
47
53
|
run: bundle exec rspec
|
data/.rubocop.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file.
|
|
5
5
|
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
|
6
6
|
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
7
7
|
|
8
|
+
## 0.8.0 - 2022-05-30
|
9
|
+
|
10
|
+
### Added
|
11
|
+
|
12
|
+
- Add ability to expose custom Apdex target value for later use in graphs/alerts. [@Envek][] in [#18](https://github.com/yabeda-rb/yabeda-rails/pull/18)
|
13
|
+
|
14
|
+
### Changed
|
15
|
+
|
16
|
+
- Reduce number of dependencies by depending only on railties instead of the whole Ruby on Rails. [@lautis][] in [#23](https://github.com/yabeda-rb/yabeda-rails/pull/23).
|
17
|
+
|
8
18
|
## 0.7.2 - 2021-03-15
|
9
19
|
|
10
20
|
### Fixed
|
@@ -65,4 +75,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
65
75
|
|
66
76
|
Basic metrics for request durations by controller, action, status, format, and method. ActiveRecord and ActionView timings.
|
67
77
|
|
78
|
+
[@Envek]: https://github.com/Envek "Andrey Novikov"
|
68
79
|
[@liaden]: https://github.com/liaden "Joel Johnson"
|
80
|
+
[@lautis]: https://github.com/lautis "Ville Lautanala"
|
data/Gemfile
CHANGED
@@ -7,9 +7,26 @@ git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
|
|
7
7
|
# Specify your gem's dependencies in yabeda-rails.gemspec
|
8
8
|
gemspec
|
9
9
|
|
10
|
+
rails_version = ENV.fetch("RAILS_VERSION", "~> 7.0")
|
11
|
+
case rails_version
|
12
|
+
when "HEAD"
|
13
|
+
git "https://github.com/rails/rails.git" do
|
14
|
+
gem "rails"
|
15
|
+
gem "activesupport"
|
16
|
+
gem "railties"
|
17
|
+
end
|
18
|
+
else
|
19
|
+
rails_version = "~> #{rails_version}.0" if rails_version.match?(/^\d+\.\d+$/)
|
20
|
+
gem "rails", rails_version
|
21
|
+
gem "activesupport", rails_version
|
22
|
+
gem "railties", rails_version
|
23
|
+
end
|
24
|
+
|
10
25
|
group :development, :test do
|
11
|
-
gem "
|
12
|
-
gem "
|
26
|
+
gem "yabeda", "~> 0.11" # Test helpers
|
27
|
+
gem "rspec-rails"
|
28
|
+
|
29
|
+
gem "debug"
|
13
30
|
|
14
31
|
gem "rubocop", "~> 1.8"
|
15
32
|
gem "rubocop-rspec"
|
data/README.md
CHANGED
data/lib/yabeda/rails/version.rb
CHANGED
data/lib/yabeda/rails.rb
CHANGED
@@ -1,8 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "yabeda"
|
4
|
-
require "
|
4
|
+
require "active_support"
|
5
|
+
require "rails/railtie"
|
5
6
|
require "yabeda/rails/railtie"
|
7
|
+
require "yabeda/rails/config"
|
6
8
|
|
7
9
|
module Yabeda
|
8
10
|
# Minimal set of Rails-specific metrics for using with Yabeda
|
@@ -25,6 +27,8 @@ module Yabeda
|
|
25
27
|
# rubocop: disable Metrics/MethodLength, Metrics/BlockLength, Metrics/AbcSize
|
26
28
|
def install!
|
27
29
|
Yabeda.configure do
|
30
|
+
config = Config.new
|
31
|
+
|
28
32
|
group :rails
|
29
33
|
|
30
34
|
counter :requests_total, comment: "A counter of the total number of HTTP requests rails processed.",
|
@@ -43,6 +47,12 @@ module Yabeda
|
|
43
47
|
comment: "A histogram of the activerecord execution time.",
|
44
48
|
tags: %i[controller action status format method]
|
45
49
|
|
50
|
+
if config.apdex_target
|
51
|
+
gauge :apdex_target, unit: :seconds,
|
52
|
+
comment: "Tolerable time for Apdex (T value: maximum duration of satisfactory request)"
|
53
|
+
collect { rails_apdex_target.set({}, config.apdex_target) }
|
54
|
+
end
|
55
|
+
|
46
56
|
ActiveSupport::Notifications.subscribe "process_action.action_controller" do |*args|
|
47
57
|
event = ActiveSupport::Notifications::Event.new(*args)
|
48
58
|
labels = {
|
Binary file
|
data/yabeda-rails.gemspec
CHANGED
@@ -24,7 +24,9 @@ Gem::Specification.new do |spec|
|
|
24
24
|
|
25
25
|
spec.required_ruby_version = ">= 2.4"
|
26
26
|
|
27
|
-
spec.add_dependency "
|
27
|
+
spec.add_dependency "activesupport"
|
28
|
+
spec.add_dependency "anyway_config", ">= 1.3", "< 3"
|
29
|
+
spec.add_dependency "railties"
|
28
30
|
spec.add_dependency "yabeda", "~> 0.8"
|
29
31
|
|
30
32
|
spec.add_development_dependency "bundler", "~> 2.0"
|
metadata
CHANGED
@@ -1,17 +1,51 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yabeda-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrey Novikov
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-05-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: activesupport
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: anyway_config
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.3'
|
34
|
+
- - "<"
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '3'
|
37
|
+
type: :runtime
|
38
|
+
prerelease: false
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '1.3'
|
44
|
+
- - "<"
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '3'
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: railties
|
15
49
|
requirement: !ruby/object:Gem::Requirement
|
16
50
|
requirements:
|
17
51
|
- - ">="
|
@@ -88,6 +122,7 @@ extensions: []
|
|
88
122
|
extra_rdoc_files: []
|
89
123
|
files:
|
90
124
|
- ".github/workflows/build-release.yml"
|
125
|
+
- ".github/workflows/lint.yml"
|
91
126
|
- ".github/workflows/test.yml"
|
92
127
|
- ".gitignore"
|
93
128
|
- ".rspec"
|
@@ -100,8 +135,10 @@ files:
|
|
100
135
|
- bin/console
|
101
136
|
- bin/setup
|
102
137
|
- lib/yabeda/rails.rb
|
138
|
+
- lib/yabeda/rails/config.rb
|
103
139
|
- lib/yabeda/rails/railtie.rb
|
104
140
|
- lib/yabeda/rails/version.rb
|
141
|
+
- yabeda-rails-logo.png
|
105
142
|
- yabeda-rails.gemspec
|
106
143
|
homepage: https://github.com/yabeda-rb/yabeda-rails
|
107
144
|
licenses:
|
@@ -122,7 +159,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
122
159
|
- !ruby/object:Gem::Version
|
123
160
|
version: '0'
|
124
161
|
requirements: []
|
125
|
-
rubygems_version: 3.1.
|
162
|
+
rubygems_version: 3.1.6
|
126
163
|
signing_key:
|
127
164
|
specification_version: 4
|
128
165
|
summary: Extensible metrics for monitoring Ruby on Rails application
|