log_sense 1.9.0 → 2.0.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.
@@ -1,3 +1,3 @@
1
1
  module LogSense
2
- VERSION = "1.9.0"
2
+ VERSION = "2.0.0"
3
3
  end
data/log_sense.gemspec CHANGED
@@ -6,8 +6,8 @@ Gem::Specification.new do |spec|
6
6
  spec.authors = ["Adolfo Villafiorita"]
7
7
  spec.email = ["adolfo@shair.tech"]
8
8
 
9
- spec.summary = %q{Generate analytics for Apache and Rails log file.}
10
- spec.description = %q{Generate analytics in HTML, txt, and SQLite format for Apache and Rails log files.}
9
+ spec.summary = %q{Generate analytics for Rails and Apache/Nginx log file.}
10
+ spec.description = %q{Generate analytics in HTML, txt, and SQLite format for Rails and Apache/Nginx log files.}
11
11
  spec.homepage = "https://github.com/shair-tech/log_sense/"
12
12
  spec.license = "MIT"
13
13
  spec.required_ruby_version = Gem::Requirement.new(">= 2.6.9")
@@ -27,12 +27,12 @@ Gem::Specification.new do |spec|
27
27
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
28
28
  spec.require_paths = ["lib"]
29
29
 
30
- spec.add_dependency "browser"
31
- spec.add_dependency "ipaddr"
32
- spec.add_dependency "iso_country_codes"
33
- spec.add_dependency "sqlite3"
34
- spec.add_dependency "terminal-table"
30
+ spec.add_dependency "browser", "~> 5.3.0"
31
+ spec.add_dependency "ipaddr", "~> 1.2.0"
32
+ spec.add_dependency "iso_country_codes", "~> 0.7.0"
33
+ spec.add_dependency "sqlite3", "~> 2.0.0"
34
+ spec.add_dependency "terminal-table", "~> 3.0.0"
35
35
 
36
- spec.add_development_dependency "debug"
37
- spec.add_development_dependency "minitest"
36
+ spec.add_development_dependency "debug", "~> 1.9.0"
37
+ spec.add_development_dependency "minitest", "~> 5.24.0"
38
38
  end
Binary file
data/todo.org ADDED
@@ -0,0 +1,309 @@
1
+ #+TITLE: Todo
2
+
3
+ * Todo (2024-08-01)
4
+
5
+ ** T Move geolocation to aggregator, so that we can perform queries more efficiently :refactoring:
6
+ ** T Filter on dates :feature:
7
+ ** T Visits/Hits :feature:
8
+ - Visits and hits now includes also requests for other resources and 404.
9
+ We should probably limit to the visits to actual pages, to remove noise
10
+ and errors.
11
+ ** T error on data
12
+ - The data reported by echarts on the number of hits of a controller
13
+ differs from the data shown in the table?
14
+ ** T Sidebar foreground color in new apache report
15
+ ** T Dark style
16
+ ** T Remove dependency from Zurb Foundation (native css grid instead)
17
+ ** T refactor report specifications in their own class :refactoring:
18
+ ** T Add lines not parsed to the report :feature:
19
+ ** T Using an empty log as input raises an error :feature:
20
+ kriosprime:sample_logs $ log_sense -f apache -i empty_log.log -t html
21
+ (erb):3:in `block in render': undefined method `strftime' for nil:NilClass (NoMethodError)
22
+ from /opt/rubies/ruby-2.6.9/lib/ruby/2.6.0/erb.rb:901:in `eval'
23
+ from /opt/rubies/ruby-2.6.9/lib/ruby/2.6.0/erb.rb:901:in `result'
24
+ from /home/adolfo/.gem/ruby/2.6.9/gems/log_sense-1.3.4/lib/log_sense/emitter.rb:40:in `render'
25
+ from (erb):210:in `emit'
26
+ from /opt/rubies/ruby-2.6.9/lib/ruby/2.6.0/erb.rb:901:in `eval'
27
+ from /opt/rubies/ruby-2.6.9/lib/ruby/2.6.0/erb.rb:901:in `result'
28
+ from /home/adolfo/.gem/ruby/2.6.9/gems/log_sense-1.3.4/lib/log_sense/emitter.rb:24:in `emit'
29
+ from /home/adolfo/.gem/ruby/2.6.9/gems/log_sense-1.3.4/exe/log_sense:66:in `<top (required)>'
30
+ from /home/adolfo/.gem/ruby/2.6.9/bin/log_sense:23:in `load'
31
+ from /home/adolfo/.gem/ruby/2.6.9/bin/log_sense:23:in `<main>'
32
+ ** T Choosing the wrong output format raises an error :feature:
33
+ kriosprime:sample_logs $ log_sense -t apache -i empty_log.log -o html
34
+ /home/adolfo/.gem/ruby/2.6.9/gems/log_sense-1.3.4/lib/log_sense/emitter.rb:22:in `read': No such file or directory @ rb_sysopen - /home/adolfo/.gem/ruby/2.6.9/gems/log_sense-1.3.4/lib/log_sense/templates/apache.apache.erb (Errno::ENOENT)
35
+ from /home/adolfo/.gem/ruby/2.6.9/gems/log_sense-1.3.4/lib/log_sense/emitter.rb:22:in `emit'
36
+ from /home/adolfo/.gem/ruby/2.6.9/gems/log_sense-1.3.4/exe/log_sense:66:in `<top (required)>'
37
+ from /home/adolfo/.gem/ruby/2.6.9/bin/log_sense:23:in `load'
38
+ from /home/adolfo/.gem/ruby/2.6.9/bin/log_sense:23:in `<main>'
39
+
40
+ ** T Architecture :refactoring:
41
+ The architecture and the structure of the code is far from being nice,
42
+ for historical reason and for a bunch of small differences existing
43
+ between the input and the outputs to be generated. This usually ends
44
+ up with modifications to the code that have to be replicated in
45
+ different parts of the code and in interferences.
46
+
47
+ Among the points I would like to address:
48
+
49
+ - [ ] The execution pipeline in the main script has a few exceptions to
50
+ manage SQLite reading/dumping and ufw report. A linear structure
51
+ would be a lot nicer.
52
+
53
+ - [ ] Two different classes are defined for steps 1, 2, and 4, to manage,
54
+ respectively, Apache and Rails logs. These classes inherit from a common
55
+ ancestor (e.g. ApacheParser and RailsParser both inherit from Parser), but
56
+ there is still too little code shared. A nicer approach would be that of
57
+ identifying a common DB structure and unify the pipeline up to (or
58
+ including) the generation of reports. There are a bunch of small different
59
+ things to highlight in reports, which still make this difficult. For
60
+ instance, the country report for Apache reports size of TX data, which is
61
+ not available for Rail reports.
62
+
63
+ - [ ] Geolocation could become a lot more efficient if performed in
64
+ SQLite, rather than in Ruby
65
+
66
+ - [ ] The distinction between Aggregation, Shaping, and Emission is a too
67
+ fine-grained and it would be nice to be able to cleanly remove one
68
+ of the steps.
69
+
70
+
71
+ * Archive :archive:
72
+
73
+ ** D Revisions to command line syntax
74
+ :PERTIES:
75
+ :HIVE_TIME: 2024-08-01 Thu 08:18
76
+ :HIVE_FILE: ~/Sources/ruby/log_sense/todo.org
77
+ :HIVE_OLPATH: Check
78
+ :HIVE_CATEGORY: todo
79
+ :HIVE_TODO: DONE
80
+ ::
81
+ :BOOK:
82
+ -ate "DONE" from "TODO" [2022-03-07 Mon 21:24]
83
+ ::
84
+ -low multiple files in input
85
+ -low input from stdin
86
+
87
+ ** D Invalid IP
88
+ :PERTIES:
89
+ :HIVE_TIME: 2024-08-01 Thu 08:18
90
+ :HIVE_FILE: ~/Sources/ruby/log_sense/todo.org
91
+ :HIVE_OLPATH: Check
92
+ :HIVE_CATEGORY: todo
93
+ :HIVE_TODO: DONE
94
+ ::
95
+ :BOOK:
96
+ -ate "DONE" from "TODO" [2022-03-08 Tue 12:50]
97
+ ::
98
+ Iking log_sense on bringfood.org...done!
99
+ Iking log_sense on ewaste.education...done!
100
+ Iking log_sense on gasapp.fbk.eu...done!
101
+ Iking log_sense on replay-eit...done!
102
+ Iking log_sense on shair.tech...done!
103
+ Iking log_sense on w3c.it...done!
104
+ Iking log_sense on bringfood.org...Traceback (most recent call last):
105
+ 12: from /home/octopus/.gem/ruby/2.7.5/bin/log_sense:23:in `<main>'
106
+ 11: from /home/octopus/.gem/ruby/2.7.5/bin/log_sense:23:in `load'
107
+ 10: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/exe/log_sense:50:in `<top (required)>'
108
+ 9: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:53:in `geolocate'
109
+ 8: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:53:in `each'
110
+ 7: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:54:in `block in geolocate'
111
+ 6: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:39:in `locate_ip'
112
+ 5: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:39:in `new'
113
+ 4: from /opt/rubies/ruby-2.7.5/lib/ruby/2.7.0/ipaddr.rb:580:in `initialize'
114
+ 3: from /opt/rubies/ruby-2.7.5/lib/ruby/2.7.0/ipaddr.rb:620:in `in_addr'
115
+ 2: from /opt/rubies/ruby-2.7.5/lib/ruby/2.7.0/ipaddr.rb:620:in `inject'
116
+ 1: from /opt/rubies/ruby-2.7.5/lib/ruby/2.7.0/ipaddr.rb:620:in `each'
117
+ /optbies/ruby-2.7.5/lib/ruby/2.7.0/ipaddr.rb:621:in `block in in_addr': invalid address (IPAddr::InvalidAddressError)
118
+ 9: from /home/octopus/.gem/ruby/2.7.5/bin/log_sense:23:in `<main>'
119
+ 8: from /home/octopus/.gem/ruby/2.7.5/bin/log_sense:23:in `load'
120
+ 7: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/exe/log_sense:50:in `<top (required)>'
121
+ 6: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:53:in `geolocate'
122
+ 5: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:53:in `each'
123
+ 4: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:54:in `block in geolocate'
124
+ 3: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:39:in `locate_ip'
125
+ 2: from /home/octopus/.gem/ruby/2.7.5/gems/log_sense-1.4.0/lib/log_sense/ip_locator.rb:39:in `new'
126
+ 1: from /opt/rubies/ruby-2.7.5/lib/ruby/2.7.0/ipaddr.rb:557:in `initialize'
127
+ /optbies/ruby-2.7.5/lib/ruby/2.7.0/ipaddr.rb:598:in `rescue in initialize': invalid address: 437.176.99.144 (IPAddr::InvalidAddressError)
128
+
129
+ ** D HTML menu should be built from @reports
130
+ :PERTIES:
131
+ :HIVE_TIME: 2024-08-01 Thu 08:18
132
+ :HIVE_FILE: ~/Sources/ruby/log_sense/todo.org
133
+ :HIVE_OLPATH: Check
134
+ :HIVE_CATEGORY: todo
135
+ :HIVE_TODO: DONE
136
+ ::
137
+ :BOOK:
138
+ -ate "DONE" from "TODO" [2022-03-08 Tue 12:50]
139
+ ::
140
+
141
+ ** D Summary Table: Unique visits per day should be an integer (it is presented as a float, instead)
142
+ :PERTIES:
143
+ :HIVE_TIME: 2024-08-01 Thu 08:18
144
+ :HIVE_FILE: ~/Sources/ruby/log_sense/todo.org
145
+ :HIVE_OLPATH: Check
146
+ :HIVE_CATEGORY: todo
147
+ :HIVE_TODO: DONE
148
+ ::
149
+ :BOOK:
150
+ -ate "DONE" from "TODO" [2022-03-08 Tue 12:51]
151
+ ::
152
+
153
+ ** D Streaks, add total entries, total HTML, total other resources
154
+ :PERTIES:
155
+ :HIVE_TIME: 2024-08-01 Thu 08:18
156
+ :HIVE_FILE: ~/Sources/ruby/log_sense/todo.org
157
+ :HIVE_OLPATH: Check
158
+ :HIVE_CATEGORY: todo
159
+ :HIVE_TODO: DONE
160
+ ::
161
+ :BOOK:
162
+ -ate "DONE" from "TODO" [2022-03-08 Tue 18:02]
163
+ ::
164
+
165
+ ** D GeoIP: Add a task to automatically update IP Geolocation Database
166
+ :PERTIES:
167
+ :HIVE_TIME: 2024-08-01 Thu 08:18
168
+ :HIVE_FILE: ~/Sources/ruby/log_sense/todo.org
169
+ :HIVE_OLPATH: Check
170
+ :HIVE_CATEGORY: todo
171
+ :HIVE_TODO: DONE
172
+ ::
173
+ :BOOK:
174
+ -ate "DONE" from "TODO" [2022-03-08 Tue 18:02]
175
+ ::
176
+
177
+ ** D Remove dependency from Zurb Icons (used only for the hamburger)
178
+ :PROPERTIES:
179
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:18
180
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
181
+ :ARCHIVE_OLPATH: Check
182
+ :ARCHIVE_CATEGORY: todo
183
+ :ARCHIVE_TODO: DONE
184
+ :END:
185
+ :LOGBOOK:
186
+ - State "DONE" from "TODO" [2022-03-08 Tue 23:03]
187
+ :END:
188
+
189
+ ** REJECTED add remaining reports (summary, performance, log structure) to the list defined in emitter
190
+ :PROPERTIES:
191
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:18
192
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
193
+ :ARCHIVE_OLPATH: Check
194
+ :ARCHIVE_CATEGORY: todo
195
+ :ARCHIVE_TODO: REJECTED
196
+ :END:
197
+ :LOGBOOK:
198
+ - State "REJECTED" from "TODO" [2022-03-09 Wed 08:59] \\
199
+ - these reports use different formats (stats-list) and are not easily standardized
200
+ :END:
201
+
202
+ ** D Check Apache Report working
203
+ :PROPERTIES:
204
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:19
205
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
206
+ :ARCHIVE_OLPATH: Check
207
+ :ARCHIVE_CATEGORY: todo
208
+ :ARCHIVE_TODO: D
209
+ :END:
210
+
211
+ ** D Restore Streaks in both reports
212
+ :PROPERTIES:
213
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:19
214
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
215
+ :ARCHIVE_OLPATH: Check
216
+ :ARCHIVE_CATEGORY: todo
217
+ :ARCHIVE_TODO: D
218
+ :END:
219
+
220
+ ** D Restore Country table
221
+ :PROPERTIES:
222
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:19
223
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
224
+ :ARCHIVE_OLPATH: Check
225
+ :ARCHIVE_CATEGORY: todo
226
+ :ARCHIVE_TODO: D
227
+ :END:
228
+
229
+ ** D Add UFW Report
230
+ :PROPERTIES:
231
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:19
232
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
233
+ :ARCHIVE_OLPATH: Check
234
+ :ARCHIVE_CATEGORY: todo
235
+ :ARCHIVE_TODO: D
236
+ :END:
237
+
238
+ ** D Add IP by Time in Apache Report
239
+ :PROPERTIES:
240
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:21
241
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
242
+ :ARCHIVE_OLPATH: Check
243
+ :ARCHIVE_CATEGORY: todo
244
+ :ARCHIVE_TODO: D
245
+ :END:
246
+
247
+ ** D Performance and Command Line invocation appear twice in the navigation menu
248
+ :PROPERTIES:
249
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:21
250
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
251
+ :ARCHIVE_OLPATH: Check
252
+ :ARCHIVE_CATEGORY: todo
253
+ :ARCHIVE_TODO: D
254
+ :END:
255
+
256
+ ** DUPLICATE night and light themes
257
+ :PROPERTIES:
258
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:21
259
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
260
+ :ARCHIVE_OLPATH: Check
261
+ :ARCHIVE_CATEGORY: todo
262
+ :ARCHIVE_TODO: DUPLICATE
263
+ :END:
264
+
265
+ ** REJECTED off-canvas does work as expected (older version was a lot better)
266
+ :PROPERTIES:
267
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:21
268
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
269
+ :ARCHIVE_OLPATH: Check
270
+ :ARCHIVE_CATEGORY: todo
271
+ :ARCHIVE_TODO: REJECTED
272
+ :END:
273
+ (it re-centers when showing right cells)
274
+
275
+ ** REJECTED put together apache and rails txt reports (same partial, they are basically the same)
276
+ :PROPERTIES:
277
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:22
278
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
279
+ :ARCHIVE_OLPATH: Check
280
+ :ARCHIVE_CATEGORY: todo
281
+ :ARCHIVE_TODO: REJECTED
282
+ :END:
283
+
284
+ ** REJECTED put together apache and rails html reports (same partial, they are basically the same)
285
+ :PROPERTIES:
286
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:22
287
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
288
+ :ARCHIVE_OLPATH: Check
289
+ :ARCHIVE_CATEGORY: todo
290
+ :ARCHIVE_TODO: REJECTED
291
+ :END:
292
+
293
+ ** REJECTED remove column specifications for DataTable in report specification
294
+ :PROPERTIES:
295
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:22
296
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
297
+ :ARCHIVE_OLPATH: Check
298
+ :ARCHIVE_CATEGORY: todo
299
+ :ARCHIVE_TODO: REJECTED
300
+ :END:
301
+
302
+ ** REJECTED Factor common methods in report_shaper
303
+ :PROPERTIES:
304
+ :ARCHIVE_TIME: 2024-08-01 Thu 08:22
305
+ :ARCHIVE_FILE: ~/Sources/ruby/log_sense/todo.org
306
+ :ARCHIVE_OLPATH: Check
307
+ :ARCHIVE_CATEGORY: todo
308
+ :ARCHIVE_TODO: REJECTED
309
+ :END:
metadata CHANGED
@@ -1,114 +1,114 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: log_sense
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adolfo Villafiorita
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-08-02 00:00:00.000000000 Z
11
+ date: 2024-08-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: browser
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 5.3.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: 5.3.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: ipaddr
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: 1.2.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: 1.2.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: iso_country_codes
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: 0.7.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: 0.7.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: sqlite3
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: 2.0.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: 2.0.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: terminal-table
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0'
75
+ version: 3.0.0
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: 3.0.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: debug
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: 1.9.0
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0'
96
+ version: 1.9.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: minitest
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ">="
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '0'
103
+ version: 5.24.0
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ">="
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '0'
111
- description: Generate analytics in HTML, txt, and SQLite format for Apache and Rails
110
+ version: 5.24.0
111
+ description: Generate analytics in HTML, txt, and SQLite format for Rails and Apache/Nginx
112
112
  log files.
113
113
  email:
114
114
  - adolfo@shair.tech
@@ -142,6 +142,7 @@ files:
142
142
  - lib/log_sense/rails_aggregator.rb
143
143
  - lib/log_sense/rails_report_shaper.rb
144
144
  - lib/log_sense/report_shaper.rb
145
+ - lib/log_sense/templates/_apache_theme.css
145
146
  - lib/log_sense/templates/_cdn_links.html.erb
146
147
  - lib/log_sense/templates/_command_invocation.html.erb
147
148
  - lib/log_sense/templates/_command_invocation.txt.erb
@@ -151,7 +152,7 @@ files:
151
152
  - lib/log_sense/templates/_output_table.txt.erb
152
153
  - lib/log_sense/templates/_performance.html.erb
153
154
  - lib/log_sense/templates/_performance.txt.erb
154
- - lib/log_sense/templates/_rails.css.erb
155
+ - lib/log_sense/templates/_rails_theme.css
155
156
  - lib/log_sense/templates/_report_data.html.erb
156
157
  - lib/log_sense/templates/_stylesheet.css
157
158
  - lib/log_sense/templates/_summary.html.erb
@@ -159,12 +160,14 @@ files:
159
160
  - lib/log_sense/templates/_warning.txt.erb
160
161
  - lib/log_sense/templates/report_html.erb
161
162
  - lib/log_sense/templates/report_txt.erb
163
+ - lib/log_sense/templates/world.svg
162
164
  - lib/log_sense/version.rb
163
165
  - log_sense.gemspec
164
166
  - sample_logs/safety-critical_org.log
165
167
  - sample_logs/spmbook_com.log
166
- - screenshots/apache-screenshot.png
168
+ - screenshots/combined_log-screenshot.png
167
169
  - screenshots/rails-screenshot.png
170
+ - todo.org
168
171
  homepage: https://github.com/shair-tech/log_sense/
169
172
  licenses:
170
173
  - MIT
@@ -188,8 +191,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
188
191
  - !ruby/object:Gem::Version
189
192
  version: '0'
190
193
  requirements: []
191
- rubygems_version: 3.3.26
194
+ rubygems_version: 3.5.17
192
195
  signing_key:
193
196
  specification_version: 4
194
- summary: Generate analytics for Apache and Rails log file.
197
+ summary: Generate analytics for Rails and Apache/Nginx log file.
195
198
  test_files: []
@@ -1,20 +0,0 @@
1
- :root {
2
- --main-accent: #D30001;
3
- }
4
-
5
- /*
6
- @media (prefers-color-scheme: dark) {
7
- :root {
8
- --main-accent: #DA2627;
9
- }
10
- }
11
- */
12
-
13
- #offCanvas {
14
- background: var(--main-accent) !important;
15
- }
16
-
17
- h1, h2 {
18
- color: var(--main-accent) !important;
19
- }
20
-
Binary file