papertrail 0.9.2 → 0.9.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/bin/papertrail-add-group +8 -0
- data/bin/papertrail-add-system +8 -0
- data/bin/papertrail-join-group +8 -0
- data/bin/papertrail-remove-system +8 -0
- data/lib/papertrail.rb +1 -1
- data/lib/papertrail/cli.rb +4 -23
- data/lib/papertrail/cli_add_group.rb +83 -0
- data/lib/papertrail/cli_add_system.rb +84 -0
- data/lib/papertrail/cli_helpers.rb +25 -0
- data/lib/papertrail/cli_join_group.rb +79 -0
- data/lib/papertrail/cli_remove_system.rb +75 -0
- data/lib/papertrail/connection.rb +46 -6
- data/papertrail.gemspec +13 -3
- metadata +35 -10
data/lib/papertrail.rb
CHANGED
data/lib/papertrail/cli.rb
CHANGED
@@ -2,9 +2,12 @@ require 'optparse'
|
|
2
2
|
require 'yaml'
|
3
3
|
|
4
4
|
require 'papertrail/connection'
|
5
|
+
require 'papertrail/cli_helpers'
|
5
6
|
|
6
7
|
module Papertrail
|
7
8
|
class Cli
|
9
|
+
include Papertrail::CliHelpers
|
10
|
+
|
8
11
|
def run
|
9
12
|
# Let it slide if we have invalid JSON
|
10
13
|
if JSON.respond_to?(:default_options)
|
@@ -99,28 +102,6 @@ module Papertrail
|
|
99
102
|
end
|
100
103
|
end
|
101
104
|
|
102
|
-
def find_configfile
|
103
|
-
if File.exists?(path = File.expand_path('.papertrail.yml'))
|
104
|
-
return path
|
105
|
-
end
|
106
|
-
if File.exists?(path = File.expand_path('~/.papertrail.yml'))
|
107
|
-
return path
|
108
|
-
end
|
109
|
-
end
|
110
|
-
|
111
|
-
def load_configfile(file_path)
|
112
|
-
symbolize_keys(YAML.load_file(file_path))
|
113
|
-
end
|
114
|
-
|
115
|
-
def symbolize_keys(hash)
|
116
|
-
new_hash = {}
|
117
|
-
hash.each do |(key, value)|
|
118
|
-
new_hash[(key.to_sym rescue key) || key] = value
|
119
|
-
end
|
120
|
-
|
121
|
-
new_hash
|
122
|
-
end
|
123
|
-
|
124
105
|
def usage
|
125
106
|
<<-EOF
|
126
107
|
|
@@ -140,4 +121,4 @@ module Papertrail
|
|
140
121
|
EOF
|
141
122
|
end
|
142
123
|
end
|
143
|
-
end
|
124
|
+
end
|
@@ -0,0 +1,83 @@
|
|
1
|
+
require 'optparse'
|
2
|
+
require 'yaml'
|
3
|
+
|
4
|
+
require 'papertrail/cli_helpers'
|
5
|
+
require 'papertrail/connection'
|
6
|
+
|
7
|
+
module Papertrail
|
8
|
+
class CliAddGroup
|
9
|
+
include Papertrail::CliHelpers
|
10
|
+
|
11
|
+
def run
|
12
|
+
# Let it slide if we have invalid JSON
|
13
|
+
if JSON.respond_to?(:default_options)
|
14
|
+
JSON.default_options[:check_utf8] = false
|
15
|
+
end
|
16
|
+
|
17
|
+
options = {
|
18
|
+
:configfile => nil,
|
19
|
+
}
|
20
|
+
|
21
|
+
if configfile = find_configfile
|
22
|
+
configfile_options = load_configfile(configfile)
|
23
|
+
options.merge!(configfile_options)
|
24
|
+
end
|
25
|
+
|
26
|
+
OptionParser.new do |opts|
|
27
|
+
opts.banner = "papertrail-add-group"
|
28
|
+
|
29
|
+
opts.on("-h", "--help", "Show usage") do |v|
|
30
|
+
puts opts
|
31
|
+
exit
|
32
|
+
end
|
33
|
+
opts.on("-c", "--configfile PATH", "Path to config (~/.papertrail.yml)") do |v|
|
34
|
+
options[:configfile] = File.expand_path(v)
|
35
|
+
end
|
36
|
+
opts.on("-g", "--group SYSTEM", "Name of group to add") do |v|
|
37
|
+
options[:group] = v
|
38
|
+
end
|
39
|
+
opts.on("-w", "--system-wildcard WILDCARD", "Wildcard for system match") do |v|
|
40
|
+
options[:wildcard] = v
|
41
|
+
end
|
42
|
+
|
43
|
+
opts.separator usage
|
44
|
+
end.parse!
|
45
|
+
|
46
|
+
if options[:configfile]
|
47
|
+
configfile_options = load_configfile(options[:configfile])
|
48
|
+
options.merge!(configfile_options)
|
49
|
+
end
|
50
|
+
|
51
|
+
raise OptionParser::MissingArgument, 'group' if options[:group].nil?
|
52
|
+
|
53
|
+
connection = Papertrail::Connection.new(options)
|
54
|
+
|
55
|
+
# Bail if group already exists
|
56
|
+
if connection.show_group(options[:group])
|
57
|
+
exit 0
|
58
|
+
end
|
59
|
+
|
60
|
+
if connection.create_group(options[:group], options[:wildcard])
|
61
|
+
exit 0
|
62
|
+
end
|
63
|
+
|
64
|
+
exit 1
|
65
|
+
rescue OptionParser::ParseError => e
|
66
|
+
puts "Error: #{e}"
|
67
|
+
puts usage
|
68
|
+
exit 1
|
69
|
+
end
|
70
|
+
|
71
|
+
def usage
|
72
|
+
<<-EOF
|
73
|
+
|
74
|
+
Usage:
|
75
|
+
papertrail-add-group [-g group] [-w system-wildcard] [-c papertrail.yml]
|
76
|
+
|
77
|
+
Example:
|
78
|
+
papertrail-add-group -g mygroup -w mygroup-systems*
|
79
|
+
|
80
|
+
EOF
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
@@ -0,0 +1,84 @@
|
|
1
|
+
require 'optparse'
|
2
|
+
require 'yaml'
|
3
|
+
|
4
|
+
require 'papertrail/cli_helpers'
|
5
|
+
require 'papertrail/connection'
|
6
|
+
|
7
|
+
module Papertrail
|
8
|
+
class CliAddSystem
|
9
|
+
include Papertrail::CliHelpers
|
10
|
+
|
11
|
+
def run
|
12
|
+
# Let it slide if we have invalid JSON
|
13
|
+
if JSON.respond_to?(:default_options)
|
14
|
+
JSON.default_options[:check_utf8] = false
|
15
|
+
end
|
16
|
+
|
17
|
+
options = {
|
18
|
+
:configfile => nil,
|
19
|
+
}
|
20
|
+
|
21
|
+
if configfile = find_configfile
|
22
|
+
configfile_options = load_configfile(configfile)
|
23
|
+
options.merge!(configfile_options)
|
24
|
+
end
|
25
|
+
|
26
|
+
OptionParser.new do |opts|
|
27
|
+
opts.banner = "papertrail-add-system"
|
28
|
+
|
29
|
+
opts.on("-h", "--help", "Show usage") do |v|
|
30
|
+
puts opts
|
31
|
+
exit
|
32
|
+
end
|
33
|
+
opts.on("-c", "--configfile PATH", "Path to config (~/.papertrail.yml)") do |v|
|
34
|
+
options[:configfile] = File.expand_path(v)
|
35
|
+
end
|
36
|
+
opts.on("-s", "--system SYSTEM", "Name of system to add") do |v|
|
37
|
+
options[:system] = v
|
38
|
+
end
|
39
|
+
opts.on("-i", "--ip-address IP_ADDRESS", "IP address of system") do |v|
|
40
|
+
options[:ip] = v
|
41
|
+
end
|
42
|
+
|
43
|
+
opts.separator usage
|
44
|
+
end.parse!
|
45
|
+
|
46
|
+
if options[:configfile]
|
47
|
+
configfile_options = load_configfile(options[:configfile])
|
48
|
+
options.merge!(configfile_options)
|
49
|
+
end
|
50
|
+
|
51
|
+
raise OptionParser::MissingArgument, 'system' if options[:system].nil?
|
52
|
+
raise OptionParser::MissingArgument, 'ip' if options[:ip].nil?
|
53
|
+
|
54
|
+
connection = Papertrail::Connection.new(options)
|
55
|
+
|
56
|
+
# Bail if system already exists
|
57
|
+
if connection.show_source(options[:system])
|
58
|
+
exit 0
|
59
|
+
end
|
60
|
+
|
61
|
+
if connection.register_source(options[:system], options[:ip])
|
62
|
+
exit 0
|
63
|
+
end
|
64
|
+
|
65
|
+
exit 1
|
66
|
+
rescue OptionParser::ParseError => e
|
67
|
+
puts "Error: #{e}"
|
68
|
+
puts usage
|
69
|
+
exit 1
|
70
|
+
end
|
71
|
+
|
72
|
+
def usage
|
73
|
+
<<-EOF
|
74
|
+
|
75
|
+
Usage:
|
76
|
+
papertrail-add-system [-s system] [-i ip-address] [-c papertrail.yml]
|
77
|
+
|
78
|
+
Example:
|
79
|
+
papertrail-add-system -s mysystemname -i 1.2.3.4
|
80
|
+
|
81
|
+
EOF
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Papertrail
|
2
|
+
module CliHelpers
|
3
|
+
def find_configfile
|
4
|
+
if File.exists?(path = File.expand_path('.papertrail.yml'))
|
5
|
+
return path
|
6
|
+
end
|
7
|
+
if File.exists?(path = File.expand_path('~/.papertrail.yml'))
|
8
|
+
return path
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
def load_configfile(file_path)
|
13
|
+
symbolize_keys(YAML.load_file(file_path))
|
14
|
+
end
|
15
|
+
|
16
|
+
def symbolize_keys(hash)
|
17
|
+
new_hash = {}
|
18
|
+
hash.each do |(key, value)|
|
19
|
+
new_hash[(key.to_sym rescue key) || key] = value
|
20
|
+
end
|
21
|
+
|
22
|
+
new_hash
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,79 @@
|
|
1
|
+
require 'optparse'
|
2
|
+
require 'yaml'
|
3
|
+
|
4
|
+
require 'papertrail/cli_helpers'
|
5
|
+
require 'papertrail/connection'
|
6
|
+
|
7
|
+
module Papertrail
|
8
|
+
class CliJoinGroup
|
9
|
+
include Papertrail::CliHelpers
|
10
|
+
|
11
|
+
def run
|
12
|
+
# Let it slide if we have invalid JSON
|
13
|
+
if JSON.respond_to?(:default_options)
|
14
|
+
JSON.default_options[:check_utf8] = false
|
15
|
+
end
|
16
|
+
|
17
|
+
options = {
|
18
|
+
:configfile => nil,
|
19
|
+
}
|
20
|
+
|
21
|
+
if configfile = find_configfile
|
22
|
+
configfile_options = load_configfile(configfile)
|
23
|
+
options.merge!(configfile_options)
|
24
|
+
end
|
25
|
+
|
26
|
+
OptionParser.new do |opts|
|
27
|
+
opts.banner = "papertrail-join-group"
|
28
|
+
|
29
|
+
opts.on("-h", "--help", "Show usage") do |v|
|
30
|
+
puts opts
|
31
|
+
exit
|
32
|
+
end
|
33
|
+
opts.on("-c", "--configfile PATH", "Path to config (~/.papertrail.yml)") do |v|
|
34
|
+
options[:configfile] = File.expand_path(v)
|
35
|
+
end
|
36
|
+
opts.on("-s", "--system SYSTEM", "Name of system to add to group") do |v|
|
37
|
+
options[:system] = v
|
38
|
+
end
|
39
|
+
opts.on("-g", "--group GROUP", "Name of group to join") do |v|
|
40
|
+
options[:group] = v
|
41
|
+
end
|
42
|
+
|
43
|
+
opts.separator usage
|
44
|
+
end.parse!
|
45
|
+
|
46
|
+
if options[:configfile]
|
47
|
+
configfile_options = load_configfile(options[:configfile])
|
48
|
+
options.merge!(configfile_options)
|
49
|
+
end
|
50
|
+
|
51
|
+
raise OptionParser::MissingArgument, 'system' if options[:system].nil?
|
52
|
+
raise OptionParser::MissingArgument, 'group' if options[:group].nil?
|
53
|
+
|
54
|
+
connection = Papertrail::Connection.new(options)
|
55
|
+
|
56
|
+
if connection.join_group(options[:system], options[:group])
|
57
|
+
exit 0
|
58
|
+
end
|
59
|
+
|
60
|
+
exit 1
|
61
|
+
rescue OptionParser::ParseError => e
|
62
|
+
puts "Error: #{e}"
|
63
|
+
puts usage
|
64
|
+
exit 1
|
65
|
+
end
|
66
|
+
|
67
|
+
def usage
|
68
|
+
<<-EOF
|
69
|
+
|
70
|
+
Usage:
|
71
|
+
papertrail-join-group [-s system] [-g group] [-c papertrail.yml]
|
72
|
+
|
73
|
+
Example:
|
74
|
+
papertrail-join-group -s mymachine -g mygroup
|
75
|
+
|
76
|
+
EOF
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
@@ -0,0 +1,75 @@
|
|
1
|
+
require 'optparse'
|
2
|
+
require 'yaml'
|
3
|
+
|
4
|
+
require 'papertrail/cli_helpers'
|
5
|
+
require 'papertrail/connection'
|
6
|
+
|
7
|
+
module Papertrail
|
8
|
+
class CliRemoveSystem
|
9
|
+
include Papertrail::CliHelpers
|
10
|
+
|
11
|
+
def run
|
12
|
+
# Let it slide if we have invalid JSON
|
13
|
+
if JSON.respond_to?(:default_options)
|
14
|
+
JSON.default_options[:check_utf8] = false
|
15
|
+
end
|
16
|
+
|
17
|
+
options = {
|
18
|
+
:configfile => nil,
|
19
|
+
}
|
20
|
+
|
21
|
+
if configfile = find_configfile
|
22
|
+
configfile_options = load_configfile(configfile)
|
23
|
+
options.merge!(configfile_options)
|
24
|
+
end
|
25
|
+
|
26
|
+
OptionParser.new do |opts|
|
27
|
+
opts.banner = "papertrail-remove-system"
|
28
|
+
|
29
|
+
opts.on("-h", "--help", "Show usage") do |v|
|
30
|
+
puts opts
|
31
|
+
exit
|
32
|
+
end
|
33
|
+
opts.on("-c", "--configfile PATH", "Path to config (~/.papertrail.yml)") do |v|
|
34
|
+
options[:configfile] = File.expand_path(v)
|
35
|
+
end
|
36
|
+
opts.on("-s", "--system SYSTEM", "Name of system to remove") do |v|
|
37
|
+
options[:system] = v
|
38
|
+
end
|
39
|
+
|
40
|
+
opts.separator usage
|
41
|
+
end.parse!
|
42
|
+
|
43
|
+
if options[:configfile]
|
44
|
+
configfile_options = load_configfile(options[:configfile])
|
45
|
+
options.merge!(configfile_options)
|
46
|
+
end
|
47
|
+
|
48
|
+
raise OptionParser::MissingArgument, 'system' if options[:system].nil?
|
49
|
+
|
50
|
+
connection = Papertrail::Connection.new(options)
|
51
|
+
|
52
|
+
if connection.unregister_source(options[:system])
|
53
|
+
exit 0
|
54
|
+
end
|
55
|
+
|
56
|
+
exit 1
|
57
|
+
rescue OptionParser::ParseError => e
|
58
|
+
puts "Error: #{e}"
|
59
|
+
puts usage
|
60
|
+
exit 1
|
61
|
+
end
|
62
|
+
|
63
|
+
def usage
|
64
|
+
<<-EOF
|
65
|
+
|
66
|
+
Usage:
|
67
|
+
papertrail-remove-system [-s system] [-c papertrail.yml]
|
68
|
+
|
69
|
+
Example:
|
70
|
+
papertrail-remove-system -s mysystemname
|
71
|
+
|
72
|
+
EOF
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'addressable/uri'
|
1
2
|
require 'faraday'
|
2
3
|
require 'openssl'
|
3
4
|
require 'faraday_middleware'
|
@@ -11,7 +12,7 @@ module Papertrail
|
|
11
12
|
|
12
13
|
attr_reader :connection
|
13
14
|
|
14
|
-
def_delegators :@connection, :get, :put, :post
|
15
|
+
def_delegators :@connection, :get, :put, :post, :delete
|
15
16
|
|
16
17
|
def initialize(options)
|
17
18
|
ssl_options = {
|
@@ -26,7 +27,8 @@ module Papertrail
|
|
26
27
|
ssl_options[:ca_file] = '/etc/ssl/certs/ca-certificates.crt'
|
27
28
|
end
|
28
29
|
|
29
|
-
@connection = Faraday::Connection.new(:url => 'https://papertrailapp.com', :ssl => ssl_options) do |builder|
|
30
|
+
@connection = Faraday::Connection.new(:url => 'https://papertrailapp.com/api/v1', :ssl => ssl_options) do |builder|
|
31
|
+
builder.use Faraday::Request::UrlEncoded
|
30
32
|
builder.adapter Faraday.default_adapter
|
31
33
|
builder.use Faraday::Response::RaiseError
|
32
34
|
builder.use FaradayMiddleware::ParseJson, :content_type => /\bjson$/
|
@@ -40,14 +42,13 @@ module Papertrail
|
|
40
42
|
end
|
41
43
|
|
42
44
|
def find_id_for_source(name)
|
43
|
-
response = @connection.get('
|
45
|
+
response = @connection.get('systems.json')
|
44
46
|
|
45
47
|
find_id_for_item(response.body, name)
|
46
48
|
end
|
47
49
|
|
48
50
|
def find_id_for_group(name)
|
49
|
-
response = @connection.get('
|
50
|
-
|
51
|
+
response = @connection.get('groups.json')
|
51
52
|
find_id_for_item(response.body, name)
|
52
53
|
end
|
53
54
|
|
@@ -59,10 +60,49 @@ module Papertrail
|
|
59
60
|
items.each do |item|
|
60
61
|
return item['id'] if item['name'] =~ /#{Regexp.escape(name_wanted)}/i
|
61
62
|
end
|
63
|
+
return nil
|
64
|
+
end
|
65
|
+
|
66
|
+
def create_group(name, system_wildcard = nil)
|
67
|
+
group = { :group => { :name => name } }
|
68
|
+
if system_wildcard
|
69
|
+
group[:group][:system_wildcard] = system_wildcard
|
70
|
+
end
|
71
|
+
@connection.post("groups.json", group)
|
72
|
+
end
|
73
|
+
|
74
|
+
def show_group(name)
|
75
|
+
if id = find_id_for_group(name)
|
76
|
+
@connection.get("groups/#{id}.json").body
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
def show_source(name)
|
81
|
+
if id = find_id_for_source(name)
|
82
|
+
@connection.get("systems/#{id}.json").body
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
def join_group(source_name, group_name)
|
87
|
+
source_id = find_id_for_source(source_name)
|
88
|
+
group_id = find_id_for_group(group_name)
|
89
|
+
if source_id && group_id
|
90
|
+
@connection.post("systems/#{source_id}/join.json", :group_id => group_id)
|
91
|
+
end
|
92
|
+
end
|
93
|
+
|
94
|
+
def register_source(name, ip_address)
|
95
|
+
@connection.post("systems.json", :system => { :name => name, :ip_address => ip_address })
|
96
|
+
end
|
97
|
+
|
98
|
+
def unregister_source(name)
|
99
|
+
if source_id = find_id_for_source(name)
|
100
|
+
@connection.delete("systems/#{source_id}.json")
|
101
|
+
end
|
62
102
|
end
|
63
103
|
|
64
104
|
def query(query = nil, options = {})
|
65
105
|
Papertrail::SearchQuery.new(self, query, options)
|
66
106
|
end
|
67
107
|
end
|
68
|
-
end
|
108
|
+
end
|
data/papertrail.gemspec
CHANGED
@@ -13,8 +13,8 @@ Gem::Specification.new do |s|
|
|
13
13
|
## If your rubyforge_project name is different, then edit it and comment out
|
14
14
|
## the sub! line in the Rakefile
|
15
15
|
s.name = 'papertrail'
|
16
|
-
s.version = '0.9.
|
17
|
-
s.date = '2012-
|
16
|
+
s.version = '0.9.3'
|
17
|
+
s.date = '2012-07-12'
|
18
18
|
s.rubyforge_project = 'papertrail'
|
19
19
|
|
20
20
|
## Make sure your summary is short. The description may be as long
|
@@ -38,7 +38,7 @@ Gem::Specification.new do |s|
|
|
38
38
|
# s.extensions = %w[ext/extconf.rb]
|
39
39
|
|
40
40
|
## If your gem includes any executables, list them here.
|
41
|
-
s.executables = ["papertrail"]
|
41
|
+
s.executables = ["papertrail", "papertrail-add-system", "papertrail-remove-system", "papertrail-add-group", "papertrail-join-group"]
|
42
42
|
s.default_executable = 'papertrail'
|
43
43
|
|
44
44
|
## Specify any RDoc options here. You'll want to add your README and
|
@@ -49,6 +49,7 @@ Gem::Specification.new do |s|
|
|
49
49
|
|
50
50
|
## List your runtime dependencies here. Runtime dependencies are those
|
51
51
|
## that are needed for an end user to actually USE your code.
|
52
|
+
s.add_dependency('addressable')
|
52
53
|
s.add_dependency('yajl-ruby')
|
53
54
|
s.add_dependency('faraday', [ '>= 0.6', '< 0.9' ])
|
54
55
|
s.add_dependency('faraday_middleware', [ '~> 0.8.4' ])
|
@@ -67,9 +68,18 @@ Gem::Specification.new do |s|
|
|
67
68
|
README.md
|
68
69
|
Rakefile
|
69
70
|
bin/papertrail
|
71
|
+
bin/papertrail-add-group
|
72
|
+
bin/papertrail-add-system
|
73
|
+
bin/papertrail-join-group
|
74
|
+
bin/papertrail-remove-system
|
70
75
|
examples/papertrail.yml.example
|
71
76
|
lib/papertrail.rb
|
72
77
|
lib/papertrail/cli.rb
|
78
|
+
lib/papertrail/cli_add_group.rb
|
79
|
+
lib/papertrail/cli_add_system.rb
|
80
|
+
lib/papertrail/cli_helpers.rb
|
81
|
+
lib/papertrail/cli_join_group.rb
|
82
|
+
lib/papertrail/cli_remove_system.rb
|
73
83
|
lib/papertrail/connection.rb
|
74
84
|
lib/papertrail/event.rb
|
75
85
|
lib/papertrail/search_query.rb
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 9
|
8
|
-
-
|
9
|
-
version: 0.9.
|
8
|
+
- 3
|
9
|
+
version: 0.9.3
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Papertrail
|
@@ -14,10 +14,11 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2012-
|
17
|
+
date: 2012-07-12 00:00:00 -07:00
|
18
18
|
default_executable: papertrail
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
|
+
type: :runtime
|
21
22
|
version_requirements: &id001 !ruby/object:Gem::Requirement
|
22
23
|
requirements:
|
23
24
|
- - ">="
|
@@ -25,12 +26,24 @@ dependencies:
|
|
25
26
|
segments:
|
26
27
|
- 0
|
27
28
|
version: "0"
|
29
|
+
name: addressable
|
28
30
|
requirement: *id001
|
29
|
-
name: yajl-ruby
|
30
31
|
prerelease: false
|
31
|
-
type: :runtime
|
32
32
|
- !ruby/object:Gem::Dependency
|
33
|
+
type: :runtime
|
33
34
|
version_requirements: &id002 !ruby/object:Gem::Requirement
|
35
|
+
requirements:
|
36
|
+
- - ">="
|
37
|
+
- !ruby/object:Gem::Version
|
38
|
+
segments:
|
39
|
+
- 0
|
40
|
+
version: "0"
|
41
|
+
name: yajl-ruby
|
42
|
+
requirement: *id002
|
43
|
+
prerelease: false
|
44
|
+
- !ruby/object:Gem::Dependency
|
45
|
+
type: :runtime
|
46
|
+
version_requirements: &id003 !ruby/object:Gem::Requirement
|
34
47
|
requirements:
|
35
48
|
- - ">="
|
36
49
|
- !ruby/object:Gem::Version
|
@@ -44,12 +57,12 @@ dependencies:
|
|
44
57
|
- 0
|
45
58
|
- 9
|
46
59
|
version: "0.9"
|
47
|
-
requirement: *id002
|
48
60
|
name: faraday
|
61
|
+
requirement: *id003
|
49
62
|
prerelease: false
|
50
|
-
type: :runtime
|
51
63
|
- !ruby/object:Gem::Dependency
|
52
|
-
|
64
|
+
type: :runtime
|
65
|
+
version_requirements: &id004 !ruby/object:Gem::Requirement
|
53
66
|
requirements:
|
54
67
|
- - ~>
|
55
68
|
- !ruby/object:Gem::Version
|
@@ -58,14 +71,17 @@ dependencies:
|
|
58
71
|
- 8
|
59
72
|
- 4
|
60
73
|
version: 0.8.4
|
61
|
-
requirement: *id003
|
62
74
|
name: faraday_middleware
|
75
|
+
requirement: *id004
|
63
76
|
prerelease: false
|
64
|
-
type: :runtime
|
65
77
|
description: Command-line client for Papertrail hosted log management service. Tails and searches app server logs and system syslog. Supports Boolean search and works with grep and pipe output (Unix).
|
66
78
|
email: troy@sevenscale.com
|
67
79
|
executables:
|
68
80
|
- papertrail
|
81
|
+
- papertrail-add-system
|
82
|
+
- papertrail-remove-system
|
83
|
+
- papertrail-add-group
|
84
|
+
- papertrail-join-group
|
69
85
|
extensions: []
|
70
86
|
|
71
87
|
extra_rdoc_files: []
|
@@ -76,9 +92,18 @@ files:
|
|
76
92
|
- README.md
|
77
93
|
- Rakefile
|
78
94
|
- bin/papertrail
|
95
|
+
- bin/papertrail-add-group
|
96
|
+
- bin/papertrail-add-system
|
97
|
+
- bin/papertrail-join-group
|
98
|
+
- bin/papertrail-remove-system
|
79
99
|
- examples/papertrail.yml.example
|
80
100
|
- lib/papertrail.rb
|
81
101
|
- lib/papertrail/cli.rb
|
102
|
+
- lib/papertrail/cli_add_group.rb
|
103
|
+
- lib/papertrail/cli_add_system.rb
|
104
|
+
- lib/papertrail/cli_helpers.rb
|
105
|
+
- lib/papertrail/cli_join_group.rb
|
106
|
+
- lib/papertrail/cli_remove_system.rb
|
82
107
|
- lib/papertrail/connection.rb
|
83
108
|
- lib/papertrail/event.rb
|
84
109
|
- lib/papertrail/search_query.rb
|