sensu-plugins-logs 1.3.1 → 4.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG.md +57 -1
- data/README.md +139 -8
- data/bin/check-journal.rb +2 -0
- data/bin/check-log.rb +19 -14
- data/bin/handler-logevent.rb +18 -4
- data/bin/handler-show-event-config.rb +2 -0
- data/lib/sensu-plugins-logs.rb +2 -0
- data/lib/sensu-plugins-logs/version.rb +5 -3
- metadata +117 -27
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 7e3f61ef4191a130669cd96c51f92e2e056a3956250a6eb8e8d0d6bd1a2d4cea
|
4
|
+
data.tar.gz: 53ba20f2b003a0a82fb2b1c49476267429ce8191bad8b0ce3be8f7198ac25ab9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 528a3483a2a26a874ddce5aced719ee0faed20bf3d65726566a79e5cf128d6ac75410d471da9cc17531b2a669b561eca4679961bef85dbe009e952e3ca98096b
|
7
|
+
data.tar.gz: 8873f6c1bdad842645d32d64d54884b7678069936c178e5ed883beb8c3c0e5933524b6ef996c7aa8d9d316641ac12e67d9ca8c24dfffe83c5d600307feba1c61
|
data/CHANGELOG.md
CHANGED
@@ -5,6 +5,57 @@ This CHANGELOG follows the format listed [here](https://github.com/sensu-plugins
|
|
5
5
|
|
6
6
|
## [Unreleased]
|
7
7
|
|
8
|
+
## [4.1.0] - 2020-07-02
|
9
|
+
### Changed
|
10
|
+
- Updated rubocop development dependency to '~= 0.81.0'
|
11
|
+
- Updated rake development dependency to '~= 13.0'
|
12
|
+
|
13
|
+
### Added
|
14
|
+
- Updated asset build targets to support centos6
|
15
|
+
- Removed centos from bonsai asset definition
|
16
|
+
|
17
|
+
### Fixed
|
18
|
+
- debian asset target
|
19
|
+
|
20
|
+
## [4.0.0] - 2019-05-07
|
21
|
+
### Breaking Changes
|
22
|
+
- Bump `sensu-plugin` dependency from `~> 3.0` to `~> 4.0` you can read the changelog entries for [4.0](https://github.com/sensu-plugins/sensu-plugin/blob/master/CHANGELOG.md#400---2018-02-17), [3.0](https://github.com/sensu-plugins/sensu-plugin/blob/master/CHANGELOG.md#300---2018-12-04), and [2.0](https://github.com/sensu-plugins/sensu-plugin/blob/master/CHANGELOG.md#v200---2017-03-29)
|
23
|
+
|
24
|
+
### Added
|
25
|
+
- Travis build automation to generate Sensu Asset tarballs that can be used n conjunction with Sensu provided ruby runtime assets and the Bonsai Asset Index
|
26
|
+
- Require latest sensu-plugin for [Sensu Go support](https://github.com/sensu-plugins/sensu-plugin#sensu-go-enablement)
|
27
|
+
|
28
|
+
|
29
|
+
## [3.0.0] - 2018-12-15
|
30
|
+
### Breaking Changes
|
31
|
+
- updated to use sensu-plugin 3.0 with Sensu Go to Sensu Core 1.x migration option
|
32
|
+
|
33
|
+
### Changes
|
34
|
+
- 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)
|
35
|
+
|
36
|
+
### Added
|
37
|
+
- add ruby 2.5.1 into travis automation (@jspaleta)
|
38
|
+
|
39
|
+
### Fixed
|
40
|
+
- add rdoc to development dependancy to fix rake task errors ruby 2.5.1 (@jspaleta) (@dependabot)
|
41
|
+
- update dev dep for github-markup (@jspaleta) (@dependabot)
|
42
|
+
- update dev dep for codeclimate-test-reporter (@jspaleta) (@dependabot)
|
43
|
+
- update dev dep for serverspec (@jspaleta) (@dependabot)
|
44
|
+
- update dev dep for mixlib-shellout (@jspaleta) (@dependabot)
|
45
|
+
- update dev dep for rubocop (@jspaleta) (@dependabot)
|
46
|
+
|
47
|
+
## [2.0.0] - 2018-09-30
|
48
|
+
### Breaking Changes
|
49
|
+
- remove support for ruby versions `< 2.3.0` (@jspaleta)
|
50
|
+
|
51
|
+
### Added
|
52
|
+
- updated to use sensu-plugin 2.7 with 2.x to 1.x migration option (@jspaleta)
|
53
|
+
|
54
|
+
|
55
|
+
### Fixed
|
56
|
+
- check-log.rb: pattern is now required via option config (@cgeers)
|
57
|
+
- check-log.rb: update descriptions of crit and warn options (@cgeers)
|
58
|
+
|
8
59
|
## [1.3.1] - 2017-10-09
|
9
60
|
### Fixed
|
10
61
|
- check-log.rb: added `File::TRUNC` option to the state file to address scenerios where files were written to often and rotated which caused the offset to be wrong. This caused high diskio as it was trying to seek to a part of a non existent file or past the correct location in the file. (@georgespatton)
|
@@ -72,7 +123,12 @@ This CHANGELOG follows the format listed [here](https://github.com/sensu-plugins
|
|
72
123
|
### Added
|
73
124
|
- initial release
|
74
125
|
|
75
|
-
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/1.
|
126
|
+
[Unreleased]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/4.1.0...HEAD
|
127
|
+
[4.1.0]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/4.0.0...4.1.0
|
128
|
+
[4.0.0]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/3.0.0...4.0.0
|
129
|
+
[3.0.0]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/2.0.0...3.0.0
|
130
|
+
[3.0.0]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/2.0.0...3.0.0
|
131
|
+
[2.0.0]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/1.3.1...2.0.0
|
76
132
|
[1.3.1]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/1.3.0...1.3.1
|
77
133
|
[1.3.0]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/1.2.1...1.3.0
|
78
134
|
[1.2.1]: https://github.com/sensu-plugins/sensu-plugins-logs/compare/1.2.0...1.2.1
|
data/README.md
CHANGED
@@ -1,20 +1,114 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
[![Sensu Bonsai Asset](https://img.shields.io/badge/Bonsai-Download%20Me-brightgreen.svg?colorB=89C967&logo=sensu)](https://bonsai.sensu.io/assets/sensu-plugins/sensu-plugins-logs)
|
3
2
|
[ ![Build Status](https://travis-ci.org/sensu-plugins/sensu-plugins-logs.svg?branch=master)](https://travis-ci.org/sensu-plugins/sensu-plugins-logs)
|
4
3
|
[![Gem Version](https://badge.fury.io/rb/sensu-plugins-logs.svg)](http://badge.fury.io/rb/sensu-plugins-logs)
|
5
4
|
[![Code Climate](https://codeclimate.com/github/sensu-plugins/sensu-plugins-logs/badges/gpa.svg)](https://codeclimate.com/github/sensu-plugins/sensu-plugins-logs)
|
6
5
|
[![Test Coverage](https://codeclimate.com/github/sensu-plugins/sensu-plugins-logs/badges/coverage.svg)](https://codeclimate.com/github/sensu-plugins/sensu-plugins-logs)
|
7
6
|
[![Dependency Status](https://gemnasium.com/sensu-plugins/sensu-plugins-logs.svg)](https://gemnasium.com/sensu-plugins/sensu-plugins-logs)
|
8
7
|
|
9
|
-
##
|
8
|
+
## Sensu Plugins Logs Plugin
|
9
|
+
|
10
|
+
- [Overview](#overview)
|
11
|
+
- [Files](#files)
|
12
|
+
- [Usage examples](#usage-examples)
|
13
|
+
- [Configuration](#configuration)
|
14
|
+
- [Sensu Go](#sensu-go)
|
15
|
+
- [Asset registration](#asset-registration)
|
16
|
+
- [Asset definition](#asset-definition)
|
17
|
+
- [Check definition](#check-definition)
|
18
|
+
- [Sensu Core](#sensu-core)
|
19
|
+
- [Check definition](#check-definition)
|
20
|
+
- [Installation from source](#installation-from-source)
|
21
|
+
- [Additional notes](#additional-notes)
|
22
|
+
- [Contributing](#contributing)
|
23
|
+
|
24
|
+
### Overview
|
10
25
|
|
11
|
-
|
26
|
+
This plugin provides native instrumentation for monitoring log files or system logs via journald for regular expressions and a Sensu handler for logging Sensu events to log files.
|
27
|
+
|
28
|
+
### Files
|
12
29
|
* bin/check-journal.rb
|
13
30
|
* bin/check-log.rb
|
14
31
|
* bin/handler-logevent.rb
|
15
32
|
* bin/handler-show-event-config.rb
|
33
|
+
|
34
|
+
**check-journal**
|
35
|
+
Checks the systemd journal (`journald`) for a pattern.
|
16
36
|
|
17
|
-
|
37
|
+
**check-log**
|
38
|
+
Checks a log file for a regular expression, skipping lines that have already been read. Stores the number of bytes read and seeks to that position next time (instead of making a backup copy of the whole log file).
|
39
|
+
|
40
|
+
**handler-logevent**
|
41
|
+
Logs last `settings['logevent']['keep']` JSON events in files as `settings['logevent']['eventdir']/client/check_name/timestamp.action`.
|
42
|
+
|
43
|
+
**handler-show-event-config**
|
44
|
+
Lists the handler's config and the event it read.
|
45
|
+
|
46
|
+
## Usage examples
|
47
|
+
|
48
|
+
### Help
|
49
|
+
|
50
|
+
**check-journal.rb**
|
51
|
+
```
|
52
|
+
Usage: check-journal.rb (options)
|
53
|
+
-c, --critical COUNT Number of matches to consider a critical issue.
|
54
|
+
-j "ARGS1 ARGS2 ...", Pass additional arguments to journalctl, eg: "-u nginx.service"
|
55
|
+
--journalctl_args
|
56
|
+
-q, --pattern PAT Pattern to search for
|
57
|
+
-s, --since TIMESPEC Query journal entries on or newer than the specified date/time.
|
58
|
+
-v Verbose output. Helpful for debugging the plugin.
|
59
|
+
-w, --warning COUNT Number of matches to consider a warning
|
60
|
+
```
|
61
|
+
|
62
|
+
**handler-logevent.rb**
|
63
|
+
```
|
64
|
+
Usage: handler-logevent.rb (options)
|
65
|
+
--map-go-event-into-ruby Enable Sensu Go to Sensu Ruby event mapping. Alternatively set envvar SENSU_MAP_GO_EVENT_INTO_RUBY=1.
|
66
|
+
|
67
|
+
```
|
68
|
+
|
69
|
+
## Configuration
|
70
|
+
### Sensu Go
|
71
|
+
#### Asset registration
|
72
|
+
|
73
|
+
Assets are the best way to make use of this plugin. If you're not using an asset, please consider doing so! If you're using sensuctl 5.13 or later, you can use the following command to add the asset:
|
74
|
+
|
75
|
+
`sensuctl asset add sensu-plugins/sensu-plugins-logs`
|
76
|
+
|
77
|
+
If you're using an earlier version of sensuctl, you can download the asset definition from [this project's Bonsai asset index page](https://bonsai.sensu.io/assets/sensu-plugins/sensu-plugins-logs).
|
78
|
+
|
79
|
+
#### Asset definition
|
80
|
+
|
81
|
+
```yaml
|
82
|
+
---
|
83
|
+
type: Asset
|
84
|
+
api_version: core/v2
|
85
|
+
metadata:
|
86
|
+
name: sensu-plugins-logs
|
87
|
+
spec:
|
88
|
+
url: https://assets.bonsai.sensu.io/9ba6c6b27b5ca36538de3a13f014718ead3a1215/sensu-plugins-logs_4.0.0_centos_linux_amd64.tar.gz
|
89
|
+
sha512: 4e29c549924b5df01c7a8e0ed105659b3e9e81ca5c919548efd03a2ccaaf83d8605130ab80132e93db6f5e25c7acddbd7f6e8c6d185567eb5f73cd420dcc2f06
|
90
|
+
```
|
91
|
+
|
92
|
+
#### Check definition
|
93
|
+
|
94
|
+
```yaml
|
95
|
+
---
|
96
|
+
type: CheckConfig
|
97
|
+
spec:
|
98
|
+
command: "check-journal.rb"
|
99
|
+
handlers: []
|
100
|
+
high_flap_threshold: 0
|
101
|
+
interval: 10
|
102
|
+
low_flap_threshold: 0
|
103
|
+
publish: true
|
104
|
+
runtime_assets:
|
105
|
+
- sensu-plugins/sensu-plugins-logs
|
106
|
+
- sensu/sensu-ruby-runtime
|
107
|
+
subscriptions:
|
108
|
+
- linux
|
109
|
+
```
|
110
|
+
|
111
|
+
#### Handler definition
|
18
112
|
|
19
113
|
**handler-logevent**
|
20
114
|
```
|
@@ -26,8 +120,45 @@
|
|
26
120
|
}
|
27
121
|
```
|
28
122
|
|
29
|
-
|
123
|
+
### Sensu Core
|
124
|
+
|
125
|
+
#### Check definition
|
126
|
+
```json
|
127
|
+
{
|
128
|
+
"checks": {
|
129
|
+
"check-journal": {
|
130
|
+
"command": "check-journal.rb",
|
131
|
+
"subscribers": ["linux"],
|
132
|
+
"interval": 10,
|
133
|
+
"refresh": 10,
|
134
|
+
"handlers": ["influxdb"]
|
135
|
+
}
|
136
|
+
}
|
137
|
+
}
|
138
|
+
```
|
139
|
+
|
140
|
+
## Installation from source
|
141
|
+
|
142
|
+
### Sensu Go
|
143
|
+
|
144
|
+
See the instructions above for [asset registration](#asset-registration).
|
145
|
+
|
146
|
+
### Sensu Core
|
147
|
+
|
148
|
+
Install and setup plugins on [Sensu Core](https://docs.sensu.io/sensu-core/latest/installation/installing-plugins/).
|
149
|
+
|
150
|
+
## Additional notes
|
151
|
+
|
152
|
+
### Sensu Go Ruby Runtime Assets
|
153
|
+
|
154
|
+
The Sensu assets packaged from this repository are built against the Sensu Ruby runtime environment. When using these assets as part of a Sensu Go resource (check, mutator, or handler), make sure to include the corresponding [Sensu Ruby Runtime Asset](https://bonsai.sensu.io/assets/sensu/sensu-ruby-runtime) in the list of assets needed by the resource.
|
155
|
+
|
156
|
+
### Use this plugin with Sensu Go
|
157
|
+
|
158
|
+
To use the included handlers with Sensu Go, use the `--map-go-event-into-ruby` argument or set environment variable `SENSU_MAP_GO_EVENT_INTO_RUBY=1`.
|
159
|
+
|
160
|
+
Make sure the required 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`.
|
30
161
|
|
31
|
-
|
162
|
+
## Contributing
|
32
163
|
|
33
|
-
|
164
|
+
See [CONTRIBUTING.md](https://github.com/sensu-plugins/sensu-plugins-logs/blob/master/CONTRIBUTING.md) for information about contributing to this plugin.
|
data/bin/check-journal.rb
CHANGED
data/bin/check-log.rb
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
#! /usr/bin/env ruby
|
2
|
+
# frozen_string_literal: false
|
3
|
+
|
2
4
|
#
|
3
5
|
# check-log
|
4
6
|
#
|
@@ -55,7 +57,8 @@ class CheckLog < Sensu::Plugin::Check::CLI
|
|
55
57
|
option :pattern,
|
56
58
|
description: 'Pattern to search for',
|
57
59
|
short: '-q PAT',
|
58
|
-
long: '--pattern PAT'
|
60
|
+
long: '--pattern PAT',
|
61
|
+
required: true
|
59
62
|
|
60
63
|
# this check currently makes no attempt to try to save you from
|
61
64
|
# a bad regex such as being unbound. Regexes ending in anything like:
|
@@ -85,16 +88,17 @@ class CheckLog < Sensu::Plugin::Check::CLI
|
|
85
88
|
long: '--encoding ENCODING-PAGE'
|
86
89
|
|
87
90
|
option :warn,
|
88
|
-
description: 'Warning level if pattern
|
91
|
+
description: 'Warning level if pattern is found >= <warn> times',
|
89
92
|
short: '-w N',
|
90
93
|
long: '--warn N',
|
91
94
|
proc: proc(&:to_i)
|
92
95
|
|
93
96
|
option :crit,
|
94
|
-
description: 'Critical level if pattern
|
97
|
+
description: 'Critical level if pattern is found >= <crit> times. Default: 1',
|
95
98
|
short: '-c N',
|
96
99
|
long: '--crit N',
|
97
|
-
proc: proc(&:to_i)
|
100
|
+
proc: proc(&:to_i),
|
101
|
+
default: 1
|
98
102
|
|
99
103
|
option :only_warn,
|
100
104
|
description: 'Warn instead of critical on match',
|
@@ -145,7 +149,7 @@ class CheckLog < Sensu::Plugin::Check::CLI
|
|
145
149
|
|
146
150
|
def run
|
147
151
|
unknown 'No log file specified' unless config[:log_file] || config[:file_pattern]
|
148
|
-
unknown 'No
|
152
|
+
unknown 'No thresholds specified' unless config[:crit] || config[:warn]
|
149
153
|
file_list = []
|
150
154
|
file_list << config[:log_file] if config[:log_file]
|
151
155
|
if config[:file_pattern]
|
@@ -165,7 +169,7 @@ class CheckLog < Sensu::Plugin::Check::CLI
|
|
165
169
|
file_list.each do |log_file|
|
166
170
|
begin
|
167
171
|
open_log log_file
|
168
|
-
rescue => e
|
172
|
+
rescue StandardError => e
|
169
173
|
unknown "Could not open log file: #{e}"
|
170
174
|
end
|
171
175
|
n_warns, n_crits, accumulative_error = search_log
|
@@ -197,14 +201,15 @@ class CheckLog < Sensu::Plugin::Check::CLI
|
|
197
201
|
end
|
198
202
|
|
199
203
|
@state_file = File.join(state_dir, File.expand_path(log_file).sub(/^([A-Z]):\//, '\1/'))
|
200
|
-
@bytes_to_skip =
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
+
@bytes_to_skip =
|
205
|
+
begin
|
206
|
+
File.open(@state_file) do |file|
|
207
|
+
file.flock(File::LOCK_SH) unless Gem.win_platform?
|
208
|
+
file.readline.to_i
|
209
|
+
end
|
210
|
+
rescue StandardError
|
211
|
+
0
|
204
212
|
end
|
205
|
-
rescue
|
206
|
-
0
|
207
|
-
end
|
208
213
|
end
|
209
214
|
|
210
215
|
def search_log
|
@@ -243,7 +248,7 @@ class CheckLog < Sensu::Plugin::Check::CLI
|
|
243
248
|
n_warns = n_matched
|
244
249
|
end
|
245
250
|
FileUtils.mkdir_p(File.dirname(@state_file))
|
246
|
-
File.open(@state_file, File::RDWR | File::TRUNC | File::CREAT,
|
251
|
+
File.open(@state_file, File::RDWR | File::TRUNC | File::CREAT, 0o0644) do |file|
|
247
252
|
file.flock(File::LOCK_EX) unless Gem.win_platform?
|
248
253
|
file.write(@bytes_to_skip + bytes_read)
|
249
254
|
end
|
data/bin/handler-logevent.rb
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: false
|
3
|
+
|
2
4
|
#
|
3
5
|
# This handler logs last settings['logevent']['keep'] json events in files as
|
4
6
|
# settings['logevent']['eventdir']/client/check_name/timestamp.action
|
@@ -13,16 +15,28 @@ require 'json'
|
|
13
15
|
|
14
16
|
class LogEvent < Sensu::Handler
|
15
17
|
def handle
|
16
|
-
|
18
|
+
event_action = @event['action']
|
19
|
+
event_action ||= 'unknown'
|
20
|
+
check_name = @event['check']['name'] if (@event.include? 'check') && (@event['check'].include? 'name')
|
21
|
+
check_name ||= 'unknown'
|
22
|
+
client_name = @event['client']['name'] if (@event.include? 'client') && (@event['client'].include? 'name')
|
23
|
+
client_name ||= 'unknown'
|
24
|
+
check_executed = @event['check']['executed'] if (@event.include? 'check') && (@event['check'].include? 'executed')
|
25
|
+
check_executed ||= 'unknown'
|
26
|
+
dir_stub = settings['logevent']['eventdir'] if (settings.include? 'logevent') && (settings['logevent'].include? 'eventdir')
|
27
|
+
puts settings
|
28
|
+
raise 'logevent eventdir setting is missing' unless dir_stub
|
29
|
+
|
30
|
+
eventdir = "#{settings['logevent']['eventdir']}/#{client_name}/#{check_name}"
|
17
31
|
FileUtils.mkdir_p(eventdir)
|
18
32
|
|
19
|
-
File.open("#{eventdir}/#{
|
33
|
+
File.open("#{eventdir}/#{check_executed}.#{event_action}", 'w') do |f|
|
20
34
|
f.write(JSON.pretty_generate(@event))
|
21
35
|
end
|
22
36
|
|
23
|
-
events = Dir.glob("#{eventdir}/*.#{
|
37
|
+
events = Dir.glob("#{eventdir}/*.#{event_action}")
|
24
38
|
# #YELLOW
|
25
|
-
if settings['logevent']['keep'] < events.length # rubocop:disable GuardClause
|
39
|
+
if settings['logevent']['keep'] < events.length # rubocop:disable Style/GuardClause
|
26
40
|
FileUtils.rm_f(events.sort.reverse.shift(settings['logevent']['keep']))
|
27
41
|
end
|
28
42
|
end
|
data/lib/sensu-plugins-logs.rb
CHANGED
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: 1.
|
4
|
+
version: 4.1.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:
|
11
|
+
date: 2020-07-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sensu-plugin
|
@@ -16,112 +16,146 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '4.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: '4.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '1
|
33
|
+
version: '2.1'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '1
|
40
|
+
version: '2.1'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: codeclimate-test-reporter
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
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
|
-
name:
|
70
|
+
name: kitchen-docker
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
75
|
+
version: '2.6'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
82
|
+
version: '2.6'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: kitchen-localhost
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.
|
89
|
+
version: '0.3'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.
|
96
|
+
version: '0.3'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
98
|
+
name: mixlib-shellout
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
103
|
+
version: '2.2'
|
104
|
+
- - "<"
|
105
|
+
- !ruby/object:Gem::Version
|
106
|
+
version: 2.5.0
|
104
107
|
type: :development
|
105
108
|
prerelease: false
|
106
109
|
version_requirements: !ruby/object:Gem::Requirement
|
107
110
|
requirements:
|
108
111
|
- - "~>"
|
109
112
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
113
|
+
version: '2.2'
|
114
|
+
- - "<"
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
version: 2.5.0
|
117
|
+
- !ruby/object:Gem::Dependency
|
118
|
+
name: pry
|
119
|
+
requirement: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - "~>"
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: '0.10'
|
124
|
+
type: :development
|
125
|
+
prerelease: false
|
126
|
+
version_requirements: !ruby/object:Gem::Requirement
|
127
|
+
requirements:
|
128
|
+
- - "~>"
|
129
|
+
- !ruby/object:Gem::Version
|
130
|
+
version: '0.10'
|
111
131
|
- !ruby/object:Gem::Dependency
|
112
132
|
name: rake
|
113
133
|
requirement: !ruby/object:Gem::Requirement
|
114
134
|
requirements:
|
115
135
|
- - "~>"
|
116
136
|
- !ruby/object:Gem::Version
|
117
|
-
version: '
|
137
|
+
version: '13.0'
|
118
138
|
type: :development
|
119
139
|
prerelease: false
|
120
140
|
version_requirements: !ruby/object:Gem::Requirement
|
121
141
|
requirements:
|
122
142
|
- - "~>"
|
123
143
|
- !ruby/object:Gem::Version
|
124
|
-
version: '
|
144
|
+
version: '13.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'
|
125
159
|
- !ruby/object:Gem::Dependency
|
126
160
|
name: redcarpet
|
127
161
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,30 +170,86 @@ dependencies:
|
|
136
170
|
- - "~>"
|
137
171
|
- !ruby/object:Gem::Version
|
138
172
|
version: '3.2'
|
173
|
+
- !ruby/object:Gem::Dependency
|
174
|
+
name: rspec
|
175
|
+
requirement: !ruby/object:Gem::Requirement
|
176
|
+
requirements:
|
177
|
+
- - "~>"
|
178
|
+
- !ruby/object:Gem::Version
|
179
|
+
version: '3.4'
|
180
|
+
type: :development
|
181
|
+
prerelease: false
|
182
|
+
version_requirements: !ruby/object:Gem::Requirement
|
183
|
+
requirements:
|
184
|
+
- - "~>"
|
185
|
+
- !ruby/object:Gem::Version
|
186
|
+
version: '3.4'
|
187
|
+
- !ruby/object:Gem::Dependency
|
188
|
+
name: rubocop
|
189
|
+
requirement: !ruby/object:Gem::Requirement
|
190
|
+
requirements:
|
191
|
+
- - "~>"
|
192
|
+
- !ruby/object:Gem::Version
|
193
|
+
version: 0.81.0
|
194
|
+
type: :development
|
195
|
+
prerelease: false
|
196
|
+
version_requirements: !ruby/object:Gem::Requirement
|
197
|
+
requirements:
|
198
|
+
- - "~>"
|
199
|
+
- !ruby/object:Gem::Version
|
200
|
+
version: 0.81.0
|
201
|
+
- !ruby/object:Gem::Dependency
|
202
|
+
name: serverspec
|
203
|
+
requirement: !ruby/object:Gem::Requirement
|
204
|
+
requirements:
|
205
|
+
- - "~>"
|
206
|
+
- !ruby/object:Gem::Version
|
207
|
+
version: 2.41.3
|
208
|
+
type: :development
|
209
|
+
prerelease: false
|
210
|
+
version_requirements: !ruby/object:Gem::Requirement
|
211
|
+
requirements:
|
212
|
+
- - "~>"
|
213
|
+
- !ruby/object:Gem::Version
|
214
|
+
version: 2.41.3
|
215
|
+
- !ruby/object:Gem::Dependency
|
216
|
+
name: test-kitchen
|
217
|
+
requirement: !ruby/object:Gem::Requirement
|
218
|
+
requirements:
|
219
|
+
- - "~>"
|
220
|
+
- !ruby/object:Gem::Version
|
221
|
+
version: '1.6'
|
222
|
+
type: :development
|
223
|
+
prerelease: false
|
224
|
+
version_requirements: !ruby/object:Gem::Requirement
|
225
|
+
requirements:
|
226
|
+
- - "~>"
|
227
|
+
- !ruby/object:Gem::Version
|
228
|
+
version: '1.6'
|
139
229
|
- !ruby/object:Gem::Dependency
|
140
230
|
name: yard
|
141
231
|
requirement: !ruby/object:Gem::Requirement
|
142
232
|
requirements:
|
143
233
|
- - "~>"
|
144
234
|
- !ruby/object:Gem::Version
|
145
|
-
version:
|
235
|
+
version: 0.9.11
|
146
236
|
type: :development
|
147
237
|
prerelease: false
|
148
238
|
version_requirements: !ruby/object:Gem::Requirement
|
149
239
|
requirements:
|
150
240
|
- - "~>"
|
151
241
|
- !ruby/object:Gem::Version
|
152
|
-
version:
|
242
|
+
version: 0.9.11
|
153
243
|
description: |-
|
154
244
|
This plugin provides native log instrumentation
|
155
245
|
for monitoring, including: journald history, and
|
156
246
|
regex matching. Includes various log handlers.
|
157
247
|
email: "<sensu-users@googlegroups.com>"
|
158
248
|
executables:
|
159
|
-
- check-journal.rb
|
160
249
|
- check-log.rb
|
161
|
-
-
|
250
|
+
- check-journal.rb
|
162
251
|
- handler-show-event-config.rb
|
252
|
+
- handler-logevent.rb
|
163
253
|
extensions: []
|
164
254
|
extra_rdoc_files: []
|
165
255
|
files:
|
@@ -190,7 +280,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
190
280
|
requirements:
|
191
281
|
- - ">="
|
192
282
|
- !ruby/object:Gem::Version
|
193
|
-
version: '2.
|
283
|
+
version: '2.3'
|
194
284
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
195
285
|
requirements:
|
196
286
|
- - ">="
|
@@ -198,7 +288,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
198
288
|
version: '0'
|
199
289
|
requirements: []
|
200
290
|
rubyforge_project:
|
201
|
-
rubygems_version: 2.
|
291
|
+
rubygems_version: 2.7.7
|
202
292
|
signing_key:
|
203
293
|
specification_version: 4
|
204
294
|
summary: Sensu plugins for logs
|