sensu-plugins-postfix 0.0.2 → 2.0.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
- SHA1:
3
- metadata.gz: 5d0eacd72b20047eaee73d85bec21a5084f7bce4
4
- data.tar.gz: bd601593b55ec842b14e9de80946735dfebcc3ee
2
+ SHA256:
3
+ metadata.gz: 0a8d27ce3bf67f47c0df7def5e47ab42934eac724aaab98080a155473b6afbcf
4
+ data.tar.gz: 5059c5f6ae331b27a5ad2a3680d539279f7678dabd3ebf800e9c2d2c20fcd09d
5
5
  SHA512:
6
- metadata.gz: fdff25caa9afea3e86ef27ad1782d51874272bae7271be38bb9bc5d16e216c3dfdcd5b5d3c33ce1a434e094aae509a2bb4ade943343dc32202deadb5ceccef68
7
- data.tar.gz: 8e25885d2eca4eea8b0df767bdd0d25825f48a5ae32e023c92c9046fe0545e8c588cb29fd7fb621a9517a558dc5a2e5639a12a44ecdcc8d2526ace8220d30066
6
+ metadata.gz: a07f629db60a1fb9d5d5f43e0fc88247ada5c5dba85955c847dcedd6f08b85f15871aea52bf7961e11822453975ccb89fceb68ba7109a29c7ee16de84c821cf8
7
+ data.tar.gz: df530861ebbb506cd9230f1258711748fad4bb32fe953f010b705429fc46cb256b15c754c092a3b18008ff8dbc146668e9f8a77ec5bfecb6bef36a6782ed2d7f
@@ -1,11 +1,57 @@
1
- #Change Log
1
+ # Change Log
2
2
  This project adheres to [Semantic Versioning](http://semver.org/).
3
3
 
4
4
  This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachangelog.com/)
5
5
 
6
- ## Unreleased][unreleased]
6
+ ## [Unreleased]
7
7
 
8
- ## 0.0.1 - 2015-04-30
8
+ ## [2.0.0] - 2020-08-24
9
+ ### Breaking Changes
10
+ - Remove support for old Ruby (< 2.3)
11
+ - Remove kitchen test reliant on Sensu Core
12
+ - Bump sensu-plugin dependency from ~> 1.2 to ~> 4.0
13
+
14
+ ### Changed
15
+ - Updated bundler dependancy to '~> 2.1'
16
+ - Updated rubocop dependency to '~> 0.81.0'
17
+ - Remediated rubocop issues
18
+ - Updated codeclimate-test-reporter to '~> 1.0'
19
+ - Updated rake dependency to '~> 13.0'
20
+
21
+ ## [1.0.0] - 2017-07-26
22
+ ### Breaking Change
23
+ - Remove support for Ruby 1.9.3 (@eheydrick)
9
24
 
25
+ ### Added
26
+ - Testing on Ruby 2.4.1 (@Evesy)
27
+
28
+ ### Fixed
29
+ - Fix the integration tests (@RoboticCheese)
30
+
31
+ ## [0.1.0] - 2016-01-29
32
+ ### Added
33
+ - Add support to `check-mailq` for inspecting each Postfix queue individually
34
+ - Add a `check-mail-delay` script to support alerting by age of queue items
35
+
36
+ ### Fixed
37
+ - metrics-mailq.rb: don't output stderr when the mail queue is empty
38
+
39
+ ## [0.0.3] - 2015-07-14
40
+ ### Changed
41
+ - executable tag in gemspec
42
+ - updated sensu-plugin gem to 1.2.0
43
+
44
+ ## [0.0.2] - 2015-05-30
45
+ ### Fixed
46
+ - executable tag in gemspec
47
+
48
+ ## 0.0.1 - 2015-04-30
10
49
  ### Added
11
50
  - initial release
51
+
52
+ [Unreleased]: https://github.com/sensu-plugins/sensu-plugins-postfix/compare/2.0.0...HEAD
53
+ [2.0.0]: https://github.com/sensu-plugins/sensu-plugins-postfix/compare/1.0.0...2.0.0
54
+ [1.0.0]: https://github.com/sensu-plugins/sensu-plugins-postfix/compare/0.1.0...1.0.0
55
+ [0.1.0]: https://github.com/sensu-plugins/sensu-plugins-postfix/compare/0.0.3...0.1.0
56
+ [0.0.3]: https://github.com/sensu-plugins/sensu-plugins-postfix/compare/0.0.2...0.0.3
57
+ [0.0.2]: https://github.com/sensu-plugins/sensu-plugins-postfix/compare/0.0.1...0.0.2
data/README.md CHANGED
@@ -5,18 +5,18 @@
5
5
  [![Code Climate](https://codeclimate.com/github/sensu-plugins/sensu-plugins-postfix/badges/gpa.svg)](https://codeclimate.com/github/sensu-plugins/sensu-plugins-postfix)
6
6
  [![Test Coverage](https://codeclimate.com/github/sensu-plugins/sensu-plugins-postfix/badges/coverage.svg)](https://codeclimate.com/github/sensu-plugins/sensu-plugins-postfix)
7
7
  [![Dependency Status](https://gemnasium.com/sensu-plugins/sensu-plugins-postfix.svg)](https://gemnasium.com/sensu-plugins/sensu-plugins-postfix)
8
- [![Codeship Status for sensu-plugins/sensu-plugins-postfix](https://codeship.com/projects/e597c620-e89b-0132-4dfc-62885e5c211b/status?branch=master)](https://codeship.com/projects/82844)
9
8
 
10
9
  ## Functionality
11
10
 
12
11
  ## Files
13
12
  * bin/check-mailq.rb
13
+ * bin/check-mail-delay.rb
14
14
  * bin/metrics-mailq.rb
15
15
 
16
16
  ## Usage
17
17
 
18
18
  ## Installation
19
19
 
20
- [Installation and Setup](https://github.com/sensu-plugins/documentation/blob/master/user_docs/installation_instructions.md)
20
+ [Installation and Setup](http://sensu-plugins.io/docs/installation_instructions.html)
21
21
 
22
22
  ## Notes
@@ -0,0 +1,174 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: false
3
+
4
+ # check-mail-delay
5
+ #
6
+ # DESCRIPTION:
7
+ # Check for mail delays in the Postfix mail queue
8
+ #
9
+ # OUTPUT:
10
+ # Plain text
11
+ #
12
+ # PLATFORMS:
13
+ # Linux; any platform with Postfix, egrep, and awk
14
+ #
15
+ # DEPENDENCIES:
16
+ # gem: sensu-plugin
17
+ #
18
+ # USAGE:
19
+ # ./check-mail-delay.rb [-p path_to_mailq] [-q queue] [-d delay] -w warn -c crit
20
+ # ./check-mail-delay.rb -w 100 -c 200
21
+ # ./check-mail-delay.rb -q hold -w 50 -c 100
22
+ # ./check-mail-delay.rb -q deferred -d 7200 -w 10 -c 20
23
+ # ./check-mail-delay.rb -p /usr/local/bin/mailq -q active -d 300 -w 100 -c 200
24
+ #
25
+ # NOTES:
26
+ # This is split out into its own check because, unlike `check-mailq`, it
27
+ # requires storing details about every message in the queue in memory, which
28
+ # may not be desirable on heavily-trafficked systems.
29
+ #
30
+ # LICENSE:
31
+ # Jonathan Hartman <j@hartman.io>
32
+ # Released under the same terms as Sensu (the MIT license); see LICENSE
33
+ # for details.
34
+ #
35
+
36
+ require 'date'
37
+ require 'sensu-plugin/check/cli'
38
+
39
+ class PostfixMailDelay < Sensu::Plugin::Check::CLI
40
+ option :path,
41
+ short: '-p MAILQ_PATH',
42
+ long: '--path MAILQ_PATH',
43
+ description: 'Path to the postfix mailq binary. Defaults to /usr/bin/mailq',
44
+ default: '/usr/bin/mailq'
45
+
46
+ option :queue,
47
+ short: '-q QUEUE_NAME',
48
+ long: '--queue QUEUE_NAME',
49
+ description: 'The queue to check (active, deferred, hold, ' \
50
+ "incoming, or all). Defaults to 'all'",
51
+ default: 'all'
52
+
53
+ option :delay,
54
+ short: '-d DELAY_IN_SECONDS',
55
+ long: '--delay DELAY_IN_SECONDS',
56
+ description: 'Age in seconds of messages to look for',
57
+ default: 3600
58
+
59
+ option :warning,
60
+ short: '-w WARN_NUM',
61
+ long: '--warnnum WARN_NUM',
62
+ description: 'Number of delayed messages considered a worth a warning',
63
+ required: true
64
+
65
+ option :critical,
66
+ short: '-c CRIT_NUM',
67
+ long: '--critnum CRIT_NUM',
68
+ description: 'Number of delayed messages considered to be critical',
69
+ required: true
70
+
71
+ def run
72
+ count = 0
73
+ timestamps = send("queue_data_#{config[:queue]}")
74
+ timestamps.each do |t|
75
+ count += 1 if check_age_of(t) > config[:delay].to_i
76
+ end
77
+
78
+ msg = "#{count} messages in the postfix " \
79
+ "#{config[:queue] == 'all' ? 'mail' : config[:queue]} queue older " \
80
+ "than #{config[:delay]} seconds"
81
+
82
+ if count >= config[:critical].to_i
83
+ critical msg
84
+ elsif count >= config[:warning].to_i
85
+ warning msg
86
+ else
87
+ ok msg
88
+ end
89
+ end
90
+
91
+ #
92
+ # Parse a timestamp from the output of `mailq` and return that message's
93
+ # age in seconds. The `mailq` command does not insert years in its output,
94
+ # so we're going to make the (hopefully valid) assumption that there won't
95
+ # be any queue items older than a year and just subtract one year if a queue
96
+ # item appears to be from the future.
97
+ #
98
+ def check_age_of(timestamp)
99
+ d = DateTime.parse("#{timestamp} #{DateTime.now.zone}")
100
+ now = DateTime.now
101
+ d = d.prev_year if d > now
102
+ (now.to_time - d.to_time).to_i
103
+ end
104
+
105
+ #
106
+ # Return an array of timestamps for every message in the queue.
107
+ #
108
+ # `mailq` will either end with a summary line (-- 11 Kbytes in 31 Requests.)
109
+ # or 'Mail queue is empty'. Using grep rather than returning the entire
110
+ # list since that could consume a significant amount of memory.
111
+ #
112
+ def queue_data_all
113
+ queue = `#{config[:path]} | /bin/egrep '^[0-9A-F]+' | awk '{print $3, $4, $5, $6}'`
114
+ queue.split("\n")
115
+ end
116
+
117
+ #
118
+ # Return an array of timestamps for messages in the active queue.
119
+ #
120
+ # Items in the active queue appear with a '*' next to the QID in `mailq`
121
+ #
122
+ def queue_data_active
123
+ queue = `#{config[:path]} | /bin/egrep '^[0-9A-F]+\\*' | awk '{print $3, $4, $5, $6}'`
124
+ queue.split("\n")
125
+ end
126
+
127
+ #
128
+ # Return an array of timestamps for messages in the deferred queue.
129
+ #
130
+ # Items in the deferred queue do not have a special indicator in `mailq`,
131
+ # but are followed by lines with deferral reasons in ()s.
132
+ #
133
+ def queue_data_deferred
134
+ output = `#{config[:path]} | /bin/egrep -A 1 '^[0-9A-F]+ +'`.split("\n--\n")
135
+ queue = []
136
+ output.each do |o|
137
+ if o.lines[1].strip =~ /^\(.*\)$/
138
+ fields = o.lines[0].split
139
+ queue << "#{fields[2]} #{fields[3]} #{fields[4]} #{fields[5]}"
140
+ end
141
+ end
142
+ queue
143
+ end
144
+
145
+ #
146
+ # Return an array of timestamps for messages in the hold queue.
147
+ #
148
+ # Items in the hold queue appear with a '!' next to the QID in `mailq`.
149
+ #
150
+ def queue_data_hold
151
+ queue = `#{config[:path]} | /bin/egrep '^[0-9A-F]+!' | awk '{print $3, $4, $5, $6}'`
152
+ queue.split("\n")
153
+ end
154
+
155
+ #
156
+ # Return an array of timestamps for messages in the incoming queue.
157
+ #
158
+ # Items in the incoming queue have no special character indicating as much in
159
+ # `mailq`. Inspecting `/var/spool/postfix` directly requires root or postfix
160
+ # user permissions, so we have to get a little tricky here and find any queue
161
+ # item with no special character and that's not followed by a deferal line.
162
+ #
163
+ def queue_data_incoming
164
+ output = `#{config[:path]} | /bin/egrep -A 1 '^[0-9A-F]+ +'`.split("\n--\n")
165
+ queue = []
166
+ output.each do |o|
167
+ unless o.lines[1].strip =~ /^\(.*\)$/
168
+ fields = o.lines[0].split
169
+ queue << "#{fields[2]} #{fields[3]} #{fields[4]} #{fields[5]}"
170
+ end
171
+ end
172
+ queue
173
+ end
174
+ end
@@ -1,12 +1,36 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: false
3
+
4
+ # check-mailq
5
+ #
6
+ # DESCRIPTION:
7
+ # Check the size of the Postfix mail queue
8
+ #
9
+ # OUTPUT:
10
+ # Plain text
11
+ #
12
+ # PLATFORMS:
13
+ # Linux; any platform with Postfix and egrep
14
+ #
15
+ # DEPENDENCIES:
16
+ # gem: sensu-plugin
17
+ #
18
+ # USAGE:
19
+ # ./check-mailq.rb [-p path_to_mailq] [-q queue] -w warn -c crit
20
+ # ./check-mailq.rb -w 200 -c 400
21
+ # ./check-mailq.rb -q deferred -w 100 -c 200
22
+ # ./check-mailq.rb -p /usr/local/bin/mailq -q active -w 50 -c 100
2
23
  #
3
- # Check the size of the postfix mail queue
4
- # ===
24
+ # NOTES:
25
+ # This is split out into its own check because, unlike `check-mailq`, it
26
+ # requires storing details about every message in the queue in memory, which
27
+ # may not be desirable on heavily-trafficked systems.
5
28
  #
6
- # Copyright (c) 2013, Justin Lambert <jlambert@letsevenup.com>
29
+ # LICENSE:
30
+ # Justin Lambert <jlambert@letsevenup.com>
31
+ # Released under the same terms as Sensu (the MIT license); see LICENSE
32
+ # for details.
7
33
  #
8
- # Released under the same terms as Sensu (the MIT license); see LICENSE
9
- # for details.
10
34
 
11
35
  require 'sensu-plugin/check/cli'
12
36
 
@@ -17,6 +41,13 @@ class PostfixMailq < Sensu::Plugin::Check::CLI
17
41
  description: 'Path to the postfix mailq binary. Defaults to /usr/bin/mailq',
18
42
  default: '/usr/bin/mailq'
19
43
 
44
+ option :queue,
45
+ short: '-q QUEUE_NAME',
46
+ long: '--queue QUEUE_NAME',
47
+ description: 'The queue to check (active, deferred, hold, ' \
48
+ "incoming, or all). Defaults to 'all'",
49
+ default: 'all'
50
+
20
51
  option :warning,
21
52
  short: '-w WARN_NUM',
22
53
  long: '--warnnum WARN_NUM',
@@ -30,24 +61,60 @@ class PostfixMailq < Sensu::Plugin::Check::CLI
30
61
  required: true
31
62
 
32
63
  def run
33
- # mailq will either end with a summary line (-- 11 Kbytes in 31 Requests.)
34
- # or 'Mail queue is empty'. Using grep rather than returning the entire
35
- # list since that could consume a significant amount of memory.
36
- queue = `#{config[:path]} | /bin/egrep '[0-9]+ Kbytes in [0-9]+ Request\|Mail queue is empty'`
37
-
38
- # Set the number of messages in the queue
39
- if queue == 'Mail queue is empty'
40
- num_messages = 0
41
- else
42
- num_messages = queue.split(' ')[4].to_i
43
- end
64
+ num_messages = send("check_queue_size_#{config[:queue]}")
65
+ msg = "#{num_messages} messages in the postfix #{config[:queue] == 'all' ? 'mail' : config[:queue]} queue"
44
66
 
45
67
  if num_messages >= config[:critical].to_i
46
- critical "#{num_messages} messages in the postfix mail queue"
68
+ critical msg
47
69
  elsif num_messages >= config[:warning].to_i
48
- warning "#{num_messages} messages in the postfix mail queue"
70
+ warning msg
49
71
  else
50
- ok "#{num_messages} messages in the postfix mail queue"
72
+ ok msg
51
73
  end
52
74
  end
75
+
76
+ #
77
+ # Return the number of messages in all the queues.
78
+ #
79
+ # `mailq` will either end with a summary line (-- 11 Kbytes in 31 Requests.)
80
+ # or 'Mail queue is empty'. Using grep rather than returning the entire
81
+ # list since that could consume a significant amount of memory.
82
+ #
83
+ def check_queue_size_all
84
+ queue = `#{config[:path]} | /bin/egrep '[0-9]+ Kbytes in [0-9]+ Request\|Mail queue is empty'`
85
+ queue == 'Mail queue is empty' ? 0 : queue.split(' ')[4].to_i
86
+ end
87
+
88
+ #
89
+ # Items in the active queue appear with a '*' next to the QID in `mailq`
90
+ #
91
+ def check_queue_size_active
92
+ `#{config[:path]} | /bin/egrep -c '^[0-9A-F]+\\*'`.to_i
93
+ end
94
+
95
+ #
96
+ # Items in the deferred queue do not have a special indicator in `mailq`,
97
+ # but are followed by lines with deferral reasons in ()s.
98
+ #
99
+ def check_queue_size_deferred
100
+ `#{config[:path]} | /bin/grep -c '^ *(.*)$'`.to_i
101
+ end
102
+
103
+ #
104
+ # Items in the hold queue appear with a '!' next to the QID in `mailq`.
105
+ #
106
+ def check_queue_size_hold
107
+ `#{config[:path]} | /bin/egrep -c '^[0-9A-F]+!'`.to_i
108
+ end
109
+
110
+ #
111
+ # Items in the incoming queue have no special character indicating as much in
112
+ # `mailq`. Inspecting `/var/spool/postfix` directly requires root or postfix
113
+ # user permissions, so let's try to be crafty and subtract the number of
114
+ # deferred messages from the total number of messages with no special
115
+ # character appended to their QID.
116
+ #
117
+ def check_queue_size_incoming
118
+ `#{config[:path]} | /bin/egrep -c '^[0-9A-F]+ +'`.to_i - check_queue_size_deferred
119
+ end
53
120
  end
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
- #
2
+ # frozen_string_literal: false
3
+
3
4
  # Postfix Mailq metrics
4
5
  # ===
5
6
  #
@@ -38,15 +39,15 @@ class PostfixMailqMetrics < Sensu::Plugin::Metric::CLI::Graphite
38
39
 
39
40
  def run
40
41
  timestamp = Time.now.to_i
41
- queue = `#{config[:path]} | /bin/egrep '[0-9]+ Kbytes in [0-9]+ Request\|Mail queue is empty'`
42
+ queue = `#{config[:path]} 2>&1 | /bin/egrep '[0-9]+ Kbytes in [0-9]+ Request\|Mail queue is empty'`
42
43
  # Set the number of messages in the queue
43
- if queue == 'Mail queue is empty'
44
- num_messages = 0
45
- else
46
- num_messages = queue.split(' ')[4].to_i
47
- end
44
+ num_messages = if queue == 'Mail queue is empty'
45
+ 0
46
+ else
47
+ queue.split(' ')[4].to_i
48
+ end
48
49
  graphite_name = config[:scheme] + '.postfixMailqCount'
49
- output "#{graphite_name}", num_messages, timestamp
50
+ output graphite_name.to_s, num_messages, timestamp
50
51
  ok
51
52
  end
52
53
  end
@@ -1 +1,3 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'sensu-plugins-postfix/version'
@@ -1,8 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module SensuPluginsPostfix
2
4
  module Version
3
- MAJOR = 0
5
+ MAJOR = 2
4
6
  MINOR = 0
5
- PATCH = 2
7
+ PATCH = 0
6
8
 
7
9
  VER_STRING = [MAJOR, MINOR, PATCH].compact.join('.')
8
10
  end
metadata CHANGED
@@ -1,135 +1,127 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sensu-plugins-postfix
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sensu-Plugins and contributors
8
8
  autorequire:
9
9
  bindir: bin
10
- cert_chain:
11
- - |
12
- -----BEGIN CERTIFICATE-----
13
- MIIDgDCCAmigAwIBAgIBATANBgkqhkiG9w0BAQUFADBDMRIwEAYDVQQDDAltYXR0
14
- am9uZXMxGDAWBgoJkiaJk/IsZAEZFgh5aWVsZGJvdDETMBEGCgmSJomT8ixkARkW
15
- A2NvbTAeFw0xNTAxMjgyMTAyNTFaFw0xNjAxMjgyMTAyNTFaMEMxEjAQBgNVBAMM
16
- CW1hdHRqb25lczEYMBYGCgmSJomT8ixkARkWCHlpZWxkYm90MRMwEQYKCZImiZPy
17
- LGQBGRYDY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyTSzVYnO
18
- CLgyrIyT1mBQakArQyW8xhi6MlDqyzXHJGeERT790U6EgoBVeS4XoK0ptFZNR8Tf
19
- zko0w+Nv47TarSCgkPOaxY+mxWnAVR10dOmfeLr7huiMyps+YD56/EF2FqQ3jf/+
20
- qohENfKD91qy1ieEy+Fn7Pf74ltbNKUdkb9a9eFXQ0DQ4ip5vik7DzjQkUTj4lca
21
- k6ArwnmHX4YDhZoYtrQJ8jVktN0/+NtA40M5qkCYHNe5tUW25b/tKVYuioxG6b2Z
22
- oIzaZxRLxf6HVAWpCVRT/F5+/yjigkX4u++eYacfLGleXQzoK7BL65vHGMJygWEE
23
- 0TKGqFOrl/L0AQIDAQABo38wfTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNV
24
- HQ4EFgQUEf6a8Td7MrSZc8ImbLFZAENPbz0wIQYDVR0RBBowGIEWbWF0dGpvbmVz
25
- QHlpZWxkYm90LmNvbTAhBgNVHRIEGjAYgRZtYXR0am9uZXNAeWllbGRib3QuY29t
26
- MA0GCSqGSIb3DQEBBQUAA4IBAQBbzXAYA3BVGw8DZ0YYoY1VHPNEcH5qPIApmHO8
27
- rvSmuUT0yMEi7u00H/5uHRFf4LleGT/+sTdyXKsNPGT9kdRuQEgwi+vf7Zfvd8aX
28
- UF/+4VkEYf/8rV8Ere6u2QaWPgApdMV6JjKr1fAwCTd8AuGXNaWItiPPMseSQzLJ
29
- JKP4hVvbc1d+oS925B1lcBiqn2aYvElbyNAVmQPywNNqkWmvtlqj9ZVJfV5HQLdu
30
- 8sHuVruarogxxKPBzlL2is4EUb6oN/RdpGx2l4254+nyR+abg//Ed27Ym0PkB4lk
31
- HP0m8WSjZmFr109pE/sVsM5jtOCvogyujQOjNVGN4gz1wwPr
32
- -----END CERTIFICATE-----
33
- date: 2015-06-04 00:00:00.000000000 Z
10
+ cert_chain: []
11
+ date: 2020-08-24 00:00:00.000000000 Z
34
12
  dependencies:
35
13
  - !ruby/object:Gem::Dependency
36
14
  name: sensu-plugin
37
15
  requirement: !ruby/object:Gem::Requirement
38
16
  requirements:
39
- - - '='
17
+ - - "~>"
40
18
  - !ruby/object:Gem::Version
41
- version: 1.1.0
19
+ version: '4.0'
42
20
  type: :runtime
43
21
  prerelease: false
44
22
  version_requirements: !ruby/object:Gem::Requirement
45
23
  requirements:
46
- - - '='
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '4.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '2.1'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
47
39
  - !ruby/object:Gem::Version
48
- version: 1.1.0
40
+ version: '2.1'
49
41
  - !ruby/object:Gem::Dependency
50
42
  name: codeclimate-test-reporter
51
43
  requirement: !ruby/object:Gem::Requirement
52
44
  requirements:
53
45
  - - "~>"
54
46
  - !ruby/object:Gem::Version
55
- version: '0.4'
47
+ version: '1.0'
56
48
  type: :development
57
49
  prerelease: false
58
50
  version_requirements: !ruby/object:Gem::Requirement
59
51
  requirements:
60
52
  - - "~>"
61
53
  - !ruby/object:Gem::Version
62
- version: '0.4'
54
+ version: '1.0'
63
55
  - !ruby/object:Gem::Dependency
64
- name: rubocop
56
+ name: github-markup
65
57
  requirement: !ruby/object:Gem::Requirement
66
58
  requirements:
67
59
  - - "~>"
68
60
  - !ruby/object:Gem::Version
69
- version: '0.30'
61
+ version: '3.0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
65
  requirements:
74
66
  - - "~>"
75
67
  - !ruby/object:Gem::Version
76
- version: '0.30'
68
+ version: '3.0'
77
69
  - !ruby/object:Gem::Dependency
78
- name: rspec
70
+ name: kitchen-localhost
79
71
  requirement: !ruby/object:Gem::Requirement
80
72
  requirements:
81
73
  - - "~>"
82
74
  - !ruby/object:Gem::Version
83
- version: '3.1'
75
+ version: '0.3'
84
76
  type: :development
85
77
  prerelease: false
86
78
  version_requirements: !ruby/object:Gem::Requirement
87
79
  requirements:
88
80
  - - "~>"
89
81
  - !ruby/object:Gem::Version
90
- version: '3.1'
82
+ version: '0.3'
91
83
  - !ruby/object:Gem::Dependency
92
- name: bundler
84
+ name: kitchen-vagrant
93
85
  requirement: !ruby/object:Gem::Requirement
94
86
  requirements:
95
87
  - - "~>"
96
88
  - !ruby/object:Gem::Version
97
- version: '1.7'
89
+ version: 1.5.2
98
90
  type: :development
99
91
  prerelease: false
100
92
  version_requirements: !ruby/object:Gem::Requirement
101
93
  requirements:
102
94
  - - "~>"
103
95
  - !ruby/object:Gem::Version
104
- version: '1.7'
96
+ version: 1.5.2
105
97
  - !ruby/object:Gem::Dependency
106
- name: rake
98
+ name: pry
107
99
  requirement: !ruby/object:Gem::Requirement
108
100
  requirements:
109
101
  - - "~>"
110
102
  - !ruby/object:Gem::Version
111
- version: '10.0'
103
+ version: '0.10'
112
104
  type: :development
113
105
  prerelease: false
114
106
  version_requirements: !ruby/object:Gem::Requirement
115
107
  requirements:
116
108
  - - "~>"
117
109
  - !ruby/object:Gem::Version
118
- version: '10.0'
110
+ version: '0.10'
119
111
  - !ruby/object:Gem::Dependency
120
- name: github-markup
112
+ name: rake
121
113
  requirement: !ruby/object:Gem::Requirement
122
114
  requirements:
123
115
  - - "~>"
124
116
  - !ruby/object:Gem::Version
125
- version: '1.3'
117
+ version: '13.0'
126
118
  type: :development
127
119
  prerelease: false
128
120
  version_requirements: !ruby/object:Gem::Requirement
129
121
  requirements:
130
122
  - - "~>"
131
123
  - !ruby/object:Gem::Version
132
- version: '1.3'
124
+ version: '13.0'
133
125
  - !ruby/object:Gem::Dependency
134
126
  name: redcarpet
135
127
  requirement: !ruby/object:Gem::Requirement
@@ -145,42 +137,77 @@ dependencies:
145
137
  - !ruby/object:Gem::Version
146
138
  version: '3.2'
147
139
  - !ruby/object:Gem::Dependency
148
- name: yard
140
+ name: rspec
149
141
  requirement: !ruby/object:Gem::Requirement
150
142
  requirements:
151
143
  - - "~>"
152
144
  - !ruby/object:Gem::Version
153
- version: '0.8'
145
+ version: '3.1'
154
146
  type: :development
155
147
  prerelease: false
156
148
  version_requirements: !ruby/object:Gem::Requirement
157
149
  requirements:
158
150
  - - "~>"
159
151
  - !ruby/object:Gem::Version
160
- version: '0.8'
152
+ version: '3.1'
161
153
  - !ruby/object:Gem::Dependency
162
- name: pry
154
+ name: rubocop
163
155
  requirement: !ruby/object:Gem::Requirement
164
156
  requirements:
165
157
  - - "~>"
166
158
  - !ruby/object:Gem::Version
167
- version: '0.10'
159
+ version: 0.81.0
168
160
  type: :development
169
161
  prerelease: false
170
162
  version_requirements: !ruby/object:Gem::Requirement
171
163
  requirements:
172
164
  - - "~>"
173
165
  - !ruby/object:Gem::Version
174
- version: '0.10'
175
- description: Sensu plugins for postfix
166
+ version: 0.81.0
167
+ - !ruby/object:Gem::Dependency
168
+ name: test-kitchen
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '1.5'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '1.5'
181
+ - !ruby/object:Gem::Dependency
182
+ name: yard
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: '0.8'
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: '0.8'
195
+ description: |-
196
+ This plugin provides native Postfix instrumentation
197
+ for monitoring and metrics collection of the mail
198
+ queue via `mailq`
176
199
  email: "<sensu-users@googlegroups.com>"
177
- executables: []
200
+ executables:
201
+ - check-mailq.rb
202
+ - metrics-mailq.rb
203
+ - check-mail-delay.rb
178
204
  extensions: []
179
205
  extra_rdoc_files: []
180
206
  files:
181
207
  - CHANGELOG.md
182
208
  - LICENSE
183
209
  - README.md
210
+ - bin/check-mail-delay.rb
184
211
  - bin/check-mailq.rb
185
212
  - bin/metrics-mailq.rb
186
213
  - lib/sensu-plugins-postfix.rb
@@ -189,7 +216,7 @@ homepage: https://github.com/sensu-plugins/sensu-plugins-postfix
189
216
  licenses:
190
217
  - MIT
191
218
  metadata:
192
- maintainer: ''
219
+ maintainer: sensu-plugin
193
220
  development_status: active
194
221
  production_status: unstable - testing recommended
195
222
  release_draft: 'false'
@@ -203,15 +230,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
203
230
  requirements:
204
231
  - - ">="
205
232
  - !ruby/object:Gem::Version
206
- version: 1.9.3
233
+ version: '2.3'
207
234
  required_rubygems_version: !ruby/object:Gem::Requirement
208
235
  requirements:
209
236
  - - ">="
210
237
  - !ruby/object:Gem::Version
211
238
  version: '0'
212
239
  requirements: []
213
- rubyforge_project:
214
- rubygems_version: 2.4.6
240
+ rubygems_version: 3.0.8
215
241
  signing_key:
216
242
  specification_version: 4
217
243
  summary: Sensu plugins for postfix
@@ -1,3 +0,0 @@
1
- ?ݬ␅ƭ\��-�j���w��M����Y�jZ���6TX"b�����b<�Es44��#d�̘Y;�7�� �~(h� Ly��J��߭z=4�5�ac�>�@e�p&D�F;>��04��L/�H��� �Nj� �3R�5:b�Zg�܈��x��������"-�&.���
2
- 0NvS�`R:p
3
- �u�
data.tar.gz.sig DELETED
Binary file
metadata.gz.sig DELETED
Binary file