log-analyzer 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/log-analyzer/analyze.rb +5 -0
- data/lib/log-analyzer/cli.rb +10 -0
- data/lib/log-analyzer/endpoint.rb +6 -2
- data/lib/log-analyzer/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e5a384366b1d5db2d56e84cd9da5f5f03ba27543
|
4
|
+
data.tar.gz: b71bec30b86641038690a2032d23417952e9659b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 632a21412bff9769262c034fe1c9e4084a1ad9b219d04dd35f6c3692109d06fd0e9eb0c62b85da034206922e026457f8f6a28c49eafb05d3644d18e7994e3c6b
|
7
|
+
data.tar.gz: 34958a2ba673033b6fc42ad4e2a9cdef9ac31b458afc06d3d4bbd44dd79502cfe15d4d3cc736e5863882a1e4ed613fe8fbff6ea718018abaf978e94abfc5b2c9
|
data/lib/log-analyzer/analyze.rb
CHANGED
@@ -26,9 +26,14 @@ module Log::Analyzer
|
|
26
26
|
matche = router.serve(req)
|
27
27
|
next unless matche.any?
|
28
28
|
|
29
|
+
req.env.delete_if { |key, val| ["REQUEST_METHOD", "PATH_INFO"].include?(key) }
|
29
30
|
_, _, route = matche.first
|
30
31
|
endpoint = Endpoint.find_by(method: route.path.request_method, uri_pattern: route.path.uri_pattern)
|
31
32
|
endpoint.count += 1
|
33
|
+
|
34
|
+
req.env.each do |key, val|
|
35
|
+
endpoint[key.downcase] << val.to_i
|
36
|
+
end
|
32
37
|
end
|
33
38
|
end
|
34
39
|
Endpoint.all
|
data/lib/log-analyzer/cli.rb
CHANGED
@@ -21,12 +21,22 @@ module Log::Analyzer
|
|
21
21
|
column('method')
|
22
22
|
column('endpoint')
|
23
23
|
column('count')
|
24
|
+
@endpoints.first.values.keys.each do |key|
|
25
|
+
column("#{key}(avg)")
|
26
|
+
column("#{key}(max)")
|
27
|
+
column("#{key}(min)")
|
28
|
+
end
|
24
29
|
end
|
25
30
|
@endpoints.each do |endpoint|
|
26
31
|
row color: 'red' do
|
27
32
|
column(endpoint.method)
|
28
33
|
column(endpoint.uri_pattern)
|
29
34
|
column(endpoint.count)
|
35
|
+
endpoint.values.each do |_, val|
|
36
|
+
column(val.inject(0.0, :+).quo(val.count).round(2))
|
37
|
+
column(val.max)
|
38
|
+
column(val.min)
|
39
|
+
end
|
30
40
|
end
|
31
41
|
end
|
32
42
|
end
|
@@ -2,11 +2,15 @@ module Log::Analyzer
|
|
2
2
|
class Endpoint
|
3
3
|
attr_accessor :method, :uri_pattern, :count, :values
|
4
4
|
|
5
|
-
def initialize(method: "", uri_pattern: ""
|
5
|
+
def initialize(method: "", uri_pattern: "")
|
6
6
|
@method = method
|
7
7
|
@uri_pattern = uri_pattern
|
8
8
|
@count = 0
|
9
|
-
@values =
|
9
|
+
@values = {}
|
10
|
+
end
|
11
|
+
|
12
|
+
def [](key)
|
13
|
+
@values[key] ||= []
|
10
14
|
end
|
11
15
|
|
12
16
|
def self.create(method: "", uri_pattern: "")
|
data/lib/log-analyzer/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: log-analyzer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- shiro16
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-01-
|
11
|
+
date: 2016-01-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: actionpack
|