semantic_logger_datadog 0.1.0 → 0.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 601074c776382fb609d87e888c959a6d9ca99d300a651ab8ac8d68790a4d293e
4
- data.tar.gz: 340850a4ddd2c82b54e15256b838d782c4869bcbf37974faf3e0ca8b6e654ac4
3
+ metadata.gz: 020c3daa1a448ca0458063e7aeb32302a5836f10bd5a734926eb7fa42178b956
4
+ data.tar.gz: 8c2206bf4c264dbd82a8dd50ab13a7f14e7bc80b3a9e59fb366061215d6a4815
5
5
  SHA512:
6
- metadata.gz: 2544b4d572b362228616146daeaf98d9eb598cbfbb0544455c43d2059b85793f0dedbd075d425357a45010a7a433eec1d2cae8026c049ce2e821305712bee56a
7
- data.tar.gz: 5c2ad0dbac03147d1784ccee0c3e1783fb498b4b604814fecd3600e51e535d45f942b38c5f63c8574f746ef93efd4df68636049c1d32c07aa242ef87c92939c1
6
+ metadata.gz: 231b648522e693a3d957ceb3293d44013827759312a62794edeb69bba44e026ad247308f28e33f0e32ee3dd55461d78136fd39d4db7d29b4403b7a4a0cdb450a
7
+ data.tar.gz: b0f7354bca0178bb90d7efdf82f88cba0905d580e9dd02822a1458ef40b6ed9598fcc5858c93605d798d99711adf7e1bff9679e173608ea1ea2e2c3dbf77b4b6
data/README.md CHANGED
@@ -43,23 +43,7 @@ gem "rails_semantic_logger"
43
43
  gem "semantic_logger_datadog"
44
44
  ```
45
45
 
46
- Configure named tags in `config/application.rb`:
47
-
48
- ```ruby
49
- module App
50
- class Application < Rails::Application
51
- # Your app's existing configuration goes here…
52
-
53
- # Configure named tags to add to every log message.
54
- config.log_tags = {
55
- remote_ip: :remote_ip,
56
- request_id: :request_id,
57
- url: ->(request) { request.original_url },
58
- useragent: ->(request) { request.headers["user-agent"] },
59
- }
60
- end
61
- end
62
- ```
46
+ The included middleware configures relevant log tags using values provided by [Action Dispatch](https://api.rubyonrails.org/classes/ActionDispatch.html).
63
47
 
64
48
  ### Adding custom controller action data
65
49
 
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SemanticLoggerDatadog
4
+ class Middleware
5
+ def initialize(app)
6
+ @app = app
7
+ end
8
+
9
+ def call(env)
10
+ request = ActionDispatch::Request.new(env)
11
+
12
+ hash = {
13
+ remote_ip: request.remote_ip,
14
+ request_id: request.request_id,
15
+ url: request.original_url,
16
+ useragent: request.headers["user-agent"],
17
+ }
18
+
19
+ SemanticLogger.named_tagged(hash) { @app.call(env) }
20
+ end
21
+ end
22
+ end
@@ -6,6 +6,8 @@ rescue LoadError => e
6
6
  raise %(semantic_logger_datadog: Install the rails_semantic_logger gem to continue. (#{e}))
7
7
  end
8
8
 
9
+ require_relative "middleware"
10
+
9
11
  module SemanticLoggerDatadog
10
12
  class Railtie < Rails::Railtie
11
13
  initializer "semantic_logger_datadog.configure_rails_initialization" do |app|
@@ -30,6 +32,8 @@ module SemanticLoggerDatadog
30
32
  app.config.rails_semantic_logger.add_file_appender = false
31
33
  app.config.semantic_logger.add_appender(formatter: app.config.rails_semantic_logger.format, io: $stdout)
32
34
  end
35
+
36
+ app.middleware.insert_before RailsSemanticLogger::Rack::Logger, SemanticLoggerDatadog::Middleware
33
37
  end
34
38
  end
35
39
  end
@@ -4,7 +4,7 @@ Gem::Specification.new do |spec|
4
4
  spec.required_ruby_version = ">= 3.1"
5
5
 
6
6
  spec.name = "semantic_logger_datadog"
7
- spec.version = "0.1.0"
7
+ spec.version = "0.2.0"
8
8
  spec.authors = ["CargoSense"]
9
9
  spec.email = ["rubygems@cargosense.com"]
10
10
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: semantic_logger_datadog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - CargoSense
@@ -35,6 +35,7 @@ files:
35
35
  - lib/semantic_logger_datadog.rb
36
36
  - lib/semantic_logger_datadog/formatters/json.rb
37
37
  - lib/semantic_logger_datadog/formatters/raw.rb
38
+ - lib/semantic_logger_datadog/middleware.rb
38
39
  - lib/semantic_logger_datadog/railtie.rb
39
40
  - semantic_logger_datadog.gemspec
40
41
  homepage: https://github.com/CargoSense/semantic_logger_datadog
@@ -43,10 +44,10 @@ licenses:
43
44
  metadata:
44
45
  bug_tracker_uri: https://github.com/CargoSense/semantic_logger_datadog/issues
45
46
  changelog_uri: https://github.com/CargoSense/semantic_logger_datadog/releases
46
- documentation_uri: https://rubydoc.info/gems/semantic_logger_datadog/0.1.0
47
+ documentation_uri: https://rubydoc.info/gems/semantic_logger_datadog/0.2.0
47
48
  homepage_uri: https://github.com/CargoSense/semantic_logger_datadog
48
49
  rubygems_mfa_required: 'true'
49
- source_code_uri: https://github.com/CargoSense/semantic_logger_datadog/tree/v0.1.0
50
+ source_code_uri: https://github.com/CargoSense/semantic_logger_datadog/tree/v0.2.0
50
51
  rdoc_options: []
51
52
  require_paths:
52
53
  - lib