bizside 2.3.5 → 2.3.6

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: 62c3eab65480a846426f4015353ed1617dfd60ed6a87c66f484a71a04f5ff6b5
4
- data.tar.gz: a844984d53df0fd9f8dbd044f9d0378b9cb86c0cd51ede77b2aacdd75d3ec41c
3
+ metadata.gz: 39b9880ea371f55ab17b2c82c67394a2f740bc612c4c9b69594db539d2e9b16f
4
+ data.tar.gz: b32b29653cc05e0332ff1bd51636ef2a750c8ccfbd6db608d7bc8ee6390df424
5
5
  SHA512:
6
- metadata.gz: ac71e3cd39adb06862d2e8ca9d4d6bf3478989dcbc72c5477e24530a825e27fd39cd3c120bf19e6593026529da68e040c0742b4a4f9b03fd31707073ed829911
7
- data.tar.gz: 03236ce54e54d9aa71a71c6af0b63a340797045badd69c175f78e4c8d2fb5c38635b894e466c5a223b2c40a231c519477b420f8b4286b7129790f562a9f51a42
6
+ metadata.gz: 64f122cfd9ad9ff1571b961e92733ff850015f1e2211c47e503705e1823bdce4334eab643fc10205369fa6ac345ee72491a6377d143a2f3092ade1394aa4e270
7
+ data.tar.gz: 6940e79997639635c66738ee8d19c6015447f3e187daa5d5e059009ccc5c784634a768f619a2cb0dc18c368cd1caf1486dc7ba79734ab94ca8456170f3ad70e1
@@ -1,3 +1,3 @@
1
1
  module Bizside
2
- VERSION = '2.3.5'
2
+ VERSION = '2.3.6'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bizside
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.5
4
+ version: 2.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - bizside-developers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-01 00:00:00.000000000 Z
11
+ date: 2023-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -413,7 +413,6 @@ files:
413
413
  - lib/bizside/implicit_ftps.rb
414
414
  - lib/bizside/itamae_conf.rb
415
415
  - lib/bizside/job_utils.rb
416
- - lib/bizside/log_analyzer.rb
417
416
  - lib/bizside/mailer.rb
418
417
  - lib/bizside/query_builder.rb
419
418
  - lib/bizside/railtie.rb
@@ -1,122 +0,0 @@
1
- module Bizside
2
- class LogAnalyzer
3
- attr_reader :add_on_name
4
- attr_reader :error_contents
5
-
6
- def initialize(add_on_name, files)
7
- @add_on_name = add_on_name
8
- @files = files
9
- end
10
-
11
- def analyze(output_file_name)
12
- @success = system("request-log-analyzer --format rails3 --parse-strategy cautious --file #{output_file_name}.html --output HTML #{@files.join(' ')}")
13
- end
14
-
15
- def success?
16
- @success
17
- end
18
-
19
- def scrape_errors
20
- @error_content = String.new
21
- @error_contents = {}
22
-
23
- # TODO Okozeを解析できるようにする
24
- return if add_on_name == 'okoze'
25
-
26
- # TODO ログ内で重複したエラーメッセージを除外する
27
- return if ['amadai', 'webcam_api', 'seri', 'sushioke'].include?(add_on_name)
28
-
29
- @files.each do |file|
30
- content = File.read(file, encoding: 'utf-8')
31
- content = content.encode('UTF-16BE', 'UTF-8', :invalid => :replace, :undef => :replace, :replace => '?').encode('UTF-8')
32
- next unless content.include?('Completed 500') or content.include?('FATAL')
33
-
34
- # ログをプロセス単位に分割
35
- partition_contents = divide_into_pid(content)
36
- # プロセス単位に分割したログからエラーを抽出
37
- partition_content_errors = extract_error_log(partition_contents)
38
- # 抽出したエラーを出力用にまとめる
39
- partition_content_errors.each do |pid, pc|
40
- @error_contents[pid] = "#{file}のエラー抽出結果\n\n\n" if @error_contents[pid].nil? or @error_contents[pid].empty?
41
- @error_contents[pid] << pc
42
- end
43
-
44
- @error_contents
45
- end
46
- end
47
-
48
- def divide_into_pid(content)
49
- pid = nil
50
- ret = {}
51
- content.each_line do |c|
52
- s = c.scan(/#[0-9]+\]/)
53
- pid = s.first.scan(/[0-9]+/).first unless s.empty?
54
- ret[pid] = "" unless ret[pid]
55
- ret[pid] << c
56
- end
57
-
58
- ret
59
- end
60
-
61
- def extract_error_log(partition_contents)
62
- ret = {}
63
- partition_contents.each do |pid, pc|
64
- tmp = ""
65
- pc.each_line do |line|
66
- unless line.scan(/: Started /).empty?
67
- if !tmp.scan(/Completed 500/).empty? or !tmp.scan(/\] FATAL/).empty? or !tmp.scan(/\[FATAL\]/).empty?
68
- ret[pid] = "" if ret[pid].nil? or ret[pid].empty?
69
- ret[pid] << tmp
70
- end
71
- tmp.clear
72
- end
73
- tmp << exclude_error_log_line(line)
74
- end
75
-
76
- # Startedの前にログが終了した場合、その時点までにエラーが含まれていれば抽出に含める
77
- if !tmp.empty? and !tmp.scan(/Completed 500/).empty? or !tmp.scan(/\] FATAL/).empty? or !tmp.scan(/\[FATAL\]/).empty?
78
- ret[pid] = "" if ret[pid].nil? or ret[pid].empty?
79
- ret[pid] << tmp
80
- end
81
- tmp.clear
82
- end
83
-
84
- ret
85
- end
86
-
87
- def exclude_error_log_line(line)
88
- ret = nil
89
- ret = line.match("INFO -- : ジョブ.*登録します。")
90
-
91
- if ret.nil?
92
- line
93
- else
94
- ""
95
- end
96
- end
97
-
98
- # TODO 重複したエラーログを除外する
99
- def get_duplicate_check_line(line)
100
- ret = line.scan(/(INFO -- :.*|ERROR -- :.*|WARN -- :.*|FATAL -- :.*)/).first
101
- ret = ret.gsub(/\" for .*/, "\"") unless ret.nil or ret.empty?
102
-
103
- ret
104
- end
105
-
106
- # TODO 重複したエラーログを除外する
107
- def duplicate_error_log?(extract_error_logs, duplicate_check_lines)
108
- res = false
109
- extract_error_logs.each do |eer|
110
- tmp = false
111
- duplicate_check_lines.each do |dcl|
112
- tmp = eer.include?(dcl)
113
- break unless tmp
114
- end
115
- res = tmp
116
- break if res
117
- end
118
-
119
- res
120
- end
121
- end
122
- end