manageiq-loggers 0.4.0 → 0.4.1
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 +4 -4
- data/.codeclimate.yml +1 -0
- data/CHANGELOG.md +7 -1
- data/lib/manageiq/loggers/cloud_watch.rb +3 -2
- data/lib/manageiq/loggers/journald.rb +29 -3
- data/lib/manageiq/loggers/version.rb +2 -2
- data/manageiq-loggers.gemspec +3 -1
- metadata +17 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f43cbf53e58f32f3e270f87d248dbf379a0d779be61ec33e72d8ee6f028a265d
|
4
|
+
data.tar.gz: a9dee3b993cef7a02617608887092ace4a7dd4aa0b4e79390225ce5311d485c5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5140757154082052608cb7e0d60fb902d186ff16c917217ac1a574e2ee9c199d4339e06bc8d0664d54b587c84416496d7a98f8439720e38ab2f1d3697a97fc52
|
7
|
+
data.tar.gz: 8a6a0da62b87fe90889835a42c0c7077b50cb5e6714e45e9e9850b39a6343e2264ae423b802b4681dba3c355e1ada1209e80fe8bc201cc10f148bee3f1f5663e
|
data/.codeclimate.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -5,6 +5,11 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
5
5
|
|
6
6
|
## [Unreleased]
|
7
7
|
|
8
|
+
## [0.4.1] - 2020-01-06
|
9
|
+
### Fixed
|
10
|
+
- Change CloudWatch logger log_group and log_stream values for easier debugging and unique identifiers [(#15)](https://github.com/ManageIQ/manageiq-loggers/pull/15)
|
11
|
+
- Enhancements to the journald logger to allow for easier debugging [(#11)](https://github.com/ManageIQ/manageiq-loggers/pull/11)
|
12
|
+
|
8
13
|
## [0.4.0] - 2019-08-15
|
9
14
|
### Changed
|
10
15
|
- The Cloud Watch logger will now also broadcast its log messages to the container logger [(#10)](https://github.com/ManageIQ/manageiq-loggers/pull/10)
|
@@ -24,7 +29,8 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
24
29
|
|
25
30
|
## [0.1.0] - 2019-01-08
|
26
31
|
|
27
|
-
[Unreleased]: https://github.com/ManageIQ/manageiq-loggers/compare/v0.4.
|
32
|
+
[Unreleased]: https://github.com/ManageIQ/manageiq-loggers/compare/v0.4.1...master
|
33
|
+
[0.4.1]: https://github.com/ManageIQ/manageiq-loggers/compare/v0.4.0...v0.4.1
|
28
34
|
[0.4.0]: https://github.com/ManageIQ/manageiq-loggers/compare/v0.3.0...v0.4.0
|
29
35
|
[0.3.0]: https://github.com/ManageIQ/manageiq-loggers/compare/v0.2.0...v0.3.0
|
30
36
|
[0.2.0]: https://github.com/ManageIQ/manageiq-loggers/compare/v0.1.1...v0.2.0
|
@@ -9,8 +9,9 @@ module ManageIQ
|
|
9
9
|
def self.new(*args)
|
10
10
|
access_key_id = ENV["CW_AWS_ACCESS_KEY_ID"].presence
|
11
11
|
secret_access_key = ENV["CW_AWS_SECRET_ACCESS_KEY"].presence
|
12
|
-
|
13
|
-
|
12
|
+
namespace = File.exist?(NAMESPACE_FILE) ? File.read(NAMESPACE_FILE) : nil
|
13
|
+
log_group_name = namespace || ENV["CLOUD_WATCH_LOG_GROUP"].presence
|
14
|
+
log_stream_name = ENV["HOSTNAME"].presence
|
14
15
|
|
15
16
|
container_logger = ManageIQ::Loggers::Container.new
|
16
17
|
return container_logger unless access_key_id && secret_access_key && log_group_name && log_stream_name
|
@@ -1,17 +1,33 @@
|
|
1
1
|
module ManageIQ
|
2
2
|
module Loggers
|
3
3
|
class Journald < Base
|
4
|
+
# An syslog identifier used when writing messages. The default is the progname.
|
5
|
+
attr_accessor :syslog_identifier
|
6
|
+
|
7
|
+
# Create and return a new ManageIQ::Loggers::Journald instance. The
|
8
|
+
# arguments to the initializer can be ignored unless you're multicasting.
|
9
|
+
#
|
10
|
+
# Internally we set our own formatter, and automatically set the
|
11
|
+
# progname option to 'manageiq' if not specified.
|
12
|
+
#
|
4
13
|
def initialize(logdev = nil, *args)
|
5
14
|
require "systemd-journal"
|
6
|
-
|
7
15
|
super(logdev, *args)
|
8
|
-
|
16
|
+
@formatter = Formatter.new
|
17
|
+
@progname ||= 'manageiq'
|
18
|
+
@syslog_identifier ||= @progname
|
9
19
|
end
|
10
20
|
|
21
|
+
# Comply with the VMDB::Logger interface. For a filename we simply use
|
22
|
+
# the string 'journald' since we're not using a backing file directly.
|
23
|
+
#
|
11
24
|
def filename
|
12
25
|
"journald"
|
13
26
|
end
|
14
27
|
|
28
|
+
# Redefine this method from the core Logger class. Internally this is
|
29
|
+
# the method used when .info, .warn, etc are called.
|
30
|
+
#
|
15
31
|
def add(severity, message = nil, progname = nil)
|
16
32
|
severity ||= Logger::UNKNOWN
|
17
33
|
return true if severity < @level
|
@@ -28,12 +44,22 @@ module ManageIQ
|
|
28
44
|
end
|
29
45
|
|
30
46
|
message = formatter.call(format_severity(severity), progname, message)
|
47
|
+
caller_object = caller_locations.last
|
31
48
|
|
32
|
-
Systemd::Journal.
|
49
|
+
Systemd::Journal.message(
|
50
|
+
:message => message,
|
51
|
+
:priority => log_level_map[severity],
|
52
|
+
:syslog_identifier => syslog_identifier,
|
53
|
+
:code_line => caller_object.lineno,
|
54
|
+
:code_file => caller_object.absolute_path
|
55
|
+
)
|
33
56
|
end
|
34
57
|
|
35
58
|
private
|
36
59
|
|
60
|
+
# Map the Systemd::Journal error levels to the Logger error levels. For
|
61
|
+
# unknown, we go with alert level.
|
62
|
+
#
|
37
63
|
def log_level_map
|
38
64
|
@log_level_map ||= {
|
39
65
|
Logger::UNKNOWN => Systemd::Journal::LOG_ALERT,
|
data/manageiq-loggers.gemspec
CHANGED
@@ -2,10 +2,11 @@
|
|
2
2
|
lib = File.expand_path("../lib", __FILE__)
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
4
|
require "manageiq/loggers/version"
|
5
|
+
require "rbconfig"
|
5
6
|
|
6
7
|
Gem::Specification.new do |spec|
|
7
8
|
spec.name = "manageiq-loggers"
|
8
|
-
spec.version =
|
9
|
+
spec.version = ManageIQ::Loggers::VERSION
|
9
10
|
spec.authors = ["ManageIQ Authors"]
|
10
11
|
|
11
12
|
spec.summary = %q{Loggers for ManageIQ projects}
|
@@ -29,4 +30,5 @@ Gem::Specification.new do |spec|
|
|
29
30
|
spec.add_development_dependency "rake", "~> 10.0"
|
30
31
|
spec.add_development_dependency "rspec", "~> 3.0"
|
31
32
|
spec.add_development_dependency "simplecov"
|
33
|
+
spec.add_development_dependency "systemd-journal" if RbConfig::CONFIG['host_os'] =~ /linux/i
|
32
34
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: manageiq-loggers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ManageIQ Authors
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-01-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -108,6 +108,20 @@ dependencies:
|
|
108
108
|
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: systemd-journal
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
111
125
|
description:
|
112
126
|
email:
|
113
127
|
executables: []
|
@@ -155,8 +169,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
155
169
|
- !ruby/object:Gem::Version
|
156
170
|
version: '0'
|
157
171
|
requirements: []
|
158
|
-
|
159
|
-
rubygems_version: 2.7.6.2
|
172
|
+
rubygems_version: 3.0.6
|
160
173
|
signing_key:
|
161
174
|
specification_version: 4
|
162
175
|
summary: Loggers for ManageIQ projects
|