tropo_tail 0.2.0 → 0.2.1
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 +4 -4
- data/exe/tropo_tail +113 -0
- data/lib/tropo_tail/version.rb +1 -1
- data/tropo_tail.gemspec +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b475ed627615e59655fcf14f7d8bb096184c17b8
|
4
|
+
data.tar.gz: a823d2efd54b8ad9f93ccebc0075b0d3b1aa6e3f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b1ee43da1e3050c68187c5e1ff185641455f7677a984eb184dea2964eb9475364d66caf999a8a638999276abf95d52c918c62d3555e44217b5c7ca1c58627f4a
|
7
|
+
data.tar.gz: 8d8dc833232cb3726835f42655592f6b6b8075b6cae6ad8205773df12eec39239870fad97a96cb6c10644b539e31fa90bd37da744899c849bc9e9e5f41ed07f7
|
data/exe/tropo_tail
ADDED
@@ -0,0 +1,113 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'optparse'
|
4
|
+
require 'methadone'
|
5
|
+
require 'tropo_tail.rb'
|
6
|
+
require 'net/ftp'
|
7
|
+
require 'colorize'
|
8
|
+
|
9
|
+
class App
|
10
|
+
include Methadone::Main
|
11
|
+
include Methadone::CLILogging
|
12
|
+
|
13
|
+
main do # Add args you want: |like,so|
|
14
|
+
@ftp = Net::FTP.new('ftp.tropo.com')
|
15
|
+
run
|
16
|
+
@ftp.login(@username, @password)
|
17
|
+
@ftp.chdir('logs')
|
18
|
+
get_latest
|
19
|
+
if @filename.nil?
|
20
|
+
puts "No new logs"
|
21
|
+
else
|
22
|
+
tail
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
# supplemental methods here
|
27
|
+
def self.run
|
28
|
+
puts "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
|
29
|
+
puts "Please type your Tropo Username..."
|
30
|
+
@username = gets.chomp
|
31
|
+
begin
|
32
|
+
puts "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
|
33
|
+
puts "Please enter your Tropo Password"
|
34
|
+
system 'stty -echo'
|
35
|
+
@password = gets.chomp
|
36
|
+
system 'stty echo'
|
37
|
+
rescue
|
38
|
+
system 'stty echo'
|
39
|
+
exit
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
def self.get_latest
|
44
|
+
@ftp.list.each do |file|
|
45
|
+
if file[-4..-1] == ".txt"
|
46
|
+
@filename = file[-19..-1]
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
def self.tail
|
52
|
+
maxline = 0
|
53
|
+
orig_log = @filename
|
54
|
+
while 0 < 1
|
55
|
+
get_latest
|
56
|
+
if orig_log != @filename
|
57
|
+
maxline = 0
|
58
|
+
orig_log = @filename
|
59
|
+
end
|
60
|
+
linecount = 0
|
61
|
+
@ftp.gettextfile(@filename, nil) do |line|
|
62
|
+
info = /(?<=PRISM )(?<=PRISM )(\d{7}\/\d{7}\/)(\w{32}\/|0\/)(\w{32}\/)(1\/)(\S{1,50}\/)(\[\S{1,50}\])/.match(line).to_s.yellow
|
63
|
+
linecount += 1
|
64
|
+
if linecount > maxline
|
65
|
+
maxline = linecount
|
66
|
+
if options['truncate']
|
67
|
+
puts "#{line[0..19].blue} #{line[(info.length + 38)..-1]}"
|
68
|
+
else
|
69
|
+
puts "#{line[0..19].blue}#{line[21..50].yellow} #{info}#{line[(info.length + 38)..-1]}"
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
sleep 3
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
def self.log_line_break
|
78
|
+
Thread.new do
|
79
|
+
while 0 < 1
|
80
|
+
char = STDIN.getc
|
81
|
+
if char == "\r"
|
82
|
+
puts ""
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
88
|
+
|
89
|
+
# Declare command-line interface here
|
90
|
+
|
91
|
+
# description "one line description of your app"
|
92
|
+
#
|
93
|
+
# Accept flags via:
|
94
|
+
# on("--flag VAL","Some flag")
|
95
|
+
# options[flag] will contain VAL
|
96
|
+
#
|
97
|
+
# Specify switches via:
|
98
|
+
on("--truncate","Some switch")
|
99
|
+
#
|
100
|
+
# Or, just call OptionParser methods on opts
|
101
|
+
#
|
102
|
+
# Require an argument
|
103
|
+
# arg :some_arg
|
104
|
+
#
|
105
|
+
# # Make an argument optional
|
106
|
+
# arg :optional_arg, :optional
|
107
|
+
|
108
|
+
version TropoTail::VERSION
|
109
|
+
|
110
|
+
use_log_level_option :toggle_debug_on_signal => 'USR1'
|
111
|
+
|
112
|
+
go!
|
113
|
+
end
|
data/lib/tropo_tail/version.rb
CHANGED
data/tropo_tail.gemspec
CHANGED
@@ -24,7 +24,7 @@ Gem::Specification.new do |spec|
|
|
24
24
|
|
25
25
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
26
26
|
spec.bindir = "exe"
|
27
|
-
spec.executables =
|
27
|
+
spec.executables = "tropo_tail"
|
28
28
|
spec.require_paths = ["lib"]
|
29
29
|
|
30
30
|
spec.add_development_dependency "bundler", "~> 1.11"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tropo_tail
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeffrey Gisin
|
@@ -114,7 +114,8 @@ description: Currently the only way to access Tropo logs is to download a text f
|
|
114
114
|
when Tropo creates a new log file, for a better development experience.
|
115
115
|
email:
|
116
116
|
- jgisin@gmail.com
|
117
|
-
executables:
|
117
|
+
executables:
|
118
|
+
- tropo_tail
|
118
119
|
extensions: []
|
119
120
|
extra_rdoc_files: []
|
120
121
|
files:
|
@@ -126,6 +127,7 @@ files:
|
|
126
127
|
- bin/console
|
127
128
|
- bin/setup
|
128
129
|
- bin/tropo_tail
|
130
|
+
- exe/tropo_tail
|
129
131
|
- lib/tropo_tail.rb
|
130
132
|
- lib/tropo_tail/version.rb
|
131
133
|
- tropo_tail.gemspec
|