zuora_observability 0.1.0.pre.d → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f4a7c9aeb569ef2885c3f8b298771323d5a2619340b47e390d790966794b67df
4
- data.tar.gz: 417163de43f269d1c5f82e2bf1c09c5066a5f752bc8e4d77d6bf27435de1d137
3
+ metadata.gz: 1a94e262b55a7a805865de68758223aa220ac3a5629e9cd40e80c02866b88b47
4
+ data.tar.gz: e96b42e4ecd613654b5a459081804b06e8e88c4140a37170f5c52fce29eaed31
5
5
  SHA512:
6
- metadata.gz: e8435b4a4aa06bebf6d0924c8f39d71da9b96debf12582e0b92d147389e8072c8bcc40c13e2978a81cc7c8b0da9efcb540e3fa864a91e90f0b001b76d0c45667
7
- data.tar.gz: a2adea8aef5fc82317077e4f68eb7061c66ca53991a545642deac1f5367cf35dfbae329fe83ee6feb3aa727e958cc0c6d7cae27c9062852affe29f8048ca6227
6
+ metadata.gz: a77e6d19eb74c9b0bfd16459e71eefc15ebadd70f32a0e7d88280644db96ac6ba716100007380d883f7431bd90d430a1670aa1f2c312cf86c188fcf8f1ad04eb
7
+ data.tar.gz: 826a76a11e9b47b6a7bf79e91c013f493cb038ffbe3a217f3fa78f7a3740ffa94c625778cb859a675bcbb678865b92153eaadc651802b251b4d03f7d06fadb71
data/README.md CHANGED
@@ -2,24 +2,10 @@
2
2
 
3
3
  A ruby gem to enable observability into rails applications
4
4
 
5
- ## Usage
6
-
7
- - [Logging](doc/logging.md)
8
-
9
- ### Configuration
10
-
11
- Observability can be configured through an initializer as shown below.
12
-
13
- ```ruby
14
- # config/initializers/zuora_observability.rb
15
- ZuoraObservability.configure do |config|
16
- config.enable_metrics = true
17
- end
18
- ```
5
+ ## Prerequisites
19
6
 
20
- | Configuration Field | Default Value | Description |
21
- | ------------------- | ---------------------------------------------------------------- | ------------------------------------ |
22
- | `json_logging` | `false` in development/test, `true` otherwise | Use structured JSON logging for ZuoraObservability::Logger. **This configuration option cannot be changed in an initializer, but can be set to `true` with the presence of `ZUORA_JSON_LOGGING` environment variable** |
7
+ - Ruby 2.5+
8
+ - Rails 5.0+
23
9
 
24
10
  ## Installation
25
11
 
@@ -41,6 +27,10 @@ Or install it yourself as:
41
27
  $ gem install zuora_observability
42
28
  ```
43
29
 
30
+ ## Usage
31
+
32
+ - [Logging](doc/logging.md)
33
+
44
34
  ## License
45
35
 
46
36
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
@@ -1,16 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  if defined?(Resque.logger)
4
- Resque.logger = ZuoraObservability::Logger.custom_logger(name: 'Resque', type: 'Monologger', level: MonoLogger::INFO)
4
+ Resque.logger = ZuoraObservability::Logger.custom_logger(name: 'Resque')
5
5
  if defined?(Resque::Scheduler)
6
6
  Resque::Scheduler.logger = ZuoraObservability::Logger.custom_logger(name: 'ResqueScheduler')
7
7
  end
8
8
  end
9
9
 
10
10
  if defined?(Delayed::Worker.logger)
11
- Delayed::Worker.logger = ZuoraObservability::Logger.custom_logger(
12
- name: 'DelayedJob', type: 'Monologger', level: MonoLogger::INFO
13
- )
11
+ Delayed::Worker.logger = ZuoraObservability::Logger.custom_logger(name: 'DelayedJob', level: Logger::INFO)
14
12
  end
15
13
 
16
14
  if defined?(Makara)
@@ -18,9 +16,9 @@ if defined?(Makara)
18
16
  end
19
17
 
20
18
  if defined?(ElasticAPM) && ElasticAPM.running?
21
- ElasticAPM.agent.config.logger = ZuoraObservability::Logger.custom_logger(name: 'ElasticAPM', level: MonoLogger::WARN)
19
+ ElasticAPM.agent.config.logger = ZuoraObservability::Logger.custom_logger(name: 'ElasticAPM', level: Logger::WARN)
22
20
  end
23
21
 
24
22
  if defined?(ActionMailer)
25
- ActionMailer::Base.logger = ZuoraObservability::Logger.custom_logger(name: 'ActionMailer', type: 'Monologger')
23
+ ActionMailer::Base.logger = ZuoraObservability::Logger.custom_logger(name: 'ActionMailer')
26
24
  end
@@ -17,8 +17,7 @@ module ZuoraObservability
17
17
  end
18
18
 
19
19
  def app_name
20
- # parent_name is deprecated in Rails 6.0, removed in 6.1
21
- ENV['DEIS_APP'].presence || Rails.application.class.parent_name
20
+ ENV['DEIS_APP'].presence || app_parent_name
22
21
  end
23
22
 
24
23
  def pod_name
@@ -40,6 +39,16 @@ module ZuoraObservability
40
39
  end
41
40
  return p_type
42
41
  end
42
+
43
+ private
44
+
45
+ def app_parent_name
46
+ if Rails::VERSION::MAJOR >= 6 && Rails::VERSION::MINOR >= 1
47
+ Rails.application.class.module_parent_name
48
+ else
49
+ Rails.application.class.parent_name
50
+ end
51
+ end
43
52
  end
44
53
  end
45
54
  end
@@ -13,6 +13,7 @@ module ZuoraObservability
13
13
  CONTENT_TYPE
14
14
  ORIGINAL_FULLPATH
15
15
  QUERY_STRING
16
+ HTTP_COOKIE
16
17
  ].freeze
17
18
 
18
19
  IGNORE_PARAMS = %w[controller action format].freeze
@@ -37,13 +38,6 @@ module ZuoraObservability
37
38
  items.merge!({ headers: filtered_headers })
38
39
  end
39
40
 
40
- if Thread.current[:appinstance].present?
41
- items.merge!({connect_user: Thread.current[:appinstance].connect_user, new_session: Thread.current[:appinstance].new_session_message})
42
- if Thread.current[:appinstance].logitems.present? && Thread.current[:appinstance].logitems.class == Hash
43
- items.merge!(Thread.current[:appinstance].logitems)
44
- end
45
- end
46
-
47
41
  items
48
42
  end
49
43
 
@@ -50,7 +50,8 @@ module ZuoraObservability
50
50
  ecs: { version: ECS_VERSION },
51
51
  log: { level: severity, logger: progname || @app_name },
52
52
  service: { name: Env.name, version: Env.version },
53
- trace: { id: data[:trace_id] }
53
+ trace: { id: data[:trace_id] },
54
+ tags: ['zecs']
54
55
  }
55
56
  end
56
57
 
@@ -107,6 +108,7 @@ module ZuoraObservability
107
108
  # user
108
109
  def user_fields(data)
109
110
  {
111
+ id: data[:user_id],
110
112
  email: data[:email]
111
113
  }.compact
112
114
  end
@@ -124,7 +126,7 @@ module ZuoraObservability
124
126
 
125
127
  # The Zuora Extension to ECS defined by ZECS
126
128
  module ZuoraFields
127
- ZECS_VERSION = '1.0'
129
+ ZECS_VERSION = '1.1'
128
130
 
129
131
  class << self
130
132
  # zuora top level field
@@ -145,6 +147,7 @@ module ZuoraObservability
145
147
  def base_fields(data)
146
148
  {
147
149
  apartment_id: data[:app_instance_id],
150
+ cp_id: data[:zuora_track_id],
148
151
  environment: data[:environment],
149
152
  tenant_id: data[:tenant_ids],
150
153
  trace_id: data[:zuora_trace_id]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ZuoraObservability
4
- VERSION = '0.1.0-d'
4
+ VERSION = '0.2.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zuora_observability
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.pre.d
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hartley McGuire
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-12 00:00:00.000000000 Z
11
+ date: 2021-03-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: lograge
@@ -140,16 +140,16 @@ dependencies:
140
140
  name: rubocop
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - "~>"
143
+ - - ">="
144
144
  - !ruby/object:Gem::Version
145
- version: '1.2'
145
+ version: '0'
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - "~>"
150
+ - - ">="
151
151
  - !ruby/object:Gem::Version
152
- version: '1.2'
152
+ version: '0'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: rubocop-rails
155
155
  requirement: !ruby/object:Gem::Requirement
@@ -168,16 +168,16 @@ dependencies:
168
168
  name: rubocop-rspec
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
- - - "~>"
171
+ - - ">="
172
172
  - !ruby/object:Gem::Version
173
- version: 2.0.0.pre
173
+ version: '0'
174
174
  type: :development
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
- - - "~>"
178
+ - - ">="
179
179
  - !ruby/object:Gem::Version
180
- version: 2.0.0.pre
180
+ version: '0'
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: simplecov
183
183
  requirement: !ruby/object:Gem::Requirement
@@ -280,11 +280,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
280
280
  version: '2.5'
281
281
  required_rubygems_version: !ruby/object:Gem::Requirement
282
282
  requirements:
283
- - - ">"
283
+ - - ">="
284
284
  - !ruby/object:Gem::Version
285
- version: 1.3.1
285
+ version: '0'
286
286
  requirements: []
287
- rubygems_version: 3.1.4
287
+ rubygems_version: 3.2.3
288
288
  signing_key:
289
289
  specification_version: 4
290
290
  summary: Summary of ZuoraObservability.