system-metrics 0.1.0

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.
Files changed (66) hide show
  1. data/LICENSE +20 -0
  2. data/README.rdoc +106 -0
  3. data/app/controllers/system_metrics/metrics_controller.rb +49 -0
  4. data/app/helpers/system_metrics/metrics_helper.rb +36 -0
  5. data/app/models/system_metrics/metric.rb +36 -0
  6. data/app/views/layouts/system_metrics/metrics.html.erb +42 -0
  7. data/app/views/system_metrics/metrics/_menu.html.erb +8 -0
  8. data/app/views/system_metrics/metrics/_metric_row.html.erb +19 -0
  9. data/app/views/system_metrics/metrics/_metric_table.html.erb +24 -0
  10. data/app/views/system_metrics/metrics/_portlet.html.erb +18 -0
  11. data/app/views/system_metrics/metrics/_title_bar.html.erb +17 -0
  12. data/app/views/system_metrics/metrics/admin.html.erb +27 -0
  13. data/app/views/system_metrics/metrics/category.html.erb +4 -0
  14. data/app/views/system_metrics/metrics/index.html.erb +6 -0
  15. data/app/views/system_metrics/metrics/show.html.erb +26 -0
  16. data/config/routes.rb +7 -0
  17. data/init.rb +1 -0
  18. data/lib/generators/system_metrics.rb +9 -0
  19. data/lib/generators/system_metrics/install/install_generator.rb +21 -0
  20. data/lib/generators/system_metrics/migration/migration_generator.rb +26 -0
  21. data/lib/generators/system_metrics/migration/templates/migration.rb +22 -0
  22. data/lib/system-metrics.rb +1 -0
  23. data/lib/system_metrics.rb +33 -0
  24. data/lib/system_metrics/collector.rb +32 -0
  25. data/lib/system_metrics/config.rb +38 -0
  26. data/lib/system_metrics/engine.rb +43 -0
  27. data/lib/system_metrics/instrument.rb +10 -0
  28. data/lib/system_metrics/instrument/action_controller.rb +20 -0
  29. data/lib/system_metrics/instrument/action_mailer.rb +15 -0
  30. data/lib/system_metrics/instrument/action_view.rb +23 -0
  31. data/lib/system_metrics/instrument/active_record.rb +20 -0
  32. data/lib/system_metrics/instrument/base.rb +77 -0
  33. data/lib/system_metrics/instrument/rack.rb +11 -0
  34. data/lib/system_metrics/middleware.rb +32 -0
  35. data/lib/system_metrics/nested_event.rb +57 -0
  36. data/lib/system_metrics/store.rb +31 -0
  37. data/lib/system_metrics/version.rb +3 -0
  38. data/public/images/rings_13.png +0 -0
  39. data/public/stylesheets/app.css +13 -0
  40. data/public/stylesheets/base.css +46 -0
  41. data/public/stylesheets/footer.css +6 -0
  42. data/public/stylesheets/graphs.css +9 -0
  43. data/public/stylesheets/header.css +52 -0
  44. data/public/stylesheets/ie.css +36 -0
  45. data/public/stylesheets/menu_bar.css +7 -0
  46. data/public/stylesheets/metric.css +19 -0
  47. data/public/stylesheets/payload.css +4 -0
  48. data/public/stylesheets/portlet.css +11 -0
  49. data/public/stylesheets/print.css +29 -0
  50. data/public/stylesheets/reset.css +65 -0
  51. data/public/stylesheets/title_bar.css +29 -0
  52. data/public/stylesheets/typography.css +123 -0
  53. data/spec/spec_helper.rb +10 -0
  54. data/spec/support/db_setup.rb +41 -0
  55. data/spec/support/mock_app.rb +23 -0
  56. data/spec/support/notifications_support.rb +12 -0
  57. data/spec/support/test_logger.rb +11 -0
  58. data/spec/support/test_store.rb +11 -0
  59. data/spec/support/transactional_specs.rb +17 -0
  60. data/spec/system_metrics/collector_spec.rb +60 -0
  61. data/spec/system_metrics/config_spec.rb +24 -0
  62. data/spec/system_metrics/engine_spec.rb +50 -0
  63. data/spec/system_metrics/middleware_spec.rb +45 -0
  64. data/spec/system_metrics_spec.rb +29 -0
  65. data/system-metrics.gemspec +24 -0
  66. metadata +163 -0
@@ -0,0 +1,29 @@
1
+ require File.dirname(__FILE__) + '/spec_helper'
2
+ require 'system_metrics'
3
+
4
+ describe SystemMetrics do
5
+ it 'should allow setting collection status to off' do
6
+ SystemMetrics.collection_off
7
+ SystemMetrics.should_not be_collecting
8
+ end
9
+
10
+ it 'should allow setting collection status to on' do
11
+ SystemMetrics.collection_on
12
+ SystemMetrics.should be_collecting
13
+ end
14
+
15
+ it 'should indicate whether the current status is on' do
16
+ SystemMetrics.collection_off
17
+ SystemMetrics.collecting?.should be_false
18
+ SystemMetrics.collection_on
19
+ SystemMetrics.collecting?.should be_true
20
+ end
21
+
22
+ it 'should allow a block of code to execute with status off' do
23
+ SystemMetrics.collection_on
24
+ SystemMetrics.without_collection do
25
+ SystemMetrics.should_not be_collecting
26
+ end
27
+ SystemMetrics.should be_collecting
28
+ end
29
+ end
@@ -0,0 +1,24 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require 'system_metrics/version'
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "system-metrics"
7
+ s.version = SystemMetrics::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Jeff Kunkle"]
10
+ s.homepage = "https://github.com/nearinfinity/system-metrics"
11
+ s.summary = "Web interface to Rails 3 performance metrics"
12
+ s.description = "System Metrics is a Rails 3 Engine that provides a clean web interface to the performance metrics instrumented with ActiveSupport::Notifications"
13
+ s.license = "MIT"
14
+
15
+ s.files = `git ls-files`.split("\n").reject { |path| path =~ /^(Gemfile|.gitignore|Rakefile)/ }
16
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
17
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
18
+ s.require_paths = ["lib"]
19
+
20
+ s.add_dependency('rails', '~> 3.0.0')
21
+
22
+ s.add_development_dependency('rspec', '2.5.0')
23
+ s.add_development_dependency('sqlite3-ruby', '1.3.3')
24
+ end
metadata ADDED
@@ -0,0 +1,163 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: system-metrics
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 0.1.0
6
+ platform: ruby
7
+ authors:
8
+ - Jeff Kunkle
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2011-07-19 00:00:00 -04:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: rails
18
+ prerelease: false
19
+ requirement: &id001 !ruby/object:Gem::Requirement
20
+ none: false
21
+ requirements:
22
+ - - ~>
23
+ - !ruby/object:Gem::Version
24
+ version: 3.0.0
25
+ type: :runtime
26
+ version_requirements: *id001
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec
29
+ prerelease: false
30
+ requirement: &id002 !ruby/object:Gem::Requirement
31
+ none: false
32
+ requirements:
33
+ - - "="
34
+ - !ruby/object:Gem::Version
35
+ version: 2.5.0
36
+ type: :development
37
+ version_requirements: *id002
38
+ - !ruby/object:Gem::Dependency
39
+ name: sqlite3-ruby
40
+ prerelease: false
41
+ requirement: &id003 !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - "="
45
+ - !ruby/object:Gem::Version
46
+ version: 1.3.3
47
+ type: :development
48
+ version_requirements: *id003
49
+ description: System Metrics is a Rails 3 Engine that provides a clean web interface to the performance metrics instrumented with ActiveSupport::Notifications
50
+ email:
51
+ executables: []
52
+
53
+ extensions: []
54
+
55
+ extra_rdoc_files: []
56
+
57
+ files:
58
+ - LICENSE
59
+ - README.rdoc
60
+ - app/controllers/system_metrics/metrics_controller.rb
61
+ - app/helpers/system_metrics/metrics_helper.rb
62
+ - app/models/system_metrics/metric.rb
63
+ - app/views/layouts/system_metrics/metrics.html.erb
64
+ - app/views/system_metrics/metrics/_menu.html.erb
65
+ - app/views/system_metrics/metrics/_metric_row.html.erb
66
+ - app/views/system_metrics/metrics/_metric_table.html.erb
67
+ - app/views/system_metrics/metrics/_portlet.html.erb
68
+ - app/views/system_metrics/metrics/_title_bar.html.erb
69
+ - app/views/system_metrics/metrics/admin.html.erb
70
+ - app/views/system_metrics/metrics/category.html.erb
71
+ - app/views/system_metrics/metrics/index.html.erb
72
+ - app/views/system_metrics/metrics/show.html.erb
73
+ - config/routes.rb
74
+ - init.rb
75
+ - lib/generators/system_metrics.rb
76
+ - lib/generators/system_metrics/install/install_generator.rb
77
+ - lib/generators/system_metrics/migration/migration_generator.rb
78
+ - lib/generators/system_metrics/migration/templates/migration.rb
79
+ - lib/system-metrics.rb
80
+ - lib/system_metrics.rb
81
+ - lib/system_metrics/collector.rb
82
+ - lib/system_metrics/config.rb
83
+ - lib/system_metrics/engine.rb
84
+ - lib/system_metrics/instrument.rb
85
+ - lib/system_metrics/instrument/action_controller.rb
86
+ - lib/system_metrics/instrument/action_mailer.rb
87
+ - lib/system_metrics/instrument/action_view.rb
88
+ - lib/system_metrics/instrument/active_record.rb
89
+ - lib/system_metrics/instrument/base.rb
90
+ - lib/system_metrics/instrument/rack.rb
91
+ - lib/system_metrics/middleware.rb
92
+ - lib/system_metrics/nested_event.rb
93
+ - lib/system_metrics/store.rb
94
+ - lib/system_metrics/version.rb
95
+ - public/images/rings_13.png
96
+ - public/stylesheets/app.css
97
+ - public/stylesheets/base.css
98
+ - public/stylesheets/footer.css
99
+ - public/stylesheets/graphs.css
100
+ - public/stylesheets/header.css
101
+ - public/stylesheets/ie.css
102
+ - public/stylesheets/menu_bar.css
103
+ - public/stylesheets/metric.css
104
+ - public/stylesheets/payload.css
105
+ - public/stylesheets/portlet.css
106
+ - public/stylesheets/print.css
107
+ - public/stylesheets/reset.css
108
+ - public/stylesheets/title_bar.css
109
+ - public/stylesheets/typography.css
110
+ - spec/spec_helper.rb
111
+ - spec/support/db_setup.rb
112
+ - spec/support/mock_app.rb
113
+ - spec/support/notifications_support.rb
114
+ - spec/support/test_logger.rb
115
+ - spec/support/test_store.rb
116
+ - spec/support/transactional_specs.rb
117
+ - spec/system_metrics/collector_spec.rb
118
+ - spec/system_metrics/config_spec.rb
119
+ - spec/system_metrics/engine_spec.rb
120
+ - spec/system_metrics/middleware_spec.rb
121
+ - spec/system_metrics_spec.rb
122
+ - system-metrics.gemspec
123
+ has_rdoc: true
124
+ homepage: https://github.com/nearinfinity/system-metrics
125
+ licenses:
126
+ - MIT
127
+ post_install_message:
128
+ rdoc_options: []
129
+
130
+ require_paths:
131
+ - lib
132
+ required_ruby_version: !ruby/object:Gem::Requirement
133
+ none: false
134
+ requirements:
135
+ - - ">="
136
+ - !ruby/object:Gem::Version
137
+ version: "0"
138
+ required_rubygems_version: !ruby/object:Gem::Requirement
139
+ none: false
140
+ requirements:
141
+ - - ">="
142
+ - !ruby/object:Gem::Version
143
+ version: "0"
144
+ requirements: []
145
+
146
+ rubyforge_project:
147
+ rubygems_version: 1.6.2
148
+ signing_key:
149
+ specification_version: 3
150
+ summary: Web interface to Rails 3 performance metrics
151
+ test_files:
152
+ - spec/spec_helper.rb
153
+ - spec/support/db_setup.rb
154
+ - spec/support/mock_app.rb
155
+ - spec/support/notifications_support.rb
156
+ - spec/support/test_logger.rb
157
+ - spec/support/test_store.rb
158
+ - spec/support/transactional_specs.rb
159
+ - spec/system_metrics/collector_spec.rb
160
+ - spec/system_metrics/config_spec.rb
161
+ - spec/system_metrics/engine_spec.rb
162
+ - spec/system_metrics/middleware_spec.rb
163
+ - spec/system_metrics_spec.rb