dohruby 0.3.2 → 0.3.3
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.
- data/lib/doh/app/activate_logger.rb +4 -4
- data/lib/doh/app/options.rb +8 -1
- data/lib/doh/logger/email_acceptor.rb +2 -1
- data/lib/doh/util/email.rb +2 -1
- data/test/logger/sample.rb +2 -2
- metadata +3 -3
@@ -60,9 +60,9 @@ def self.activate_logger
|
|
60
60
|
acceptor_cfg = logger_cfg['notify_acceptor']
|
61
61
|
require 'doh/logger/email_acceptor'
|
62
62
|
mail_server = root_cfg['mail_server'] || 'mail.' + get_required_config_value('domain_name', 'mail_server or domain_name required for mail server')
|
63
|
-
from_address = acceptor_cfg['from_address'] || 'notify@' + get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
|
63
|
+
from_address = root_cfg['smtp_from'] || acceptor_cfg['from_address'] || 'notify@' + get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
|
64
64
|
to_address_list = acceptor_cfg['to_address_list'] || ['root@localhost']
|
65
|
-
notify_acceptor = DohLogger::EmailAcceptor.new(mail_server, from_address, to_address_list, logfile_name, nil, DohLogger::exceptionless_email_format)
|
65
|
+
notify_acceptor = DohLogger::EmailAcceptor.new(mail_server, root_cfg['smtp_port'], from_address, to_address_list, logfile_name, nil, DohLogger::exceptionless_email_format)
|
66
66
|
Doh::log.add_acceptor(DohLogger::NOTIFY, notify_acceptor, true, acceptor_cfg['locations_to_exclude'], acceptor_cfg['include_only_locations'])
|
67
67
|
end
|
68
68
|
|
@@ -70,9 +70,9 @@ def self.activate_logger
|
|
70
70
|
acceptor_cfg = logger_cfg['error_acceptor']
|
71
71
|
require 'doh/logger/email_acceptor'
|
72
72
|
mail_server = root_cfg['mail_server'] || 'mail.' + get_required_config_value('domain_name', 'mail_server or domain_name required for mail server')
|
73
|
-
from_address = acceptor_cfg['from_address'] || 'error@' + get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
|
73
|
+
from_address = root_cfg['smtp_from'] || acceptor_cfg['from_address'] || 'error@' + get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
|
74
74
|
to_address_list = acceptor_cfg['to_address_list'] || ['root@localhost']
|
75
|
-
error_acceptor = DohLogger::EmailAcceptor.new(mail_server, from_address, to_address_list, logfile_name)
|
75
|
+
error_acceptor = DohLogger::EmailAcceptor.new(mail_server, root_cfg['smtp_port'], from_address, to_address_list, logfile_name)
|
76
76
|
Doh::log.add_acceptor(DohLogger::ERROR, error_acceptor, nil, acceptor_cfg['locations_to_exclude'], acceptor_cfg['include_only_locations'])
|
77
77
|
end
|
78
78
|
end
|
data/lib/doh/app/options.rb
CHANGED
@@ -16,7 +16,7 @@ class Options
|
|
16
16
|
# set allow_unknown_options to true to allow for filename specification, etc..
|
17
17
|
# if the default value is :required for a field, then if that field isn't
|
18
18
|
# specified, an exception will be raised
|
19
|
-
def initialize(param_definition_hash_or_array, allow_unknown_options = false, explanation_text = '', unknown_options_name = 'file')
|
19
|
+
def initialize(param_definition_hash_or_array, allow_unknown_options = false, explanation_text = '', unknown_options_name = 'file', allow_no_prefix = false)
|
20
20
|
@vals = OpenStruct.new
|
21
21
|
|
22
22
|
@opts = OptionParser.new
|
@@ -37,6 +37,13 @@ class Options
|
|
37
37
|
param_definition_hash = param_definition_hash_or_array
|
38
38
|
end
|
39
39
|
|
40
|
+
param_definition_array.each do |elem|
|
41
|
+
keyname = elem.to_a[0][1][2]
|
42
|
+
if keyname =~ /^--no-/
|
43
|
+
raise "key name: #{keyname} will not behave as desired if meant to be a boolean, rename it, or pass in allow_no_prefix flag as 5th param"
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
40
47
|
param_definition_array.each do |elem|
|
41
48
|
key = elem.to_a[0][0]
|
42
49
|
val = elem.to_a[0][1]
|
@@ -12,8 +12,9 @@ def self.exceptionless_email_format
|
|
12
12
|
end
|
13
13
|
|
14
14
|
class EmailAcceptor
|
15
|
-
def initialize(smtp_server, from_address, to_addresses, logfile_name, subject_format = nil, body_format = DohLogger::exception_email_format)
|
15
|
+
def initialize(smtp_server, smtp_port, from_address, to_addresses, logfile_name, subject_format = nil, body_format = DohLogger::exception_email_format)
|
16
16
|
@smtp_server = smtp_server
|
17
|
+
@smtp_port = smtp_port || 25
|
17
18
|
@from_address = from_address
|
18
19
|
@to_addresses = to_addresses
|
19
20
|
@logfile_name = logfile_name
|
data/lib/doh/util/email.rb
CHANGED
@@ -3,10 +3,11 @@ module DohEmail
|
|
3
3
|
|
4
4
|
@@mail_server = DohApp::config['mail_server'] || 'mail.' + DohApp::get_required_config_value('domain_name', 'mail_server or domain_name required for mail server')
|
5
5
|
@@from_address = DohApp::config['from_address'] || 'admin@' + DohApp::get_required_config_value('domain_name', 'from_address or domain_name required for notification email address')
|
6
|
+
@@smtp_port = DohApp::config['smtp_port'] || 25
|
6
7
|
|
7
8
|
def self.send_email(subject, body, recipients, from_address = @@from_address)
|
8
9
|
msg = "Subject:#{subject}\nFrom:#{from_address}\nTo:#{recipients.join(', ')}\nContent-Type: text/plain\n\n#{body}"
|
9
|
-
Net::SMTP.start(@@mail_server) do |smtp|
|
10
|
+
Net::SMTP.start(@@mail_server, @@smtp_port) do |smtp|
|
10
11
|
begin
|
11
12
|
smtp.send_message(msg, from_address, recipients)
|
12
13
|
rescue Exception => excpt
|
data/test/logger/sample.rb
CHANGED
@@ -5,8 +5,8 @@ scheduler = DohLogger::DirectScheduler.new
|
|
5
5
|
console_acceptor = DohLogger::IOStreamAcceptor.new
|
6
6
|
logfile_name = "logger_sample_app.log"
|
7
7
|
file_acceptor = DohLogger::IOStreamAcceptor.new(File.new(logfile_name, "wb"))
|
8
|
-
error_acceptor = DohLogger::EmailAcceptor.new('localhost', 'from@somebody.com', ['bulbous@gmail.com'], logfile_name)
|
9
|
-
notify_acceptor = DohLogger::EmailAcceptor.new('localhost', 'from@somebody.com', ['bulbous@gmail.com'], logfile_name, nil, DohLogger::exceptionless_email_format)
|
8
|
+
error_acceptor = DohLogger::EmailAcceptor.new('localhost', 25, 'from@somebody.com', ['bulbous@gmail.com'], logfile_name)
|
9
|
+
notify_acceptor = DohLogger::EmailAcceptor.new('localhost', 25, 'from@somebody.com', ['bulbous@gmail.com'], logfile_name, nil, DohLogger::exceptionless_email_format)
|
10
10
|
intrfc = DohLogger::StandardInterface.new(scheduler)
|
11
11
|
intrfc.add_acceptor(DohLogger::DEBUG, console_acceptor)
|
12
12
|
intrfc.add_acceptor(DohLogger::ERROR, error_acceptor)
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 3
|
8
|
-
-
|
9
|
-
version: 0.3.
|
8
|
+
- 3
|
9
|
+
version: 0.3.3
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Makani & Kem Mason
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-
|
17
|
+
date: 2010-07-01 00:00:00 +12:00
|
18
18
|
default_executable:
|
19
19
|
dependencies: []
|
20
20
|
|