logster 2.11.2 → 2.11.4

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.
@@ -27,7 +27,7 @@
27
27
  "@glimmer/component": "^1.0.0",
28
28
  "babel-eslint": "^10.1.0",
29
29
  "broccoli-asset-rev": "^3.0.0",
30
- "ember-auto-import": "^1.5.3",
30
+ "ember-auto-import": "^1.12.2",
31
31
  "ember-cli": "^3.15.0",
32
32
  "ember-cli-app-version": "^3.2.0",
33
33
  "ember-cli-babel": "^7.19.0",
@@ -58,6 +58,9 @@
58
58
  "edition": "octane"
59
59
  },
60
60
  "dependencies": {
61
- "moment": "~2.29.2"
61
+ "moment": "~2.29.4"
62
+ },
63
+ "overrides": {
64
+ "testem": "^3.9.0"
62
65
  }
63
66
  }
@@ -25,6 +25,6 @@ module('Unit | Controller | index', function (hooks) {
25
25
 
26
26
  assert.equal(controller.searchTerm, "tomtom", 'search sets search term');
27
27
  assert.equal(ajaxStub.firstCall.args[0], "/messages.json", "get messages");
28
- assert.deepEqual(ajaxStub.firstCall.args[1], {"data": {"filter": "5", "search": "tomtom"}}, "with correct terms");
28
+ assert.deepEqual(ajaxStub.firstCall.args[1], {"data": {"filter": "5", "search": "tomtom"}, "method": "POST"}, "with correct terms");
29
29
  });
30
30
  });
@@ -81,8 +81,11 @@ module Logster
81
81
 
82
82
  def self.hostname
83
83
  @hostname ||= begin
84
- command = (Logster.config.use_full_hostname ? `hostname -f` : `hostname`) rescue "<unknown>"
84
+ command = Logster.config.use_full_hostname ? `hostname -f` : `hostname`
85
85
  command.strip!
86
+ command
87
+ rescue
88
+ "<unknown>"
86
89
  end
87
90
  end
88
91
 
@@ -18,7 +18,7 @@ module Logster
18
18
  (@store = Logster.store) || raise(ArgumentError.new("store"))
19
19
 
20
20
  @assets_path = File.expand_path("../../../../assets", __FILE__)
21
- @fileserver = Rack::File.new(@assets_path)
21
+ @fileserver = Rack::Files.new(@assets_path)
22
22
  end
23
23
 
24
24
  def call(env)
@@ -33,7 +33,7 @@ module Logster
33
33
  if resource =~ /\.ico$|\.js$|\.png|\.handlebars$|\.css$|\.woff$|\.ttf$|\.woff2$|\.svg$|\.otf$|\.eot$/
34
34
  serve_file(env, resource)
35
35
 
36
- elsif resource.start_with?("/messages.json")
36
+ elsif resource.start_with?("/messages.json") && env[REQUEST_METHOD] == "POST"
37
37
  serve_messages(Rack::Request.new(env))
38
38
 
39
39
  elsif resource =~ /\/message\/([0-9a-f]+)$/
@@ -102,10 +102,10 @@ module Logster
102
102
  end
103
103
 
104
104
  if json
105
- [200, { "Content-Type" => "application/json; charset=utf-8" }, [message.to_json]]
105
+ [200, { "content-type" => "application/json; charset=utf-8" }, [message.to_json]]
106
106
  else
107
107
  preload = { "/show/#{key}" => message }
108
- [200, { "Content-Type" => "text/html; charset=utf-8" }, [body(preload)]]
108
+ [200, { "content-type" => "text/html; charset=utf-8" }, [body(preload)]]
109
109
  end
110
110
 
111
111
  elsif resource =~ /\/settings(\.json)?$/
@@ -128,9 +128,9 @@ module Logster
128
128
  grouping = Logster::GroupingPattern.find_all(raw: true).map do |pattern|
129
129
  { value: pattern }
130
130
  end
131
- [200, { "Content-Type" => "application/json; charset=utf-8" }, [JSON.generate(suppression: suppression, grouping: grouping)]]
131
+ [200, { "content-type" => "application/json; charset=utf-8" }, [JSON.generate(suppression: suppression, grouping: grouping)]]
132
132
  else
133
- [200, { "Content-Type" => "text/html; charset=utf-8" }, [body]]
133
+ [200, { "content-type" => "text/html; charset=utf-8" }, [body]]
134
134
  end
135
135
  elsif resource =~ /\/patterns\/([a-zA-Z0-9_]+)\.json$/
136
136
  unless Logster.config.enable_custom_patterns_via_ui
@@ -161,12 +161,12 @@ module Logster
161
161
  Logster.store.remove_ignore_count(pattern)
162
162
  [200, {}, ["OK"]]
163
163
  elsif resource == "/"
164
- [200, { "Content-Type" => "text/html; charset=utf-8" }, [body]]
164
+ [200, { "content-type" => "text/html; charset=utf-8" }, [body]]
165
165
  elsif resource =~ /\/fetch-env\/([0-9a-f]+)\.json$/
166
166
  key = $1
167
167
  env = Logster.store.get_env(key)
168
168
  if env
169
- [200, { "Content-Type" => "application/json; charset=utf-8" }, [JSON.generate(env)]]
169
+ [200, { "content-type" => "application/json; charset=utf-8" }, [JSON.generate(env)]]
170
170
  else
171
171
  not_found
172
172
  end
@@ -181,7 +181,7 @@ module Logster
181
181
  group.messages_keys.each { |k| Logster.store.solve(k) }
182
182
  [200, {}, []]
183
183
  elsif resource == '/development-preload.json' && ENV["LOGSTER_ENV"] == "development"
184
- [200, { "Content-Type" => "application/json; charset=utf-8" }, [JSON.generate(preloaded_data)]]
184
+ [200, { "content-type" => "application/json; charset=utf-8" }, [JSON.generate(preloaded_data)]]
185
185
  else
186
186
  not_found
187
187
  end
@@ -230,7 +230,7 @@ module Logster
230
230
  }
231
231
 
232
232
  json = JSON.generate(payload)
233
- [200, { "Content-Type" => "application/json" }, [json]]
233
+ [200, { "content-type" => "application/json" }, [json]]
234
234
  end
235
235
 
236
236
  def update_patterns(set_name, req)
@@ -258,7 +258,7 @@ module Logster
258
258
  return method_not_allowed(%w[POST PUT DELETE])
259
259
  end
260
260
 
261
- [200, { "Content-Type" => "application/json" }, [JSON.generate(pattern: record.to_s)]]
261
+ [200, { "content-type" => "application/json" }, [JSON.generate(pattern: record.to_s)]]
262
262
  rescue => err
263
263
  error_message = err.message
264
264
 
@@ -293,7 +293,7 @@ module Logster
293
293
  if Array === allowed_methods
294
294
  allowed_methods = allowed_methods.join(", ")
295
295
  end
296
- [405, { "Allow" => allowed_methods }, []]
296
+ [405, { "allow" => allowed_methods }, []]
297
297
  end
298
298
 
299
299
  def parse_regex(string)
@@ -318,11 +318,11 @@ module Logster
318
318
  end
319
319
 
320
320
  def insert_pattern(set_name, pattern)
321
- @redis.sadd(set_name, pattern)
321
+ @redis.sadd(set_name, [pattern])
322
322
  end
323
323
 
324
324
  def remove_pattern(set_name, pattern)
325
- @redis.srem(set_name, pattern)
325
+ @redis.srem(set_name, [pattern])
326
326
  end
327
327
 
328
328
  def get_patterns(set_name)
@@ -434,9 +434,9 @@ module Logster
434
434
  redis.hset(hash_key, message.key, message.to_json(exclude_env: true))
435
435
  push_env(message.key, message.env, redis: redis) if save_env
436
436
  if message.protected
437
- redis.sadd(protected_key, message.key)
437
+ redis.sadd(protected_key, [message.key])
438
438
  else
439
- redis.srem(protected_key, message.key)
439
+ redis.srem(protected_key, [message.key])
440
440
  end
441
441
  end
442
442
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Logster
4
- VERSION = "2.11.2"
4
+ VERSION = "2.11.4"
5
5
  end
@@ -43,23 +43,29 @@ class TestViewer < Minitest::Test
43
43
  end
44
44
 
45
45
  def test_search_raceguard_s
46
- response = request.get('/logsie/messages.json?search=searchkey')
46
+ response = request.post('/logsie/messages.json?search=searchkey')
47
47
  result = JSON.parse(response.body)
48
48
  assert_equal('searchkey', result['search'])
49
49
  end
50
50
 
51
51
  def test_search_raceguard_sr
52
- response = request.get('/logsie/messages.json?search=/regex/&regex_search=true')
52
+ response = request.post('/logsie/messages.json?search=/regex/&regex_search=true')
53
53
  result = JSON.parse(response.body)
54
54
  assert_equal('/regex/', result['search'])
55
55
  end
56
56
 
57
57
  def test_search_raceguard_f
58
- response = request.get("/logsie/messages.json?filter=0_1_2_3_4")
58
+ response = request.post("/logsie/messages.json?filter=0_1_2_3_4")
59
59
  result = JSON.parse(response.body)
60
60
  assert_equal([0, 1, 2, 3, 4], result['filter'])
61
61
  end
62
62
 
63
+ def test_search_does_not_respond_to_get_requests
64
+ response = request.get("/logsie/messages.json?filter=0_1_2_3_4")
65
+ assert_equal(404, response.status)
66
+ assert_equal("Not found", response.body)
67
+ end
68
+
63
69
  def test_regex_parse
64
70
  assert_equal(/hello/i, viewer.send(:parse_regex, '/hello/i'))
65
71
  end
@@ -304,7 +310,7 @@ class TestViewer < Minitest::Test
304
310
  ).each do |path|
305
311
  response = request.get(path)
306
312
  assert_equal(200, response.status)
307
- assert_equal('application/javascript', response.headers['Content-Type'])
313
+ assert_equal('application/javascript', response.headers['content-type'])
308
314
  end
309
315
  end
310
316
 
@@ -315,7 +321,7 @@ class TestViewer < Minitest::Test
315
321
  ).each do |path|
316
322
  response = request.get(path)
317
323
  assert_equal(200, response.status)
318
- assert_equal('text/css', response.headers['Content-Type'])
324
+ assert_equal('text/css', response.headers['content-type'])
319
325
  end
320
326
  end
321
327
 
@@ -335,7 +341,7 @@ class TestViewer < Minitest::Test
335
341
  Logster.store.clear_all
336
342
  env = { "b" => 1, "c" => 2 }
337
343
  msg = Logster.store.report(Logger::INFO, "test", "something hello", env: env)
338
- response = request.get("/logsie/messages.json")
344
+ response = request.post("/logsie/messages.json")
339
345
  assert_equal(200, response.status)
340
346
  messages = JSON.parse(response.body)["messages"]
341
347
  assert_equal(1, messages.size)
@@ -348,7 +354,7 @@ class TestViewer < Minitest::Test
348
354
  Logster.store.clear_all
349
355
  env = { "b" => 1, "c" => 2 }
350
356
  msg = Logster.store.report(Logger::INFO, "test", "something hello", env: env)
351
- response = request.get("/logsie/messages.json?search=something")
357
+ response = request.post("/logsie/messages.json?search=something")
352
358
  assert_equal(200, response.status)
353
359
  messages = JSON.parse(response.body)["messages"]
354
360
  assert_equal(1, messages.size)
@@ -387,7 +393,7 @@ class TestViewer < Minitest::Test
387
393
  %i[get head options].each do |m|
388
394
  response = request.public_send(m, "/logsie/solve-group", params: { regex: "/gotta be post/" })
389
395
  assert_equal(405, response.status)
390
- assert_equal("POST", response.headers["Allow"])
396
+ assert_equal("POST", response.headers["allow"])
391
397
  end
392
398
  latest = Logster.store.latest
393
399
  assert_equal(1, latest.size)
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: 2.11.2
4
+ version: 2.11.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sam Saffron
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-04-28 00:00:00.000000000 Z
11
+ date: 2023-01-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler