logster 0.1.5 → 0.1.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 +4 -4
- data/README.md +9 -6
- data/lib/logster.rb +7 -1
- data/lib/logster/configuration.rb +1 -1
- data/lib/logster/middleware/viewer.rb +0 -5
- data/lib/logster/rails/railtie.rb +8 -16
- data/lib/logster/version.rb +1 -1
- data/lib/logster/web.rb +7 -1
- data/test/logster/middleware/test_viewer.rb +0 -18
- data/test/test_helper.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: d995b434dc8396a1b599aec866dad4d0ac4063da
|
4
|
+
data.tar.gz: 39e45321820da7c8c5ddc1dc3c4c89eac3dc4621
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 30772ee8c258f97d6bb16c04f3439bab6073a30d66da862245e248c04c6ac07067d77075a425dc9e104a7b0e0a1c841f475b890679f9c556c08563f7897752ee
|
7
|
+
data.tar.gz: 552c9f5737eb998e0bf235cb378451a6b5e829f7d768ebbebeebce867e079b02d823bc705a1b9f79a5f2dd56060b7ab21fdf199ea821ee74b4cfac25306feca4
|
data/README.md
CHANGED
@@ -17,18 +17,16 @@ And then execute:
|
|
17
17
|
|
18
18
|
$ bundle
|
19
19
|
|
20
|
-
Make
|
20
|
+
Make logster web available add the following to your `routes.rb`:
|
21
21
|
|
22
22
|
```
|
23
|
-
|
24
|
-
mount Logster::Web => "/logs"
|
25
|
-
end
|
23
|
+
mount Logster::Web => "/logs", lambda { |req| req.session["admin"] }
|
26
24
|
```
|
27
25
|
|
28
|
-
|
26
|
+
Out of the box, logster will use the default redis connection, to customise, in `config/application.rb`
|
29
27
|
|
30
28
|
```
|
31
|
-
Logster.
|
29
|
+
Logster.store = Logster.RedisStore.new(redis_connection)
|
32
30
|
```
|
33
31
|
|
34
32
|
## Usage
|
@@ -84,3 +82,8 @@ Logster UI is built using [Ember.js](http://emberjs.com/)
|
|
84
82
|
- Automatically include ignore filter
|
85
83
|
- 2014-08-08: Version 0.1.4
|
86
84
|
- Fix crash in ignore filter
|
85
|
+
- 2014-08-10: Version 0.1.5
|
86
|
+
- Fix crash in Rails 3
|
87
|
+
- 2014-08-13: Version 0.1.6
|
88
|
+
- Simplify install process
|
89
|
+
- Fix crash on 404 in /logs dir
|
data/lib/logster.rb
CHANGED
@@ -4,6 +4,13 @@ require 'logster/configuration'
|
|
4
4
|
require 'logster/web'
|
5
5
|
require 'logster/ignore_pattern'
|
6
6
|
|
7
|
+
if defined? Redis
|
8
|
+
require 'logster/redis_store'
|
9
|
+
else
|
10
|
+
STDERR.puts "ERROR: Redis is not loaded, ensure redis gem is required before logster"
|
11
|
+
exit
|
12
|
+
end
|
13
|
+
|
7
14
|
module Logster
|
8
15
|
def self.logger=(logger)
|
9
16
|
@logger = logger
|
@@ -36,7 +43,6 @@ module Logster
|
|
36
43
|
end
|
37
44
|
|
38
45
|
Logster.config.current_context = lambda{ |env, &block| block.call }
|
39
|
-
Logster.config.authorize_callback = lambda{ |env| true }
|
40
46
|
|
41
47
|
if defined?(::Rails) && ::Rails::VERSION::MAJOR.to_i >= 3
|
42
48
|
require 'logster/rails/railtie'
|
@@ -29,11 +29,6 @@ module Logster
|
|
29
29
|
|
30
30
|
if resource = resolve_path(path)
|
31
31
|
|
32
|
-
# easier to debug, call per line
|
33
|
-
unless Logster.config.authorize_callback.call(env)
|
34
|
-
return @app.call(env)
|
35
|
-
end
|
36
|
-
|
37
32
|
if resource =~ /\.js$|\.handlebars$|\.css$/
|
38
33
|
env[PATH_INFO] = resource
|
39
34
|
# accl redirect is going to be trouble, ensure its bypassed
|
@@ -7,22 +7,17 @@ module Logster::Rails
|
|
7
7
|
def self.set_logger(config)
|
8
8
|
return unless Rails.env.development? || Rails.env.production?
|
9
9
|
|
10
|
-
|
11
|
-
|
12
|
-
require 'logster/middleware/reporter'
|
13
|
-
require 'logster/redis_store'
|
10
|
+
require 'logster/middleware/debug_exceptions'
|
11
|
+
require 'logster/middleware/reporter'
|
14
12
|
|
15
|
-
|
16
|
-
|
13
|
+
store = Logster.store ||= Logster::RedisStore.new
|
14
|
+
store.level = Logger::Severity::WARN if Rails.env.production?
|
17
15
|
|
18
|
-
|
19
|
-
|
20
|
-
|
16
|
+
logger = Logster::Logger.new(store)
|
17
|
+
logger.chain(::Rails.logger)
|
18
|
+
logger.level = ::Rails.logger.level
|
21
19
|
|
22
|
-
|
23
|
-
else
|
24
|
-
Rails.logger.warn "Not loading logster, Redis missing"
|
25
|
-
end
|
20
|
+
Logster.logger = ::Rails.logger = config.logger = logger
|
26
21
|
end
|
27
22
|
|
28
23
|
|
@@ -46,9 +41,6 @@ module Logster::Rails
|
|
46
41
|
class Railtie < ::Rails::Railtie
|
47
42
|
|
48
43
|
config.before_initialize do
|
49
|
-
Logster.config.authorize_callback = lambda {|env|
|
50
|
-
Rails.env == "development"
|
51
|
-
}
|
52
44
|
Logster::Rails.set_logger(config)
|
53
45
|
end
|
54
46
|
|
data/lib/logster/version.rb
CHANGED
data/lib/logster/web.rb
CHANGED
@@ -1,8 +1,14 @@
|
|
1
1
|
require 'logster/middleware/viewer'
|
2
2
|
|
3
3
|
class Logster::Web
|
4
|
+
class FourOhFour
|
5
|
+
def call(env)
|
6
|
+
[404, {}, ["not found"]]
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
4
10
|
def self.call(env)
|
5
|
-
@middleware ||= Logster::Middleware::Viewer.new(
|
11
|
+
@middleware ||= Logster::Middleware::Viewer.new(FourOhFour.new)
|
6
12
|
@middleware.call(env)
|
7
13
|
end
|
8
14
|
end
|
@@ -17,7 +17,6 @@ class TestViewer < Minitest::Test
|
|
17
17
|
|
18
18
|
def teardown
|
19
19
|
Logster.config.subdirectory = nil
|
20
|
-
Logster.config.authorize_callback = nil
|
21
20
|
Logster.store = nil
|
22
21
|
end
|
23
22
|
|
@@ -28,19 +27,6 @@ class TestViewer < Minitest::Test
|
|
28
27
|
end
|
29
28
|
end
|
30
29
|
|
31
|
-
def test_authorize_callback
|
32
|
-
Logster.config.authorize_callback = lambda{ |env|
|
33
|
-
env["authorized"]
|
34
|
-
}
|
35
|
-
|
36
|
-
viewer = Logster::Middleware::Viewer.new(BrokenApp.new)
|
37
|
-
status, _ = viewer.call({"PATH_INFO" => "/logs"})
|
38
|
-
assert_equal(500, status)
|
39
|
-
|
40
|
-
status, _ = viewer.call({"PATH_INFO" => "/logs", "authorized" => true})
|
41
|
-
assert_equal(200, status)
|
42
|
-
end
|
43
|
-
|
44
30
|
def test_path_resolution
|
45
31
|
assert_nil(viewer.send(:resolve_path, "/logs"))
|
46
32
|
assert_nil(viewer.send(:resolve_path, "/admin/logsie"))
|
@@ -51,10 +37,6 @@ class TestViewer < Minitest::Test
|
|
51
37
|
end
|
52
38
|
|
53
39
|
def test_assets
|
54
|
-
Logster.config.authorize_callback = lambda{ |env|
|
55
|
-
true
|
56
|
-
}
|
57
|
-
|
58
40
|
env = {}
|
59
41
|
env["PATH_INFO"] = "/logsie/javascript/external/jquery.min.js"
|
60
42
|
env["REQUEST_METHOD"] = "GET"
|
data/test/test_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- UI for viewing logs in Rack
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-08-
|
11
|
+
date: 2014-08-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|