metlo 0.0.5-x86_64-linux-musl → 0.0.6-x86_64-linux-musl

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/metlo/version.rb +1 -1
  3. data/lib/metlo.rb +29 -13
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 86fb7beca5094ed616ae29e7952b4d183d0d0a1283009dcc77221a1fbda47511
4
- data.tar.gz: 12605caef115c4316e7353ad8099a2114dcd3c42f2cd6efb3007af6855b9b6eb
3
+ metadata.gz: d3f848fd471339d3b480465cbaf26b5018fbbe10a6f40950268bbdea77d9dd7b
4
+ data.tar.gz: 831d696738331d32cfe5b008be73c0b40f88900fb101ac3ee13b795e6d81d4a8
5
5
  SHA512:
6
- metadata.gz: a90cb637178c9b1756c20291acabb0e025cec1ee03f06e92ce4273132b9f380a1415a57da68afe71f3c2787a486f458deef9092594003736bbbf33a67bc51b7e
7
- data.tar.gz: dcceefab8fc54182afb5a08ac351c47b1ad97e703900c72f73fbb9f9e56a1fd9eae0ed7196df75c9c55f916a782aaced21d51de9541086d1c89ec609a5910cb4
6
+ metadata.gz: 89ba08893202fc15fc8d18958ef7dcff4d24aff2cf01fb4c95cf551bde22049b5db435a0e3f0934cc474b56ce21f00155d24b1d8eef6bd9638ee236250b536b5
7
+ data.tar.gz: 63061729f4a82a01f52a46a9198901398aae6647702b585056b34363412b7861da5b1cdac49bd29ad5fdf79cf75d15632207435a0db0735b31b52a8be4258f4c
data/lib/metlo/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Metlo
4
- VERSION = "0.0.5"
4
+ VERSION = "0.0.6"
5
5
  end
data/lib/metlo.rb CHANGED
@@ -35,6 +35,8 @@ module Metlo
35
35
  log_level = "info"
36
36
  @logger = Logger.new($stdout, convert_log_level(log_level))
37
37
  @logger.warn("log_level is not one of trace, debug, info, warn, error.\nDefaulting log level to info")
38
+ else
39
+ @logger = Logger.new($stdout, convert_log_level(log_level))
38
40
  end
39
41
  else
40
42
  log_level = "info"
@@ -137,21 +139,35 @@ module Metlo
137
139
  meta_raw = create_meta(env)
138
140
  meta = JSON.generate(meta_raw)
139
141
  rescue StandardError => e
142
+ @logger.warn(e)
140
143
  status, headers, response = @app.call(env)
141
144
  [status, headers, response]
142
145
  else
143
- block = block_trace(req,meta)
146
+ block = false
147
+
148
+ begin
149
+ block = block_trace(req,meta)
150
+ rescue StandardError => e
151
+ @logger.debug("Metlo encountered an error while checking for trace blocking.")
152
+ @logger.debug(e)
153
+ end
154
+
144
155
  if block
145
156
  status, headers, response = (@block_fn).call env
146
157
  else
147
158
  status, headers, response = @app.call(env)
148
159
  end
149
- res_raw = create_res(status,headers,response)
150
- res = JSON.generate(res_raw)
151
-
152
- ingest_trace(req,res,meta)
160
+
161
+ begin
162
+ res_raw = create_res(status,headers,response)
163
+ res = JSON.generate(res_raw)
164
+ ingest_trace(req,res,meta)
165
+ rescue StandardError => e
166
+ @logger.debug("Metlo encountered an error while sending trace.")
167
+ @logger.debug(e)
168
+ end
153
169
 
154
- [status, headers, response]
170
+ return [status, headers, response]
155
171
  end
156
172
  else
157
173
  @app.call(env)
@@ -246,16 +262,16 @@ module Metlo
246
262
  }
247
263
  end
248
264
 
249
- def create_meta(env)
250
- server = env['rack.hijack'].io.addr
251
- client = env['rack.hijack'].io.peeraddr
265
+ def create_meta(env)
266
+ server = env.has_key?('rack.hijack') ? env['rack.hijack'].io.addr : nil
267
+ client = env.has_key?('rack.hijack') ? env['rack.hijack'].io.peeraddr : nil
252
268
  return {
253
269
  "environment": "production",
254
270
  "incoming": true,
255
- "source": client[2],
256
- "sourcePort": client[1],
257
- "destination": server[2],
258
- "destinationPort": server[1]
271
+ "source": client.nil? ? env["REMOTE_ADDR"] : client[2],
272
+ "sourcePort": client.nil? ? 0 : client[1],
273
+ "destination": server.nil? ? env["SERVER_NAME"] : server[2],
274
+ "destinationPort": server.nil? ? env["SERVER_PORT"].to_i : server[1]
259
275
  }
260
276
  end
261
277
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metlo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: x86_64-linux-musl
6
6
  authors:
7
7
  - Metlo