sensu-plugins-logs 2.0.0 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +23 -3
- data/README.md +4 -0
- data/bin/check-log.rb +9 -8
- data/bin/handler-logevent.rb +15 -3
- data/lib/sensu-plugins-logs/version.rb +1 -1
- metadata +33 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c44dd4ef2de918ac705ee251a37f5e52172cc845b25f3a8ff3ae0b394a395b25
|
4
|
+
data.tar.gz: 1deab3e0ea3f7e80fa090d914248f97cf1db32beaeb12d3a90531fb3b80f99d4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 46468b7f7f0de3669d07b47cfb6ac57d02cb9de76a95f17252dc06fd05bbd22255f31f86b4d53ec80bb63c84bc9ebc919f4aedc162cf3fb01566159fd1487fb8
|
7
|
+
data.tar.gz: ec7e7f19260f4a434e4d6880a5a60b4bcec1a52d16c31d3570c762c55533e5ba694808401512810b672e4775a1575effde3cad54279dd0a8abe968392702efff
|
data/CHANGELOG.md
CHANGED
@@ -5,6 +5,25 @@ This CHANGELOG follows the format listed [here](https://github.com/sensu-plugins
|
|
5
5
|
|
6
6
|
## [Unreleased]
|
7
7
|
|
8
|
+
## [3.0.0] - 2018-12-15
|
9
|
+
### Breaking Changes
|
10
|
+
- updated to use sensu-plugin 3.0 with Sensu Go to Sensu Core 1.x migration option
|
11
|
+
|
12
|
+
### Changes
|
13
|
+
- Update handler-logevent.rb to gracefully handle missing check and client definitions in events. Missing attributes will use 'unknown' fallback strings so that malformed events will still be captured in the event logging directory structure instead of erroring out. Useful for diagnosing problems with malformed events when migrating to Sensu Go. (@jspaleta)
|
14
|
+
|
15
|
+
### Added
|
16
|
+
- add ruby 2.5.1 into travis automation (@jspaleta)
|
17
|
+
|
18
|
+
### Fixed
|
19
|
+
- add rdoc to development dependancy to fix rake task errors ruby 2.5.1 (@jspaleta) (@dependabot)
|
20
|
+
- update dev dep for github-markup (@jspaleta) (@dependabot)
|
21
|
+
- update dev dep for codeclimate-test-reporter (@jspaleta) (@dependabot)
|
22
|
+
- update dev dep for serverspec (@jspaleta) (@dependabot)
|
23
|
+
- update dev dep for mixlib-shellout (@jspaleta) (@dependabot)
|
24
|
+
- update dev dep for rubocop (@jspaleta) (@dependabot)
|
25
|
+
|
26
|
+
## [2.0.0] - 2018-09-30
|
8
27
|
### Breaking Changes
|
9
28
|
- remove support for ruby versions `< 2.3.0` (@jspaleta)
|
10
29
|
|
@@ -13,8 +32,8 @@ This CHANGELOG follows the format listed [here](https://github.com/sensu-plugins
|
|
13
32
|
|
14
33
|
|
15
34
|
### Fixed
|
16
|
-
- check-log.rb: pattern is now required via option config
|
17
|
-
- check-log.rb: update descriptions of crit and warn options
|
35
|
+
- check-log.rb: pattern is now required via option config (@cgeers)
|
36
|
+
- check-log.rb: update descriptions of crit and warn options (@cgeers)
|
18
37
|
|
19
38
|
## [1.3.1] - 2017-10-09
|
20
39
|
### Fixed
|
@@ -83,7 +102,8 @@ This CHANGELOG follows the format listed [here](https://github.com/sensu-plugins
|
|
83
102
|
### Added
|
84
103
|
- initial release
|
85
104
|
|
86
|
-
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/
|
105
|
+
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/3.0.0...HEAD
|
106
|
+
[3.0.0]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/2.0.0...3.0.0
|
87
107
|
[2.0.0]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/1.3.1...2.0.0
|
88
108
|
[1.3.1]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/1.3.0...1.3.1
|
89
109
|
[1.3.0]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/1.2.1...1.3.0
|
data/README.md
CHANGED
@@ -31,3 +31,7 @@
|
|
31
31
|
[Installation and Setup](http://sensu-plugins.io/docs/installation_instructions.html)
|
32
32
|
|
33
33
|
## Notes
|
34
|
+
### Using this plugin with Sensu Go
|
35
|
+
* To use included handlers with Sensu Go, use `--map-go-event-into-ruby` argument or set environment variable `SENSU_MAP_GO_EVENT_INTO_RUBY=1`
|
36
|
+
|
37
|
+
* Make sure necessary handler configuration json exists under `/etc/sensu/conf.d/` or at a path in the colon separated list of files in the environment variable `SENSU_CONFIG_FILES`
|
data/bin/check-log.rb
CHANGED
@@ -167,7 +167,7 @@ class CheckLog < Sensu::Plugin::Check::CLI
|
|
167
167
|
file_list.each do |log_file|
|
168
168
|
begin
|
169
169
|
open_log log_file
|
170
|
-
rescue => e
|
170
|
+
rescue StandardError => e
|
171
171
|
unknown "Could not open log file: #{e}"
|
172
172
|
end
|
173
173
|
n_warns, n_crits, accumulative_error = search_log
|
@@ -199,14 +199,15 @@ class CheckLog < Sensu::Plugin::Check::CLI
|
|
199
199
|
end
|
200
200
|
|
201
201
|
@state_file = File.join(state_dir, File.expand_path(log_file).sub(/^([A-Z]):\//, '\1/'))
|
202
|
-
@bytes_to_skip =
|
203
|
-
|
204
|
-
|
205
|
-
|
202
|
+
@bytes_to_skip =
|
203
|
+
begin
|
204
|
+
File.open(@state_file) do |file|
|
205
|
+
file.flock(File::LOCK_SH) unless Gem.win_platform?
|
206
|
+
file.readline.to_i
|
207
|
+
end
|
208
|
+
rescue StandardError
|
209
|
+
0
|
206
210
|
end
|
207
|
-
rescue
|
208
|
-
0
|
209
|
-
end
|
210
211
|
end
|
211
212
|
|
212
213
|
def search_log
|
data/bin/handler-logevent.rb
CHANGED
@@ -13,14 +13,26 @@ require 'json'
|
|
13
13
|
|
14
14
|
class LogEvent < Sensu::Handler
|
15
15
|
def handle
|
16
|
-
|
16
|
+
event_action = @event['action']
|
17
|
+
event_action ||= 'unknown'
|
18
|
+
check_name = @event['check']['name'] if (@event.include? 'check') && (@event['check'].include? 'name')
|
19
|
+
check_name ||= 'unknown'
|
20
|
+
client_name = @event['client']['name'] if (@event.include? 'client') && (@event['client'].include? 'name')
|
21
|
+
client_name ||= 'unknown'
|
22
|
+
check_executed = @event['check']['executed'] if (@event.include? 'check') && (@event['check'].include? 'executed')
|
23
|
+
check_executed ||= 'unknown'
|
24
|
+
dir_stub = settings['logevent']['eventdir'] if (settings.include? 'logevent') && (settings['logevent'].include? 'eventdir')
|
25
|
+
puts settings
|
26
|
+
raise 'logevent eventdir setting is missing' unless dir_stub
|
27
|
+
|
28
|
+
eventdir = "#{settings['logevent']['eventdir']}/#{client_name}/#{check_name}"
|
17
29
|
FileUtils.mkdir_p(eventdir)
|
18
30
|
|
19
|
-
File.open("#{eventdir}/#{
|
31
|
+
File.open("#{eventdir}/#{check_executed}.#{event_action}", 'w') do |f|
|
20
32
|
f.write(JSON.pretty_generate(@event))
|
21
33
|
end
|
22
34
|
|
23
|
-
events = Dir.glob("#{eventdir}/*.#{
|
35
|
+
events = Dir.glob("#{eventdir}/*.#{event_action}")
|
24
36
|
# #YELLOW
|
25
37
|
if settings['logevent']['keep'] < events.length # rubocop:disable GuardClause
|
26
38
|
FileUtils.rm_f(events.sort.reverse.shift(settings['logevent']['keep']))
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sensu-plugins-logs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sensu-Plugins and contributors
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-12-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sensu-plugin
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '3.0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '3.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,28 +44,28 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '0
|
47
|
+
version: '1.0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '0
|
54
|
+
version: '1.0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: github-markup
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '3.0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '3.0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: kitchen-docker
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -98,22 +98,22 @@ dependencies:
|
|
98
98
|
name: mixlib-shellout
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - "<"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: 2.3.0
|
104
101
|
- - "~>"
|
105
102
|
- !ruby/object:Gem::Version
|
106
103
|
version: '2.2'
|
104
|
+
- - "<"
|
105
|
+
- !ruby/object:Gem::Version
|
106
|
+
version: 2.5.0
|
107
107
|
type: :development
|
108
108
|
prerelease: false
|
109
109
|
version_requirements: !ruby/object:Gem::Requirement
|
110
110
|
requirements:
|
111
|
-
- - "<"
|
112
|
-
- !ruby/object:Gem::Version
|
113
|
-
version: 2.3.0
|
114
111
|
- - "~>"
|
115
112
|
- !ruby/object:Gem::Version
|
116
113
|
version: '2.2'
|
114
|
+
- - "<"
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
version: 2.5.0
|
117
117
|
- !ruby/object:Gem::Dependency
|
118
118
|
name: pry
|
119
119
|
requirement: !ruby/object:Gem::Requirement
|
@@ -142,6 +142,20 @@ dependencies:
|
|
142
142
|
- - "~>"
|
143
143
|
- !ruby/object:Gem::Version
|
144
144
|
version: '12.0'
|
145
|
+
- !ruby/object:Gem::Dependency
|
146
|
+
name: rdoc
|
147
|
+
requirement: !ruby/object:Gem::Requirement
|
148
|
+
requirements:
|
149
|
+
- - "~>"
|
150
|
+
- !ruby/object:Gem::Version
|
151
|
+
version: '6.0'
|
152
|
+
type: :development
|
153
|
+
prerelease: false
|
154
|
+
version_requirements: !ruby/object:Gem::Requirement
|
155
|
+
requirements:
|
156
|
+
- - "~>"
|
157
|
+
- !ruby/object:Gem::Version
|
158
|
+
version: '6.0'
|
145
159
|
- !ruby/object:Gem::Dependency
|
146
160
|
name: redcarpet
|
147
161
|
requirement: !ruby/object:Gem::Requirement
|
@@ -176,28 +190,28 @@ dependencies:
|
|
176
190
|
requirements:
|
177
191
|
- - "~>"
|
178
192
|
- !ruby/object:Gem::Version
|
179
|
-
version: 0.
|
193
|
+
version: 0.60.0
|
180
194
|
type: :development
|
181
195
|
prerelease: false
|
182
196
|
version_requirements: !ruby/object:Gem::Requirement
|
183
197
|
requirements:
|
184
198
|
- - "~>"
|
185
199
|
- !ruby/object:Gem::Version
|
186
|
-
version: 0.
|
200
|
+
version: 0.60.0
|
187
201
|
- !ruby/object:Gem::Dependency
|
188
202
|
name: serverspec
|
189
203
|
requirement: !ruby/object:Gem::Requirement
|
190
204
|
requirements:
|
191
205
|
- - "~>"
|
192
206
|
- !ruby/object:Gem::Version
|
193
|
-
version: 2.
|
207
|
+
version: 2.41.3
|
194
208
|
type: :development
|
195
209
|
prerelease: false
|
196
210
|
version_requirements: !ruby/object:Gem::Requirement
|
197
211
|
requirements:
|
198
212
|
- - "~>"
|
199
213
|
- !ruby/object:Gem::Version
|
200
|
-
version: 2.
|
214
|
+
version: 2.41.3
|
201
215
|
- !ruby/object:Gem::Dependency
|
202
216
|
name: test-kitchen
|
203
217
|
requirement: !ruby/object:Gem::Requirement
|
@@ -274,7 +288,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
274
288
|
version: '0'
|
275
289
|
requirements: []
|
276
290
|
rubyforge_project:
|
277
|
-
rubygems_version: 2.7.
|
291
|
+
rubygems_version: 2.7.8
|
278
292
|
signing_key:
|
279
293
|
specification_version: 4
|
280
294
|
summary: Sensu plugins for logs
|