greenhat 0.7.3 → 0.7.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -0
- data/lib/greenhat/reports/reports/errors.rb +2 -1
- data/lib/greenhat/reports/reports/full.rb +5 -0
- data/lib/greenhat/reports/shell_helper.rb +12 -1
- data/lib/greenhat/shell/field_helper.rb +1 -1
- data/lib/greenhat/shell/log.rb +1 -1
- data/lib/greenhat/shell/query.rb +1 -1
- data/lib/greenhat/shell/shell_helper.rb +19 -38
- data/lib/greenhat/thing/file_types.rb +6 -0
- data/lib/greenhat/thing/formatters/json.rb +3 -0
- data/lib/greenhat/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a519d68faaec2994665e8c6e442923578d6a0f165a2213f3a5ef0e7e45b65903
|
4
|
+
data.tar.gz: 1a9f905cf1d9f8738a1658f932b5d14d8ef9964a0bb2360a5438460330e868d1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6e9f31443fdb9917069831fc89e39b97f198c3b298bb06b2331dc0788d2f7ca31e4ce65b1f69e0a89e82d6788e810fe0d344a5cb2c74b30aa53d3b7577442f96
|
7
|
+
data.tar.gz: 3534f35919122f6b01aaa1570429faf852dc4c91c3e170a55e693cc84207fa391cfb7ad2c85af4cca46a0d83adcbbfaa24ecf1db52bcfa76d08bf38d8c42ad83
|
data/README.md
CHANGED
@@ -27,7 +27,8 @@ entries = [
|
|
27
27
|
{ header: 'Gitaly', base: 'gitaly/current --level=error --truncate=99', stats: 'error' },
|
28
28
|
{ header: 'Praefect', base: 'praefect/current --level=error --truncate=99', stats: 'error' },
|
29
29
|
{ header: 'Pages', base: 'gitlab-pages/current --level=error', stats: 'error' },
|
30
|
-
{ header: 'Geo', base: 'gitlab-rails/geo.log --severity=error', stats: 'message' }
|
30
|
+
{ header: 'Geo', base: 'gitlab-rails/geo.log --severity=error', stats: 'message' },
|
31
|
+
{ header: 'Elasticsearch', base: 'gitlab-rails/elasticsearch.log --severity=error', stats: 'message' }
|
31
32
|
]
|
32
33
|
|
33
34
|
# Filter Logic
|
@@ -164,3 +164,8 @@ query_if_exists 'gitlab-rails/geo.log --severity=error' do |data|
|
|
164
164
|
color = data.count.zero? ? :green : :red
|
165
165
|
indent("#{ljust('Geo:', 14, :magenta)} #{data.count.to_s.pastel(color)}", 4)
|
166
166
|
end
|
167
|
+
|
168
|
+
query_if_exists 'gitlab-rails/elasticsearch.log --severity=error' do |data|
|
169
|
+
color = data.count.zero? ? :green : :red
|
170
|
+
indent("#{ljust('Elasticsearch:', 14, :magenta)} #{data.count.to_s.pastel(color)}", 4)
|
171
|
+
end
|
@@ -5,7 +5,18 @@ module GreenHat
|
|
5
5
|
# Make Running more consistent
|
6
6
|
def self.run(file:, args:, flags:, raw_args:)
|
7
7
|
report = GreenHat::Reports::Builder.new(file:, args:, flags:, raw_args:)
|
8
|
-
|
8
|
+
|
9
|
+
# Fuzzy Match Archive Names
|
10
|
+
archives = Archive.all
|
11
|
+
if flags[:archive] && !flags[:archive].empty?
|
12
|
+
archives.select! do |a|
|
13
|
+
flags[:archive].any? do |x|
|
14
|
+
a.name.include? x.to_s
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
output = archives.map do |archive|
|
9
20
|
runner = GreenHat::Reports::Runner.new(
|
10
21
|
archive:,
|
11
22
|
store: report.store.clone,
|
data/lib/greenhat/shell/log.rb
CHANGED
data/lib/greenhat/shell/query.rb
CHANGED
@@ -191,7 +191,7 @@ module GreenHat
|
|
191
191
|
results = filter_except(results, flags[:except]) if flags.key?(:except)
|
192
192
|
|
193
193
|
# Remove Blank from either slice or except
|
194
|
-
results.reject!(&:
|
194
|
+
results.reject!(&:blank?)
|
195
195
|
|
196
196
|
# Sort / Reverse by default
|
197
197
|
if flags.key?(:sort)
|
@@ -244,50 +244,31 @@ module GreenHat
|
|
244
244
|
[output]
|
245
245
|
end
|
246
246
|
|
247
|
-
#
|
248
|
-
|
249
|
-
|
250
|
-
# results.flat_map do |k, values|
|
251
|
-
# [k, total_count_array(values, flags)]
|
252
|
-
# end
|
253
|
-
# end
|
247
|
+
# Table Printer Helper
|
248
|
+
def self.fields_print(files)
|
249
|
+
fields = ShellHelper.find_things(files).map(&:fields).flatten.uniq
|
254
250
|
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
# return results.count if flags[:total] == 'simple'
|
251
|
+
# truncate = (TTY::Screen.width - columns) / columns
|
252
|
+
# fields.map! { |f| f[0..truncate] }
|
253
|
+
puts ShellHelper.field_table(fields)
|
259
254
|
|
260
|
-
|
261
|
-
|
262
|
-
# output[:duration] = Query.calculate_duration(results)
|
255
|
+
# ShellHelper.fields_print(files)
|
256
|
+
end
|
263
257
|
|
264
|
-
#
|
265
|
-
|
266
|
-
|
267
|
-
# output[:start] = list.first
|
268
|
-
# output[:end] = list.last
|
269
|
-
# end
|
258
|
+
# 5 Columns cause issues with resizing
|
259
|
+
def self.field_table(list, columns: 4)
|
260
|
+
return nil if list.empty?
|
270
261
|
|
271
|
-
|
272
|
-
|
262
|
+
# Split list into groups based on columns
|
263
|
+
groups = list.each_slice((list.size / columns.to_f).ceil).to_a
|
273
264
|
|
274
|
-
|
275
|
-
|
265
|
+
# Max Width for Table
|
266
|
+
truncate = (TTY::Screen.width - groups.count) / groups.count
|
276
267
|
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
puts k
|
281
|
-
puts field_table(v.map(&:keys).flatten.uniq.sort)
|
282
|
-
puts
|
268
|
+
# Process Truncation
|
269
|
+
groups.each do |group|
|
270
|
+
group.map! { |f| f[0..truncate]&.to_sym }
|
283
271
|
end
|
284
|
-
end
|
285
|
-
|
286
|
-
def self.field_table(list, columns = 4)
|
287
|
-
return nil if list.empty?
|
288
|
-
|
289
|
-
# Keep Alphabetical Sort
|
290
|
-
groups = list.each_slice((list.size / columns.to_f).round).to_a
|
291
272
|
|
292
273
|
table = TTY::Table.new do |t|
|
293
274
|
loop do
|
@@ -297,7 +278,7 @@ module GreenHat
|
|
297
278
|
end
|
298
279
|
end
|
299
280
|
|
300
|
-
table.render(:unicode, padding: [0, 1, 0, 1])
|
281
|
+
table.render(:unicode, padding: [0, 1, 0, 1], resize: false)
|
301
282
|
end
|
302
283
|
|
303
284
|
# Unified Files Interface
|
data/lib/greenhat/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: greenhat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Davin Walker
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-03-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: actionview
|