sensu-plugins-postfix 0.0.2 → 2.0.0

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 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