google_logger 1.1.2 → 1.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: '0854a9725abc6767f415b602471c8d274633f85a8a05a3d33905fd48471d7d01'
4
- data.tar.gz: e5c61eb39cc7c29cf1f6137d7c9de8c1c24dbf2438a07d12650b73cc2a275c86
3
+ metadata.gz: 0b63f1300144826557fc796374cf5dcd15f608a7ba2044f68d011bbac2b01f88
4
+ data.tar.gz: cdef99457af4f3bc04c0c1f666f6014736e120d365a6c1d26560d0c5dacb9c1f
5
5
  SHA512:
6
- metadata.gz: 6c38e64fe55ce1b0750eb09178145ab1dae718ef2056408dfbdc6f7e469a302911e072c0a302b28e677f12590ce7f9f2ae5c1be0d878a47eba7297b0ee2e1982
7
- data.tar.gz: 7301212837685195f2c2e79e29b9f54928a0790a628c9f5784981a3ac886fc9ed04a1448e2b216c134767f607feb723b612c0bf4ca441ed3efe80bb53a163279
6
+ metadata.gz: 4cd40975a4e1aaa7accbcab858f63176b8edc345214b3a9292af2f244baa42f1e731838d7400a7505bfdce2d4950d5ec3852645ee453fdb4efb13d8c3d66c124
7
+ data.tar.gz: a8b3b972f21cfb69365b54c186e1135c3b35eb5725f2f00d70b6021df8c40f6b103409d491da9a9fca53bb402914ae5dcd6cb60b059c5df8abc405590aaa4147
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'logger'
4
+
5
+ module GoogleLogger
6
+ class JsonLogger < ::Logger
7
+ SEVERITY_MAPPING = {
8
+ UNKNOWN => :DEFAULT,
9
+ FATAL => :CRITICAL,
10
+ ERROR => :ERROR,
11
+ WARN => :WARNING,
12
+ INFO => :INFO,
13
+ DEBUG => :DEBUG
14
+ }.freeze
15
+
16
+ def initialize(default_log_name: 'default')
17
+ @default_log_name = default_log_name
18
+ @tagged = nil
19
+ self.level = DEBUG
20
+ end
21
+
22
+ private
23
+
24
+ #
25
+ # @see Logger#add
26
+ #
27
+ def add(severity, message = nil, progname = nil)
28
+ return true if message.blank? && progname.blank?
29
+
30
+ severity ||= UNKNOWN
31
+ return true if severity < level
32
+
33
+ create_formatted_log(severity, message, progname)
34
+ end
35
+
36
+ def create_formatted_log(severity, message = nil, progname = nil)
37
+ log_name = tagged? ? formatter.current_tags.join('.') : @default_log_name
38
+ GoogleLogger.create_entry(
39
+ message || progname,
40
+ log_name: log_name,
41
+ severity: SEVERITY_MAPPING.fetch(severity)
42
+ )
43
+ end
44
+
45
+ def tagged?
46
+ formatter.respond_to?(:current_tags) && formatter.current_tags.any?
47
+ end
48
+ end
49
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GoogleLogger
4
- VERSION = '1.1.2'
4
+ VERSION = '1.2.0'
5
5
  end
data/lib/google_logger.rb CHANGED
@@ -8,6 +8,7 @@ require 'google_logger/loggers/local_logger'
8
8
  require 'google_logger/loggers/base'
9
9
  require 'google_logger/controller_logging'
10
10
  require 'google_logger/params_replacer'
11
+ require 'google_logger/json_logger'
11
12
 
12
13
  # Main module which should serve as an interface to all functionalities
13
14
  module GoogleLogger
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google_logger
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Hric
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-04-05 00:00:00.000000000 Z
11
+ date: 2022-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: 5.2.4.5
27
+ - !ruby/object:Gem::Dependency
28
+ name: logger
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 1.5.1
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 1.5.1
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: stackdriver
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -50,6 +64,7 @@ files:
50
64
  - lib/google_logger.rb
51
65
  - lib/google_logger/configuration.rb
52
66
  - lib/google_logger/controller_logging.rb
67
+ - lib/google_logger/json_logger.rb
53
68
  - lib/google_logger/loggers/base.rb
54
69
  - lib/google_logger/loggers/cloud_logger.rb
55
70
  - lib/google_logger/loggers/local_logger.rb
@@ -61,11 +76,13 @@ licenses:
61
76
  metadata:
62
77
  homepage_uri: https://github.com/panter/google_logger
63
78
  source_code_uri: https://github.com/panter/google_logger
79
+ rubygems_mfa_required: 'true'
64
80
  post_install_message:
65
81
  rdoc_options: []
66
82
  require_paths:
67
83
  - lib
68
84
  - lib/google_logger
85
+ - lib/google_logger/json_logger
69
86
  - lib/google_logger/loggers
70
87
  required_ruby_version: !ruby/object:Gem::Requirement
71
88
  requirements:
@@ -78,7 +95,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
78
95
  - !ruby/object:Gem::Version
79
96
  version: '0'
80
97
  requirements: []
81
- rubygems_version: 3.1.2
98
+ rubygems_version: 3.2.3
82
99
  signing_key:
83
100
  specification_version: 4
84
101
  summary: Provides a simple interface to write logs to the google cloud platform.