le 2.1.6 → 2.1.7

Sign up to get free protection for your applications and to get access to all the features.
data/LE.gemspec CHANGED
@@ -3,7 +3,7 @@ require File.expand_path(File.join(dir, 'lib', 'le'))
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "le"
6
- s.version = "2.1.6"
6
+ s.version = "2.1.7"
7
7
  s.date = Time.now
8
8
  s.summary = "Logentries plugin"
9
9
  s.description =<<EOD
data/lib/le.rb CHANGED
@@ -4,13 +4,18 @@ require 'logger'
4
4
 
5
5
  module Le
6
6
 
7
- def self.new(token, local=false, debug_level = Logger::DEBUG)
7
+ def self.new(token, options={})
8
8
 
9
9
  self.checkParams(token)
10
10
 
11
- host = Le::Host.new(token, local)
11
+ opt_local = options[:local] || false
12
+ opt_debug = options[:debug] || false
13
+ opt_log_level = options[:log_level] || Logger::DEBUG
14
+
15
+ host = Le::Host.new(token, opt_local, opt_debug)
12
16
  logger = Logger.new(host)
13
- logger.level = debug_level
17
+
18
+ logger.level = opt_log_level
14
19
 
15
20
  if host.respond_to?(:formatter)
16
21
  logger.formatter = host.formatter
@@ -1,8 +1,8 @@
1
1
  module Le
2
2
  module Host
3
3
 
4
- def self.new(token, local)
5
- Le::Host::HTTP.new(token, local)
4
+ def self.new(token, local, debug)
5
+ Le::Host::HTTP.new(token, local, debug)
6
6
  end
7
7
 
8
8
  module InstanceMethods
@@ -7,9 +7,9 @@ module Le
7
7
  module Host
8
8
  class HTTP
9
9
  include Le::Host::InstanceMethods
10
- attr_accessor :token, :queue, :started, :thread, :conn, :local
10
+ attr_accessor :token, :queue, :started, :thread, :conn, :local, :debug
11
11
 
12
- def initialize(token, local)
12
+ def initialize(token, local, debug)
13
13
  if defined?(Rails)
14
14
  @logger_console = Logger.new("log/#{Rails.env}.log")
15
15
  else
@@ -17,11 +17,30 @@ module Le
17
17
  end
18
18
  @token = token
19
19
  @local = local
20
+ @debug = debug
20
21
  @queue = Queue.new
21
22
  @started = false
22
23
  @thread = nil
24
+
25
+ if @debug then
26
+ self.init_debug
27
+ end
23
28
  end
24
29
 
30
+ def init_debug
31
+ filePath = "logentriesGem.log"
32
+ if File.exist?('log/')
33
+ filePath = "log/logentriesGem.log"
34
+ end
35
+ @debug_logger = Logger.new(filePath)
36
+ end
37
+
38
+ def dbg(message)
39
+ if @debug then
40
+ @debug_logger.add(Logger::Severity::DEBUG,message)
41
+ end
42
+ end
43
+
25
44
  def write(message)
26
45
  if @local then
27
46
  @logger_console.add(Logger::Severity::UNKNOWN,message)
@@ -38,27 +57,27 @@ module Le
38
57
 
39
58
  def start_async_thread
40
59
  @thread = Thread.new{run()}
41
- puts "LE: Asynchronous socket writer started"
60
+ dbg "LE: Asynchronous socket writer started"
42
61
  @started = true
43
62
  end
44
63
 
45
64
  def check_async_thread
46
65
  if not @thread.alive?
47
66
  @thread = Thread.new{run()}
48
- puts "LE: Asyncrhonous socket writer restarted"
67
+ dbg "LE: Asyncrhonous socket writer restarted"
49
68
  end
50
69
  end
51
70
 
52
71
  def close
53
- puts "LE: Closing asynchronous socket writer"
72
+ dbg "LE: Closing asynchronous socket writer"
54
73
  @started = false
55
74
  end
56
75
 
57
76
  def openConnection
58
- puts "LE: Reopening connection to Logentries API server"
77
+ dbg "LE: Reopening connection to Logentries API server"
59
78
  @conn = TCPSocket.new('api.logentries.com', 10000)
60
79
 
61
- puts "LE: Connection established"
80
+ dbg "LE: Connection established"
62
81
  end
63
82
 
64
83
  def reopenConnection
@@ -69,14 +88,14 @@ module Le
69
88
  openConnection
70
89
  break
71
90
  rescue TimeoutError, Errno::EHOSTUNREACH, Errno::ECONNREFUSED, Errno::ECONNRESET, Errno::ETIMEDOUT, EOFError => e
72
- puts "LE: Unable to connect to Logentries"
91
+ dbg "LE: Unable to connect to Logentries"
73
92
  end
74
93
  root_delay *= 2
75
94
  if root_delay >= 10 then
76
95
  root_delay = 10
77
96
  end
78
97
  wait_for = (root_delay + rand(root_delay)).to_i
79
- puts "LE: Waiting for " + wait_for.to_s + "ms"
98
+ dbg "LE: Waiting for " + wait_for.to_s + "ms"
80
99
  sleep(wait_for)
81
100
  end
82
101
  end
@@ -103,7 +122,7 @@ module Le
103
122
  break
104
123
  end
105
124
  end
106
- puts "LE: Closing Asyncrhonous socket writer"
125
+ dbg "LE: Closing Asyncrhonous socket writer"
107
126
  closeConnection
108
127
  end
109
128
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: le
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.6
4
+ version: 2.1.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-09 00:00:00.000000000 Z
12
+ date: 2013-06-07 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: ! '
15
15