nats 0.4.10 → 0.4.22

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.
@@ -0,0 +1,35 @@
1
+ module NATSD #:nodoc: all
2
+
3
+ class Varz
4
+ def call(env)
5
+ varz_json = JSON.pretty_generate(Server.update_varz) + "\n"
6
+ hdrs = RACK_JSON_HDR.dup
7
+ hdrs['Content-Length'] = varz_json.bytesize.to_s
8
+ [200, hdrs, varz_json]
9
+ end
10
+ end
11
+
12
+ class Server
13
+ class << self
14
+
15
+ def update_varz
16
+ # Snapshot uptime
17
+ @varz[:uptime] = uptime_string(Time.now - @varz[:start])
18
+
19
+ # Grab current cpu and memory usage.
20
+ rss, pcpu = `ps -o rss=,pcpu= -p #{Process.pid}`.split
21
+ @varz[:mem] = rss.to_i
22
+ @varz[:cpu] = pcpu.to_f
23
+ @varz[:connections] = num_connections
24
+ @varz[:in_msgs] = in_msgs
25
+ @varz[:out_msgs] = out_msgs
26
+ @varz[:in_bytes] = in_bytes
27
+ @varz[:out_bytes] = out_bytes
28
+ @last_varz_update = Time.now.to_f
29
+ varz
30
+ end
31
+
32
+ end
33
+ end
34
+
35
+ end
@@ -8,42 +8,48 @@ require 'nats/server/const'
8
8
  spec = Gem::Specification.new do |s|
9
9
  s.name = 'nats'
10
10
  s.version = NATSD::VERSION
11
- s.summary = 'A lightweight publish-subscribe messaging system.'
11
+ s.summary = 'A lightweight publish-subscribe and distributed queuing messaging system.'
12
12
  s.homepage = 'http://github.com/derekcollison/nats'
13
- s.description = 'A lightweight publish-subscribe messaging system.'
13
+ s.description = 'A lightweight publish-subscribe and distributed queuing messaging system.'
14
14
  s.has_rdoc = true
15
15
 
16
16
  s.authors = ['Derek Collison']
17
17
  s.email = ['derek.collison@gmail.com']
18
18
 
19
19
  s.add_dependency('eventmachine', '>= 0.12.10')
20
- s.add_dependency('json_pure', '>= 1.5.1')
21
- s.add_dependency('daemons', '>= 1.1.0')
20
+ s.add_dependency('json_pure', '>= 1.6.1')
21
+ s.add_dependency('daemons', '>= 1.1.4')
22
+ s.add_dependency('thin', '>= 1.3.1')
22
23
 
23
24
  s.require_paths = ['lib']
24
25
  s.bindir = 'bin'
25
- s.executables = [NATSD::APP_NAME, 'nats-pub', 'nats-sub', 'nats-queue']
26
+ s.executables = [NATSD::APP_NAME, 'nats-pub', 'nats-sub', 'nats-queue', 'nats-top', 'nats-request']
26
27
 
27
28
  s.files = %w[
28
29
  COPYING
29
30
  README.md
30
- ChangeLog
31
+ HISTORY.md
31
32
  nats.gemspec
32
33
  Rakefile
33
34
  bin/nats-server
34
35
  bin/nats-sub
35
36
  bin/nats-pub
36
37
  bin/nats-queue
38
+ bin/nats-top
39
+ bin/nats-request
37
40
  lib/nats/client.rb
38
41
  lib/nats/ext/bytesize.rb
39
42
  lib/nats/ext/em.rb
40
43
  lib/nats/ext/json.rb
41
44
  lib/nats/server.rb
42
45
  lib/nats/server/server.rb
46
+ lib/nats/server/connection.rb
43
47
  lib/nats/server/options.rb
44
48
  lib/nats/server/sublist.rb
45
49
  lib/nats/server/const.rb
46
50
  lib/nats/server/util.rb
51
+ lib/nats/server/varz.rb
52
+ lib/nats/server/connz.rb
47
53
  ]
48
54
 
49
55
  end
metadata CHANGED
@@ -1,110 +1,119 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: nats
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.22
4
5
  prerelease:
5
- version: 0.4.10
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Derek Collison
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2011-04-21 00:00:00 -05:00
14
- default_executable:
15
- dependencies:
16
- - !ruby/object:Gem::Dependency
12
+ date: 2012-03-05 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
17
15
  name: eventmachine
18
- prerelease: false
19
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &70168295087200 !ruby/object:Gem::Requirement
20
17
  none: false
21
- requirements:
22
- - - ">="
23
- - !ruby/object:Gem::Version
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
24
21
  version: 0.12.10
25
22
  type: :runtime
26
- version_requirements: *id001
27
- - !ruby/object:Gem::Dependency
28
- name: json_pure
29
23
  prerelease: false
30
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: *70168295087200
25
+ - !ruby/object:Gem::Dependency
26
+ name: json_pure
27
+ requirement: &70168295086600 !ruby/object:Gem::Requirement
31
28
  none: false
32
- requirements:
33
- - - ">="
34
- - !ruby/object:Gem::Version
35
- version: 1.5.1
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: 1.6.1
36
33
  type: :runtime
37
- version_requirements: *id002
38
- - !ruby/object:Gem::Dependency
34
+ prerelease: false
35
+ version_requirements: *70168295086600
36
+ - !ruby/object:Gem::Dependency
39
37
  name: daemons
38
+ requirement: &70168295085380 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: 1.1.4
44
+ type: :runtime
40
45
  prerelease: false
41
- requirement: &id003 !ruby/object:Gem::Requirement
46
+ version_requirements: *70168295085380
47
+ - !ruby/object:Gem::Dependency
48
+ name: thin
49
+ requirement: &70168295084240 !ruby/object:Gem::Requirement
42
50
  none: false
43
- requirements:
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- version: 1.1.0
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: 1.3.1
47
55
  type: :runtime
48
- version_requirements: *id003
49
- description: A lightweight publish-subscribe messaging system.
50
- email:
56
+ prerelease: false
57
+ version_requirements: *70168295084240
58
+ description: A lightweight publish-subscribe and distributed queuing messaging system.
59
+ email:
51
60
  - derek.collison@gmail.com
52
- executables:
61
+ executables:
53
62
  - nats-server
54
63
  - nats-pub
55
64
  - nats-sub
56
65
  - nats-queue
66
+ - nats-top
67
+ - nats-request
57
68
  extensions: []
58
-
59
69
  extra_rdoc_files: []
60
-
61
- files:
70
+ files:
62
71
  - COPYING
63
72
  - README.md
64
- - ChangeLog
73
+ - HISTORY.md
65
74
  - nats.gemspec
66
75
  - Rakefile
67
76
  - bin/nats-server
68
77
  - bin/nats-sub
69
78
  - bin/nats-pub
70
79
  - bin/nats-queue
80
+ - bin/nats-top
81
+ - bin/nats-request
71
82
  - lib/nats/client.rb
72
83
  - lib/nats/ext/bytesize.rb
73
84
  - lib/nats/ext/em.rb
74
85
  - lib/nats/ext/json.rb
75
86
  - lib/nats/server.rb
76
87
  - lib/nats/server/server.rb
88
+ - lib/nats/server/connection.rb
77
89
  - lib/nats/server/options.rb
78
90
  - lib/nats/server/sublist.rb
79
91
  - lib/nats/server/const.rb
80
92
  - lib/nats/server/util.rb
81
- has_rdoc: true
93
+ - lib/nats/server/varz.rb
94
+ - lib/nats/server/connz.rb
82
95
  homepage: http://github.com/derekcollison/nats
83
96
  licenses: []
84
-
85
97
  post_install_message:
86
98
  rdoc_options: []
87
-
88
- require_paths:
99
+ require_paths:
89
100
  - lib
90
- required_ruby_version: !ruby/object:Gem::Requirement
101
+ required_ruby_version: !ruby/object:Gem::Requirement
91
102
  none: false
92
- requirements:
93
- - - ">="
94
- - !ruby/object:Gem::Version
95
- version: "0"
96
- required_rubygems_version: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - ! '>='
105
+ - !ruby/object:Gem::Version
106
+ version: '0'
107
+ required_rubygems_version: !ruby/object:Gem::Requirement
97
108
  none: false
98
- requirements:
99
- - - ">="
100
- - !ruby/object:Gem::Version
101
- version: "0"
109
+ requirements:
110
+ - - ! '>='
111
+ - !ruby/object:Gem::Version
112
+ version: '0'
102
113
  requirements: []
103
-
104
114
  rubyforge_project:
105
- rubygems_version: 1.6.2
115
+ rubygems_version: 1.8.17
106
116
  signing_key:
107
117
  specification_version: 3
108
- summary: A lightweight publish-subscribe messaging system.
118
+ summary: A lightweight publish-subscribe and distributed queuing messaging system.
109
119
  test_files: []
110
-
data/ChangeLog DELETED
@@ -1,11 +0,0 @@
1
- 2011-02-21, version 0.4.2
2
- * queue group support
3
- * auto-unsubscribe support
4
- * time expiration on subscriptions
5
- * jruby initial support (1.5.6, 1.6.0-RC1)
6
- * performance enhancements
7
- * complete config file support
8
-
9
- 2010-11-20, version 0.3.12
10
- * original upload to RubyGems
11
-