Module: Gts
- Defined in:
- lib/gts.rb,
lib/gts/server.rb,
lib/gts/command.rb,
lib/gts/storage.rb,
lib/gts/version.rb,
lib/gts/command_parser.rb,
lib/gts/commands/dump_command.rb,
lib/gts/commands/help_command.rb,
lib/gts/handlers/tk102_handler.rb,
lib/gts/storages/redis_storage.rb,
lib/gts/commands/uptime_command.rb,
lib/gts/commands/dump_size_command.rb,
lib/gts/abstract_gps_tracker_handler.rb,
lib/gts/commands/storage_info_command.rb,
lib/gts/commands/list_known_devices_command.rb
Defined Under Namespace
Modules: Server
Classes: AbstractGPSTrackerHandler, Command, CommandParser, DumpCommand, DumpSizeCommand, HelpCommand, ListKnownDevicesCommand, RedisStorage, Storage, StorageInfoCommand, TK102Handler, UptimeCommand
Constant Summary
collapse
- VERSION =
"0.1.6"
Class Method Summary
collapse
Class Method Details
.daemonize ⇒ Object
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
# File 'lib/gts.rb', line 78
def self.daemonize
if RUBY_VERSION < "1.9"
exit if fork
Process.setsid
exit if fork
Dir.chdir "/"
STDIN.reopen "/dev/null"
STDERR.reopen "/dev/null", "a"
else
orig_stdout = STDOUT.clone
Process.daemon
STDOUT.reopen orig_stdout
end
puts "Running in background with PID #{Process.pid}"
STDOUT.reopen "/dev/null", "a"
set_logger end
|
.log_filename ⇒ Object
58
59
60
|
# File 'lib/gts.rb', line 58
def self.log_filename
@@log_filename
end
|
.log_level ⇒ Object
26
27
28
29
30
31
32
33
|
# File 'lib/gts.rb', line 26
def self.log_level
begin
@@log_level
rescue
set_log_level
@@log_level
end
end
|
.logger ⇒ Object
35
36
37
38
39
40
41
42
|
# File 'lib/gts.rb', line 35
def self.logger
begin
@@logger
rescue
set_logger
@@logger
end
end
|
.register_handler(klass) ⇒ Object
6
7
8
9
10
11
|
# File 'lib/gts.rb', line 6
def self.register_handler(klass)
@@registered_handlers ||= {}
klass.devices.each do |d|
@@registered_handlers[d] = klass
end
end
|
.registered_handlers ⇒ Object
13
14
15
|
# File 'lib/gts.rb', line 13
def self.registered_handlers
@@registered_handlers
end
|
.server ⇒ Object
66
67
68
|
# File 'lib/gts.rb', line 66
def self.server
@@server
end
|
.server=(server_instance) ⇒ Object
62
63
64
|
# File 'lib/gts.rb', line 62
def self.server=(server_instance)
@@server = server_instance
end
|
.set_log_filename(filename) ⇒ Object
53
54
55
56
|
# File 'lib/gts.rb', line 53
def self.set_log_filename(filename)
@@log_filename = filename
FileUtils.touch filename
end
|
.set_log_level(level = :info) ⇒ Object
17
18
19
20
21
22
23
24
|
# File 'lib/gts.rb', line 17
def self.set_log_level(level=:info)
case level
when :debug
@@log_level = Logger::DEBUG
else
@@log_level = Logger::INFO
end
end
|
.set_logger ⇒ Object
44
45
46
47
48
49
50
51
|
# File 'lib/gts.rb', line 44
def self.set_logger
@@logger = Logger.new(log_filename)
@@logger.datetime_format = "%d.%m.%Y %H:%M:%S"
@@logger.formatter = proc do |severity, datetime, progname, msg|
"#{datetime} #{severity}: #{msg}\n"
end
@@logger.level = log_level
end
|
.storage ⇒ Object
74
75
76
|
# File 'lib/gts.rb', line 74
def self.storage
@@storage
end
|
.storage=(storage) ⇒ Object
70
71
72
|
# File 'lib/gts.rb', line 70
def self.storage=(storage)
@@storage = storage
end
|