scout 5.5.4 → 5.5.5
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/CHANGELOG +5 -0
- data/README.markdown +65 -0
- data/lib/scout/command.rb +18 -14
- data/lib/scout/command/run.rb +1 -0
- data/lib/scout/version.rb +1 -1
- metadata +5 -5
- data/README +0 -74
data/CHANGELOG
CHANGED
data/README.markdown
ADDED
@@ -0,0 +1,65 @@
|
|
1
|
+
# Scout Server Monitoring Agent
|
2
|
+
|
3
|
+
[Scout](https://scoutapp.com) is an easy-to-use hosted server monitoring service. The `scout` Ruby gem reports metrics to our service. The agent runs plugins, configured via the Scout web interface, to monitor a server. [View a list of available plugins on our website](https://scoutapp.com/plugin_urls) and [their source on Github](http://github.com/scoutapp/scout-plugins).
|
4
|
+
|
5
|
+
## Installing
|
6
|
+
|
7
|
+
Install the Scout gem:
|
8
|
+
|
9
|
+
$ gem install scout
|
10
|
+
|
11
|
+
Then simply run:
|
12
|
+
|
13
|
+
$ scout
|
14
|
+
|
15
|
+
to start the installation wizard. You'll need your server key, provided via Scout's web UI, to continue. Scout's web UI also provides additional troubleshooting and Ruby installation instructions.
|
16
|
+
|
17
|
+
## Running the Scout Agent
|
18
|
+
|
19
|
+
The Scout agent has several modes of operation and commands. The normal, intended usage is through a scheduled interval with no output.
|
20
|
+
|
21
|
+
Normal checkin with server:
|
22
|
+
|
23
|
+
$ scout [OPTIONS] SERVER_KEY
|
24
|
+
|
25
|
+
Install:
|
26
|
+
|
27
|
+
$ scout
|
28
|
+
$ scout [OPTIONS] install
|
29
|
+
|
30
|
+
Local plugin testing:
|
31
|
+
|
32
|
+
$ scout [OPTIONS] test PATH_TO_PLUGIN [PLUGIN_OPTIONS]
|
33
|
+
|
34
|
+
|
35
|
+
`SERVER_KEY` is the identification key assigned by your account at http://scoutapp.com.
|
36
|
+
|
37
|
+
`PATH_TO_PLUGIN` is the file system path to a Ruby file that contains a Scout plugin.
|
38
|
+
|
39
|
+
`PLUGIN_OPTIONS` are one or more options in the form:
|
40
|
+
|
41
|
+
key1=val1 key2=val2
|
42
|
+
|
43
|
+
These options will be used for the plugin run.
|
44
|
+
|
45
|
+
## Setting up in Cron
|
46
|
+
|
47
|
+
Configure Scout to run every minute. Typically, this will look like:
|
48
|
+
|
49
|
+
* * * * * deploy /usr/bin/scout SERVER_KEY
|
50
|
+
|
51
|
+
It's often helpful to log the output to a file. To do so:
|
52
|
+
|
53
|
+
* * * * * deploy /usr/bin/scout SERVER_KEY > /path/to/anywhere/scout.out 2>&1
|
54
|
+
|
55
|
+
## Troubleshooting
|
56
|
+
|
57
|
+
Extensive help is available via our website (http://scoutapp.com) and while installing the agent via the Scout web UI.
|
58
|
+
|
59
|
+
## Credits / Contact
|
60
|
+
|
61
|
+
Contact support@scoutapp.com with questions.
|
62
|
+
|
63
|
+
Primary maintainers: Andre Lewis (andre@scoutapp.com) and Derek Haynes (derek@scoutapp.com)
|
64
|
+
|
65
|
+
Many thanks to James Edward Gray II, Charles Brian Quinn, and Matt Todd for early work on the Scout agent!
|
data/lib/scout/command.rb
CHANGED
@@ -234,24 +234,28 @@ module Scout
|
|
234
234
|
end
|
235
235
|
end
|
236
236
|
rescue
|
237
|
-
pid = File.read(pid_file).strip.to_i rescue "unknown"
|
238
237
|
running = true
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
238
|
+
pid = File.read(pid_file).strip.to_i rescue "unknown"
|
239
|
+
if pid.zero?
|
240
|
+
running = false
|
241
|
+
else
|
242
|
+
begin
|
243
|
+
Process.kill(0, pid)
|
244
|
+
if stat = File.stat(pid_file)
|
245
|
+
if mtime = stat.mtime
|
246
|
+
if Time.now - mtime > 25 * 60 # assume process is hung after 25m
|
247
|
+
log.info "Trying to KILL an old process..." if log
|
248
|
+
Process.kill("KILL", pid)
|
249
|
+
running = false
|
250
|
+
end
|
247
251
|
end
|
248
252
|
end
|
253
|
+
rescue Errno::ESRCH
|
254
|
+
running = false
|
255
|
+
rescue
|
256
|
+
# do nothing, we didn't have permission to check the running process
|
249
257
|
end
|
250
|
-
|
251
|
-
running = false
|
252
|
-
rescue
|
253
|
-
# do nothing, we didn't have permission to check the running process
|
254
|
-
end
|
258
|
+
end # pid.zero?
|
255
259
|
if running
|
256
260
|
if pid == "unknown"
|
257
261
|
log.warn "Could not create or read PID file. " +
|
data/lib/scout/command/run.rb
CHANGED
@@ -7,6 +7,7 @@ module Scout
|
|
7
7
|
key = @args.first
|
8
8
|
# TODO: this is an awkward way to force creation of the config directory. Could use a little refactoring.
|
9
9
|
configuration_directory = config_dir
|
10
|
+
log.debug("Running Scout [#{Scout::VERSION}] on #{Socket.gethostname}") if log
|
10
11
|
log.debug("Configuration directory is #{configuration_directory} ") if log
|
11
12
|
# TODO: too much external logic of command doing things TO server. This should be moved into the server class.
|
12
13
|
@scout = Scout::Server.new(server, key, history, log, server_name, @http_proxy, @https_proxy)
|
data/lib/scout/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scout
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.5.
|
4
|
+
version: 5.5.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,11 +11,11 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2012-
|
14
|
+
date: 2012-07-03 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: elif
|
18
|
-
requirement: &
|
18
|
+
requirement: &2157262900 !ruby/object:Gem::Requirement
|
19
19
|
none: false
|
20
20
|
requirements:
|
21
21
|
- - ! '>='
|
@@ -23,7 +23,7 @@ dependencies:
|
|
23
23
|
version: '0'
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
|
-
version_requirements: *
|
26
|
+
version_requirements: *2157262900
|
27
27
|
description: ! 'Scout makes monitoring and reporting on your web applications as flexible
|
28
28
|
and simple as possible.
|
29
29
|
|
@@ -38,7 +38,7 @@ files:
|
|
38
38
|
- CHANGELOG
|
39
39
|
- Gemfile
|
40
40
|
- LICENSE
|
41
|
-
- README
|
41
|
+
- README.markdown
|
42
42
|
- Rakefile
|
43
43
|
- bin/scout
|
44
44
|
- data/cacert.pem
|
data/README
DELETED
@@ -1,74 +0,0 @@
|
|
1
|
-
= ReadMe
|
2
|
-
|
3
|
-
Scout by Highgroove Studios
|
4
|
-
|
5
|
-
== Description
|
6
|
-
|
7
|
-
The easier way to monitor servers and web applications.
|
8
|
-
|
9
|
-
Scout makes monitoring and reporting on your web applications
|
10
|
-
as flexible and simple as possible.
|
11
|
-
|
12
|
-
Scout is a product of Highgroove Studios.
|
13
|
-
Please visit http://scoutapp.com for more information.
|
14
|
-
|
15
|
-
== Installing
|
16
|
-
|
17
|
-
Install the Scout gem:
|
18
|
-
|
19
|
-
$ sudo gem install scout
|
20
|
-
|
21
|
-
Then simply run:
|
22
|
-
|
23
|
-
$ scout
|
24
|
-
|
25
|
-
to run the installation wizard. You'll need your server key to continue. Get the server key from your account at http://scoutapp.com
|
26
|
-
|
27
|
-
== Running the Scout Client
|
28
|
-
|
29
|
-
The Scout client has several modes of operation and commands. The normal, intended usage is through a scheduled interval with no output.
|
30
|
-
|
31
|
-
Normal checkin with server:
|
32
|
-
$ scout [OPTIONS] SERVER_KEY
|
33
|
-
... OR ...
|
34
|
-
$ scout [OPTIONS] run SERVER_KEY
|
35
|
-
|
36
|
-
Install:
|
37
|
-
$ scout
|
38
|
-
... OR ...
|
39
|
-
$ scout [OPTIONS] install
|
40
|
-
|
41
|
-
Local plugin testing:
|
42
|
-
$ scout [OPTIONS] test PATH_TO_PLUGIN [PLUGIN_OPTIONS]
|
43
|
-
|
44
|
-
|
45
|
-
SERVER_KEY is the identification key assigned by your account at http://scoutapp.com
|
46
|
-
|
47
|
-
PATH_TO_PLUGIN is the file system path to a Ruby file
|
48
|
-
that contains a Scout plugin.
|
49
|
-
|
50
|
-
PLUGIN_OPTIONS are one or more options in the form:
|
51
|
-
key1=val1 key2=val2
|
52
|
-
These options will be used for the plugin run.
|
53
|
-
|
54
|
-
|
55
|
-
== Setting up in cron
|
56
|
-
|
57
|
-
Configure Scout to run every minute. Typically, this will look like:
|
58
|
-
|
59
|
-
* * * * * deploy /usr/bin/scout SERVER_KEY
|
60
|
-
|
61
|
-
It's often helpful to log the output to a file. To do so:
|
62
|
-
|
63
|
-
* * * * * deploy /usr/bin/scout SERVER_KEY > /path/to/anywhere/scout.out 2>&1
|
64
|
-
|
65
|
-
|
66
|
-
For additional help, please visit http://scoutapp.com
|
67
|
-
|
68
|
-
== Credits / Contact
|
69
|
-
|
70
|
-
Contact support@scoutapp.com with questions.
|
71
|
-
|
72
|
-
Primary maintainers: Andre Lewis (andre@scoutapp.com) and Derek Haynes (derek@scoutapp.com)
|
73
|
-
|
74
|
-
Many thanks to James Edward Gray II, Charles Brian Quinn, and Matt Todd for early work on the Scout agent!
|