codemonitor 0.3.0 → 0.3.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bf55eb8d37288cec3ce8e828f6705c552d78707084648062b303a75bc7d0a063
4
- data.tar.gz: 40a0b1d17eeb986534b812f2668a79eeee4ecf2fb21ec40fe1a672dce8b61a34
3
+ metadata.gz: e7aff9a4482c1d98c0f2fb183509ce2c4570f3a9fd2a7bc5285fd242f002138a
4
+ data.tar.gz: 458f94d6c2292633fbf06921f34606bb8c6f12390cb26d92ebcb9e4d7c29d9fe
5
5
  SHA512:
6
- metadata.gz: 7fd6aad0e254c9e0efebff094266fa4528bd640a1671a26c8523d86daf4944c72e8116f55bbb87d74bf5f194ada216624f28a3d0de10d962541f768e8c720344
7
- data.tar.gz: 38ae84cbcb7888349e1309d6f0008dd62f6c537818ba93197abbf40eed406222c6bad00e990c193f4d6dcc569038bb81011fe4570b8051ea09a98587d7c3a99a
6
+ metadata.gz: 23c3463de88a3926c3fbad214ba337fec330616f7f32e5c10218ffecef5ba0670af391c54b53c3888efb7806524e1f9df9ab8bc2dc536d07dd69862c30fd0f91
7
+ data.tar.gz: 968f1343c883be353a5ecc08dcb5bf878573661f6bfaf6d52aea823b6eedd7b2098e8dce7ff42146a3566edfb759e7156b2bb02f764e9cdcc832d493c6842ca0
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- codemonitor (0.2.0)
4
+ codemonitor (0.3.0)
5
5
  dogapi (~> 1.45)
6
6
 
7
7
  GEM
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Engines
4
+ module Debug
5
+ class Extractor
6
+ METRICS = %i[
7
+ debug_random
8
+ ].freeze
9
+
10
+ def call(provider)
11
+ return unless requirements?
12
+
13
+ metrics = METRICS.map do |metric|
14
+ [metric, send(metric) || 0]
15
+ end.to_h
16
+
17
+ provider.emit(metrics)
18
+ end
19
+
20
+ private
21
+
22
+ def requirements?
23
+ true
24
+ end
25
+
26
+ def debug_random
27
+ rand(0..100)
28
+ end
29
+ end
30
+ end
31
+ end
@@ -15,6 +15,10 @@ module Engines
15
15
  git_number_of_lines
16
16
  ].freeze
17
17
 
18
+ def initialize
19
+ @threshold = ENV.fetch('CODEMONITOR_GIT_FILES_THRESHOLD', '0').to_i
20
+ end
21
+
18
22
  def call(provider)
19
23
  return unless requirements?
20
24
 
@@ -30,6 +34,8 @@ module Engines
30
34
 
31
35
  private
32
36
 
37
+ attr_reader :threshold
38
+
33
39
  def requirements?
34
40
  File.exist?('.git')
35
41
  end
@@ -84,8 +90,10 @@ module Engines
84
90
  .map do |file|
85
91
  File.extname(file.strip)
86
92
  end.each_with_object(Hash.new(0)) do |type, total|
87
- total["git_file_extensions_#{type.gsub('.', '')}"] += 1
88
- end
93
+ total[type.gsub('.', '')] += 1
94
+ end.map do |key, value|
95
+ ["git_file_extensions_#{key}", value] if value >= threshold
96
+ end.compact.to_h
89
97
  end
90
98
  end
91
99
  end
data/exe/codemonitor CHANGED
@@ -5,6 +5,7 @@ require_relative '../providers/console'
5
5
  require_relative '../providers/datadog'
6
6
 
7
7
  require_relative '../engines/eslint/extractor'
8
+ require_relative '../engines/debug/extractor'
8
9
  require_relative '../engines/git/extractor'
9
10
  require_relative '../engines/npm/extractor'
10
11
  require_relative '../engines/packwerk/extractor'
@@ -19,6 +20,7 @@ PROVIDERS = {
19
20
 
20
21
  EXTRACTORS = {
21
22
  eslint: Engines::Eslint::Extractor,
23
+ debug: Engines::Debug::Extractor,
22
24
  git: Engines::Git::Extractor,
23
25
  npm: Engines::Npm::Extractor,
24
26
  packwerk: Engines::Packwerk::Extractor,
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CodeMonitor
4
- VERSION = '0.3.0'
4
+ VERSION = '0.3.1'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codemonitor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ferran Basora
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-06-29 00:00:00.000000000 Z
11
+ date: 2021-06-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dogapi
@@ -115,6 +115,7 @@ files:
115
115
  - bin/console
116
116
  - bin/setup
117
117
  - codemonitor.gemspec
118
+ - engines/debug/extractor.rb
118
119
  - engines/eslint/extractor.rb
119
120
  - engines/git/extractor.rb
120
121
  - engines/npm/extractor.rb