site24x7_apminsight 1.9.0 → 1.9.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 6adf1511641c4e23c0e5f0a0ac71336dd62c4fe0ee23b0df46b07e804c74841a
4
+ data.tar.gz: 1d5dcaa91fd5e185f3592c86f686af35f33d20918297ef0f1d2deeaffa5a5c7b
5
+ SHA512:
6
+ metadata.gz: 7a01e038e40a5656c0c62dd353dcb5c118bc071312612aef245fdf1d2edcf2ae4a6dded206406febda1f029b42a961b5b75758565758938dc5ee77a7e837b92c
7
+ data.tar.gz: 80d84c7ba2f6095adb9050040283a788242d94f7ad9e00b9141b76addbb88123fa16027de9af33723bd3a60daa9e5a01c4a75b5ea0205a0d3c009aed7f23ca3c
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- This License Agreement details the policy for license of Site24x7 APM Insight Ruby Agent ("Licensed Software")
1
+ This License Agreement details the policy for license of ManageEngine APM Insight Ruby Agent ("Licensed Software")
2
2
  Please read the following license carefully, before either (i) downloading the Licensed Software from an authorized website, or (ii) installing the Licensed Software. You acknowledge that you have read this License Agreement, have understood it, and agree to be bound by its terms. If you do not agree to the terms and conditions of this Agreement, do not download or install the Licensed Software.
3
3
 
4
4
  1. LICENSE GRANT
data/README.rdoc CHANGED
@@ -1,5 +1,5 @@
1
1
  APM Insight Ruby Agent
2
- Site24x7 APM Insight Ruby agent gives you end-to-end web-transaction awareness enabling you to isolate performance issues and resolve them quickly. Site24x7 APM Insight requires a monitoring agent (ruby gem) to be deployed in your application server to monitor Ruby application performance. Download the latest Ruby Agent(site24x7_apminsight.gem) and deploy it in your application server. The agent collects application performance metrics and sends it to the central Site24x7 server at fixed intervals i.e. every 60 seconds. You can view them at https://site24x7.com in your accounts page.
2
+ Applications Manager's Ruby agent gives you end-to-end web-transaction awareness enabling you to isolate performance issues and resolve them quickly.Applications Manager requires a monitoring agent (ruby gem) to be deployed in your application server to monitor Ruby application performance. Download the latest Ruby Agent(apminsight.gem) and deploy it in your application server. The agent collects application performance metrics and sends it to the central Applications Manager server at fixed intervals i.e. every 60 seconds.
3
3
 
4
4
  Installing APM Insight Agent
5
5
 
@@ -7,13 +7,13 @@ Installing APM Insight Agent
7
7
 
8
8
  * Install from RubyGems by using the following command in the system where Ruby is installed :
9
9
 
10
- gem install site24x7_apminsight
10
+ gem install apminsight
11
11
 
12
12
  OR
13
13
 
14
- * Download the site24x7_apminsight.gem file from your accounts page in https://site24x7.com (after sign in) or the RubyGems website and run the command
14
+ * Download the apminsight.gem file directly from our website or the RubyGems website and run the command
15
15
 
16
- gem install site24x7_apminsight.gem
16
+ gem install apminsight.gem
17
17
 
18
18
  Configuration
19
19
 
@@ -21,28 +21,30 @@ Configuration
21
21
 
22
22
  For each of your applications, add the following line to the application gemfile:
23
23
 
24
- gem 'site24x7_apminsight'
24
+ gem 'apminsight'
25
25
 
26
26
  OR
27
27
 
28
28
  For each of your applications, add the following line to the application initializer block:
29
29
 
30
- require 'site24x7_apminsight'
30
+ require 'apminsight'
31
31
 
32
- A copy of the configuration file apminsight.conf will be available in the <Gem Installed folder> /site24x7_apminsight/conf/. Configure the class name in the configuration file(include.packages), so that all the methods in that class can be instrumented and details will be reported in tracedata.
32
+ A copy of the configuration file apminsight.conf will be available in the <Gem Installed folder> /apminsight/conf/. Configure the class name in the configuration file(include.packages), so that all the methods in that class can be instrumented and details will be reported in tracedata.
33
33
 
34
34
 
35
35
  The following configuration options are mandatory and should be provided for the agent to be initialized:
36
36
 
37
- application.name - The application's name to be displayed in Site24x7 server.
37
+ application.name - The application's name to be displayed in Applications Manager.
38
38
 
39
- license.key - The license api key from your account page after sign in (https://site24x7.com)
39
+ apm.host - The host where Applications Manager is running.
40
+
41
+ apm.port - The HTTP port of Applications Manager.
40
42
 
41
43
  behind.proxy - The proxy network under which the agent is installed
42
44
 
43
45
  agent.server.port - The HTTP listening port of the Application Server.
44
46
 
45
- More configuration options of APM Insight Ruby Agent can be found here. https://www.site24x7.com/help/apm/apm-insight-configuration.html
47
+ More configuration options of APM Insight Ruby Agent can be found here.
46
48
 
47
49
  Supported Environments :
48
50
 
@@ -52,16 +54,16 @@ Supported Environments :
52
54
 
53
55
  References
54
56
 
55
- * Create an apminsight account in Site24x7 server (https://www.site24x7.com)
57
+ * Download link for Applications Manager
56
58
 
57
- * Download link for site24x7_apminsight gem
59
+ http://www.manageengine.com/products/applications_manager/
58
60
 
59
- From your account page after valid sign in
60
- or
61
- http://rubygems.org/gems/site24x7_apminsight
61
+ * Download link for apminsight
62
62
 
63
- * Help Documentation for apminsight
63
+ http://www.manageengine.com/products/applications_manager/
64
+ http://rubygems.org/gems/apminsight
64
65
 
65
- https://www.site24x7.com/help/apm/ruby-agent.html
66
- https://support.site24x7.com/portal/helpcenter/site24x7/apm-insight/ruby-monitoring
66
+ * Help Documentation for apminsight
67
67
 
68
+ http://www.manageengine.com/products/applications_manager/help/APMInsight/installing-transaction-agent.html
69
+
data/Rakefile CHANGED
@@ -14,13 +14,13 @@ require 'rake'
14
14
  require 'jeweler'
15
15
  Jeweler::Tasks.new do |gem|
16
16
  # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
17
- gem.name = "site24x7_apminsight"
18
- gem.homepage = "https://www.site24x7.com/help/apm/ruby-agent.html"
17
+ gem.name = "apminsight"
18
+ gem.homepage = "http://www.manageengine.com/products/applications_manager/ruby-webtransaction-monitoring.html"
19
19
  gem.license = "MIT"
20
20
  gem.summary = %Q{Application Performace Monitor}
21
21
  gem.description = %Q{Application Performace Monitor : Monitor the web tranasactions}
22
22
  gem.email = "apm-insight@zohocorp.com"
23
- gem.authors = ["Rajalakshmi Ezhilan"]
23
+ gem.authors = ["Sabarinathan P"]
24
24
  gem.files=Dir.glob('lib/**/*.*')
25
25
  # dependencies defined in Gemfile
26
26
  end
@@ -48,7 +48,7 @@ Rake::RDocTask.new do |rdoc|
48
48
  version = File.exist?('VERSION') ? File.read('VERSION') : ""
49
49
 
50
50
  rdoc.rdoc_dir = 'rdoc'
51
- rdoc.title = "site24x7_apminsight #{version}"
51
+ rdoc.title = "apminsight #{version}"
52
52
  rdoc.rdoc_files.include('README*')
53
53
  rdoc.rdoc_files.include('lib/**/*.*')
54
54
  rdoc.rdoc_files.include('lib/agent/**/*.*')
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.8.2
1
+ 1.8.2
@@ -180,7 +180,7 @@ module ManageEngine
180
180
  @metric_overflow_t=250
181
181
  @dbmetric_overflow_t=500
182
182
  @trace_overflow_t=30
183
- @site24x7url = @obj.constants.site24x7USurl #default agent communication URL
183
+ #@site24x7url = @obj.constants.site24x7USurl #default agent communication URL
184
184
  @delayedStart = false
185
185
  end
186
186
 
@@ -385,6 +385,9 @@ module ManageEngine
385
385
  if defined?(Rainbows) then
386
386
  dispatcher = "rainbows"
387
387
  end
388
+ if defined?(Puma) then
389
+ dispatcher = "puma"
390
+ end
388
391
  dispatcher
389
392
  end
390
393
 
@@ -3,6 +3,7 @@ require 'agent/server/instrument/sinatra'
3
3
  require 'agent/server/instrument/active_record'
4
4
  require 'agent/server/instrument/action_view'
5
5
  require 'agent/server/instrument/sidekiq_server'
6
+ require 'agent/server/instrument/puma'
6
7
 
7
8
  module ManageEngine
8
9
  class Environment
@@ -18,7 +19,8 @@ module ManageEngine
18
19
 
19
20
  OTHER_INTERCEPTORS = [
20
21
  ManageEngine::Instrumentation::ActionView.new,
21
- ManageEngine::Instrumentation::SidekiqServer.new
22
+ ManageEngine::Instrumentation::SidekiqServer.new,
23
+ ManageEngine::Instrumentation::PumaWorker.new
22
24
  ]
23
25
 
24
26
  def detect_and_instrument
@@ -0,0 +1,39 @@
1
+ module ManageEngine
2
+ module Instrumentation
3
+ class PumaWorker
4
+
5
+ def present?
6
+ defined?(Puma::Server)
7
+ end
8
+
9
+ def version
10
+ Puma::Const::PUMA_VERSION
11
+ end
12
+
13
+ def env
14
+ ENV['RACK_ENV'] || ENV['RAILS_ENV'] || 'development'
15
+ end
16
+
17
+ def name
18
+ 'Puma Worker'
19
+ end
20
+
21
+ def instrument
22
+ ManageEngine::APMObjectHolder.instance.log.info "Instrumenting Puma server workers. Version: #{version}"
23
+ Puma::Server.class_eval do
24
+ include ManageEngine::Instrumentation::PumaRun
25
+ alias original_run run
26
+ alias run agent_run
27
+ end
28
+ end
29
+ end
30
+
31
+ module PumaRun
32
+ def agent_run(*args, &block)
33
+ ::ManageEngine::APMObjectHolder.instance.agent.doCollect
34
+ original_run(*args, &block)
35
+ end
36
+ end
37
+
38
+ end
39
+ end
@@ -24,6 +24,8 @@ module ManageEngine
24
24
  'Rails'
25
25
  end
26
26
 
27
+ # https://edgeguides.rubyonrails.org/active_support_instrumentation.html#rails-framework-hooks
28
+
27
29
  def instrument
28
30
  @obj = ManageEngine::APMObjectHolder.instance
29
31
  @obj.log.info "Instrumenting ActionController.. Rails Version: #{version}"
@@ -31,6 +33,9 @@ module ManageEngine
31
33
 
32
34
  ActiveSupport::Notifications.subscribe('start_processing.action_controller') do |name, start, finish, id, payload|
33
35
  path = payload[:path].partition("?")[0]
36
+ # request = payload[:request]
37
+ # request.original_url => returns http://www.example.com/articles?page=2
38
+ # request.request_method
34
39
  @railsTracker = ManageEngine::Tracker::RootTracker.new("#{payload[:controller]}.#{payload[:action]}", start.to_f * 1000)
35
40
  @railsTracker.url=(path)
36
41
  @railsTracker = ManageEngine::Agent::TrackerHandler.invokeTracker(@railsTracker)
@@ -43,6 +48,7 @@ module ManageEngine
43
48
  exception = payload[:exception_object]
44
49
  if exception != nil
45
50
  @railsTracker.setError(exception)
51
+ # TODO: payload[:status]
46
52
  @railsTracker.setStatus(500) # By default, set 500 as status for error txns
47
53
  end
48
54
  ManageEngine::Agent::TrackerHandler.exitTracker(@railsTracker)
data/lib/agent/version.rb CHANGED
@@ -6,8 +6,8 @@
6
6
 
7
7
  module ManageEngine
8
8
  class APMInsight
9
- VERSION = '1.9.0'
9
+ VERSION = '1.9.1'
10
10
  MAJOR_VERSION = '1.9'
11
- MINOR_VERSION = '0'
11
+ MINOR_VERSION = '1'
12
12
  end
13
13
  end
metadata CHANGED
@@ -1,110 +1,103 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: site24x7_apminsight
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 1
7
- - 9
8
- - 0
9
- version: 1.9.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.9.1
10
5
  platform: ruby
11
- authors:
6
+ authors:
12
7
  - Adithyan P
13
8
  autorequire:
14
9
  bindir: bin
15
10
  cert_chain: []
16
-
17
- date: 2024-03-22 00:00:00 +05:30
18
- default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
11
+ date: 2024-06-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
21
14
  name: shoulda
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- none: false
25
- requirements:
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
26
17
  - - ">="
27
- - !ruby/object:Gem::Version
28
- segments:
29
- - 0
30
- version: "0"
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
31
20
  type: :development
32
- version_requirements: *id001
33
- - !ruby/object:Gem::Dependency
34
- name: bundler
35
21
  prerelease: false
36
- requirement: &id002 !ruby/object:Gem::Requirement
37
- none: false
38
- requirements:
39
- - - ~>
40
- - !ruby/object:Gem::Version
41
- segments:
42
- - 1
43
- - 0
44
- - 0
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
45
33
  version: 1.0.0
46
34
  type: :development
47
- version_requirements: *id002
48
- - !ruby/object:Gem::Dependency
49
- name: jeweler
50
35
  prerelease: false
51
- requirement: &id003 !ruby/object:Gem::Requirement
52
- none: false
53
- requirements:
54
- - - ~>
55
- - !ruby/object:Gem::Version
56
- segments:
57
- - 1
58
- - 6
59
- - 4
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 1.0.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: jeweler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
60
47
  version: 1.6.4
61
48
  type: :development
62
- version_requirements: *id003
63
- - !ruby/object:Gem::Dependency
64
- name: rcov
65
49
  prerelease: false
66
- requirement: &id004 !ruby/object:Gem::Requirement
67
- none: false
68
- requirements:
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 1.6.4
55
+ - !ruby/object:Gem::Dependency
56
+ name: rcov
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
69
59
  - - ">="
70
- - !ruby/object:Gem::Version
71
- segments:
72
- - 0
73
- version: "0"
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
74
62
  type: :development
75
- version_requirements: *id004
76
- - !ruby/object:Gem::Dependency
77
- name: rails
78
63
  prerelease: false
79
- requirement: &id005 !ruby/object:Gem::Requirement
80
- none: false
81
- requirements:
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rails
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
82
73
  - - ">="
83
- - !ruby/object:Gem::Version
84
- segments:
85
- - 3
86
- - 0
87
- - 0
74
+ - !ruby/object:Gem::Version
88
75
  version: 3.0.0
89
76
  type: :development
90
- version_requirements: *id005
91
- description: Site24x7 APMInsight gives you end-to-end web-transaction awareness of Rails applications enabling you to isolate performance issues and resolve them quickly. To monitor Rails application performance, download and deploy Ruby agent(site24x7_apminsight) in your Application Server. This agent allows you to send information about Ruby applications. You can install APM Insight Agent via Rubygems or download it from your user account in Site24x7
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: 3.0.0
83
+ description: Site24x7 APMInsight gives you end-to-end web-transaction awareness of
84
+ Rails applications enabling you to isolate performance issues and resolve them quickly.
85
+ To monitor Rails application performance, download and deploy Ruby agent(site24x7_apminsight)
86
+ in your Application Server. This agent allows you to send information about Ruby
87
+ applications. You can install APM Insight Agent via Rubygems or download it from
88
+ your user account in Site24x7
92
89
  email: apm-insight@zohocorp.com
93
90
  executables: []
94
-
95
91
  extensions: []
96
-
97
- extra_rdoc_files:
92
+ extra_rdoc_files:
98
93
  - LICENSE.txt
99
94
  - README.rdoc
100
- files:
95
+ files:
101
96
  - LICENSE.txt
102
97
  - README.rdoc
103
98
  - Rakefile
104
99
  - VERSION
105
- - site24x7-agent.gemspec
106
100
  - conf/apminsight.conf
107
- - lib/site24x7_apminsight.rb
108
101
  - lib/agent/am_objectholder.rb
109
102
  - lib/agent/api/custom_tracker.rb
110
103
  - lib/agent/configuration/am_configuration.rb
@@ -124,6 +117,7 @@ files:
124
117
  - lib/agent/server/instrument/am_apm.rb
125
118
  - lib/agent/server/instrument/am_instrumenter.rb
126
119
  - lib/agent/server/instrument/environment.rb
120
+ - lib/agent/server/instrument/puma.rb
127
121
  - lib/agent/server/instrument/rails.rb
128
122
  - lib/agent/server/instrument/sidekiq_client.rb
129
123
  - lib/agent/server/instrument/sidekiq_server.rb
@@ -136,37 +130,33 @@ files:
136
130
  - lib/agent/util/am_util.rb
137
131
  - lib/agent/util/transaction_util.rb
138
132
  - lib/agent/version.rb
139
- has_rdoc: true
133
+ - lib/site24x7_apminsight.rb
134
+ - site24x7-agent.gemspec
140
135
  homepage: https://www.site24x7.com/help/apm/ruby-agent.html
141
136
  licenses: []
142
-
137
+ metadata: {}
143
138
  post_install_message:
144
139
  rdoc_options: []
145
-
146
- require_paths:
140
+ require_paths:
147
141
  - lib
148
- required_ruby_version: !ruby/object:Gem::Requirement
149
- none: false
150
- requirements:
142
+ required_ruby_version: !ruby/object:Gem::Requirement
143
+ requirements:
151
144
  - - ">="
152
- - !ruby/object:Gem::Version
153
- segments:
154
- - 0
155
- version: "0"
156
- required_rubygems_version: !ruby/object:Gem::Requirement
157
- none: false
158
- requirements:
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ required_rubygems_version: !ruby/object:Gem::Requirement
148
+ requirements:
159
149
  - - ">="
160
- - !ruby/object:Gem::Version
161
- segments:
162
- - 0
163
- version: "0"
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
164
152
  requirements: []
165
-
166
- rubyforge_project:
167
- rubygems_version: 1.3.7
153
+ rubygems_version: 3.0.0
168
154
  signing_key:
169
155
  specification_version: 3
170
- summary: Site24x7 APMInsight gives you end-to-end web-transaction awareness of Rails applications enabling you to isolate performance issues and resolve them quickly. To monitor Rails application performance, download and deploy Ruby agent(site24x7_apminsight.gem) in your Application Server. This agent allows you to send information about Ruby applications. You can install APM Insight Agent via Rubygems or download it from your user account in Site24x7
156
+ summary: Site24x7 APMInsight gives you end-to-end web-transaction awareness of Rails
157
+ applications enabling you to isolate performance issues and resolve them quickly.
158
+ To monitor Rails application performance, download and deploy Ruby agent(site24x7_apminsight.gem)
159
+ in your Application Server. This agent allows you to send information about Ruby
160
+ applications. You can install APM Insight Agent via Rubygems or download it from
161
+ your user account in Site24x7
171
162
  test_files: []
172
-