instana 1.10.0 → 1.10.1
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.
- checksums.yaml +4 -4
- data/Gemfile +4 -4
- data/benchmarks/Gemfile +0 -4
- data/instana.gemspec +7 -5
- data/lib/instana/agent.rb +2 -3
- data/lib/instana/frameworks/instrumentation/abstract_mysql_adapter.rb +4 -1
- data/lib/instana/frameworks/instrumentation/active_record.rb +4 -5
- data/lib/instana/setup.rb +6 -1
- data/lib/instana/version.rb +1 -1
- data/lib/oj_check.rb +16 -0
- data/test/agent/agent_test.rb +4 -1
- data/test/benchmarks/bench_id_generation.rb +1 -0
- metadata +11 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c4db47f5122c6e0eaf7bad00a6d957c61d24b02388f6825bbca0a12ebd7f66f2
|
4
|
+
data.tar.gz: 27789ad51f9da00b7e36e9133aca998cf3afd2e8558906042f0fe6c315c5eaaa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 909a3eddcc3c749c7e307fb6ec6c8e6a1b8bc5f0005d3c97cbe5e61958e05de6a69103581709503587ab5482069c24400ab1ac90ea246ac4f6aa2946b6967513
|
7
|
+
data.tar.gz: 2452014812a75f56ad53921db3d0c4c55b8a6f22f4bb063d79b77bb56b975411d671db4378e693fbd1e69f664b8ffb7f44cc6a8a109af0c1aa9659af6b084929
|
data/Gemfile
CHANGED
@@ -21,16 +21,16 @@ end
|
|
21
21
|
group :development do
|
22
22
|
gem 'ruby-debug', :platforms => [:mri_18, :jruby]
|
23
23
|
gem 'debugger', :platform => :mri_19
|
24
|
-
gem 'stackprof'
|
24
|
+
gem 'stackprof', :platform => [:mri_19, :mri_20]
|
25
25
|
|
26
26
|
if RUBY_VERSION > '1.8.7'
|
27
27
|
gem 'pry'
|
28
28
|
|
29
29
|
if RUBY_VERSION < '2.2'
|
30
|
-
gem 'byebug', '< 9.1.0'
|
31
|
-
gem 'pry-byebug'
|
30
|
+
gem 'byebug', '< 9.1.0', :platform => [:mri_19, :mri_20]
|
31
|
+
gem 'pry-byebug', :platform => [:mri_19, :mri_20]
|
32
32
|
else
|
33
|
-
gem 'pry-byebug'
|
33
|
+
gem 'pry-byebug', :platform => [:mri_19, :mri_20]
|
34
34
|
end
|
35
35
|
else
|
36
36
|
gem 'pry', '0.9.12.4'
|
data/benchmarks/Gemfile
CHANGED
data/instana.gemspec
CHANGED
@@ -26,16 +26,18 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.add_development_dependency "bundler", "~> 2.0"
|
27
27
|
spec.add_development_dependency "rake", "~> 10.0"
|
28
28
|
spec.add_development_dependency "minitest", "~> 5.0"
|
29
|
+
spec.add_development_dependency('pry', '>= 0.10.0')
|
29
30
|
|
30
31
|
# Development debugging
|
31
|
-
|
32
|
-
|
33
|
-
|
32
|
+
unless RUBY_PLATFORM =~ /java/i
|
33
|
+
spec.add_development_dependency('byebug', '>= 8.0.0')
|
34
|
+
spec.add_development_dependency('pry-byebug', '>= 3.0.0')
|
35
|
+
end
|
34
36
|
|
35
|
-
spec.add_runtime_dependency('sys-proctable', '>=
|
37
|
+
spec.add_runtime_dependency('sys-proctable', '>= 1.2.2')
|
36
38
|
spec.add_runtime_dependency('get_process_mem', '>= 0.2.1')
|
37
39
|
spec.add_runtime_dependency('timers', '>= 4.0.0')
|
38
|
-
spec.add_runtime_dependency('oj', '>=3.0.11')
|
40
|
+
spec.add_runtime_dependency('oj', '>=3.0.11') unless RUBY_PLATFORM =~ /java/i
|
39
41
|
|
40
42
|
# Indirect dependency
|
41
43
|
# https://github.com/instana/ruby-sensor/issues/10
|
data/lib/instana/agent.rb
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
require 'oj'
|
2
1
|
require 'net/http'
|
3
2
|
require 'socket'
|
4
3
|
require 'sys/proctable'
|
@@ -50,7 +49,7 @@ module Instana
|
|
50
49
|
@thread_spawn_lock = Mutex.new
|
51
50
|
|
52
51
|
# Detect platform flags
|
53
|
-
@is_linux = (
|
52
|
+
@is_linux = (RbConfig::CONFIG['host_os'] =~ /linux/i) ? true : false
|
54
53
|
@is_osx = (RUBY_PLATFORM =~ /darwin/i) ? true : false
|
55
54
|
|
56
55
|
# In case we're running in Docker, have the default gateway available
|
@@ -232,7 +231,7 @@ module Instana
|
|
232
231
|
Instana.logger.debug { e.backtrace.join("\r\n") }
|
233
232
|
return false
|
234
233
|
ensure
|
235
|
-
socket.close if socket
|
234
|
+
socket.close if socket && !socket.closed?
|
236
235
|
end
|
237
236
|
|
238
237
|
# Method to report metrics data to the host agent.
|
@@ -41,7 +41,10 @@ module Instana
|
|
41
41
|
end
|
42
42
|
|
43
43
|
def execute_with_instana(sql, name = nil)
|
44
|
-
|
44
|
+
tracing = ::Instana.tracer.tracing?
|
45
|
+
if !tracing || ignore_payload?(name, sql)
|
46
|
+
return execute_without_instana(sql, name)
|
47
|
+
elsif ::Instana.tracer.current_span[:n] == :activerecord
|
45
48
|
return execute_without_instana(sql, name)
|
46
49
|
end
|
47
50
|
|
@@ -11,18 +11,17 @@ if defined?(::ActiveRecord) && ::Instana.config[:active_record][:enabled]
|
|
11
11
|
::Instana.logger.info "Instrumenting ActiveRecord (mysql)"
|
12
12
|
ActiveRecord::ConnectionAdapters::MysqlAdapter.send(:include, ::Instana::Instrumentation::MysqlAdapter)
|
13
13
|
ActiveRecord::ConnectionAdapters::AbstractMysqlAdapter.send(:include, ::Instana::Instrumentation::AbstractMysqlAdapter)
|
14
|
+
end
|
14
15
|
|
15
16
|
# Mysql2
|
16
|
-
|
17
|
+
if defined?(ActiveRecord::ConnectionAdapters::Mysql2Adapter)
|
17
18
|
::Instana.logger.info "Instrumenting ActiveRecord (mysql2)"
|
18
19
|
ActiveRecord::ConnectionAdapters::Mysql2Adapter.send(:include, ::Instana::Instrumentation::Mysql2Adapter)
|
20
|
+
end
|
19
21
|
|
20
22
|
# Postgres
|
21
|
-
|
23
|
+
if defined?(ActiveRecord::ConnectionAdapters::PostgreSQLAdapter)
|
22
24
|
::Instana.logger.info "Instrumenting ActiveRecord (postgresql)"
|
23
25
|
ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.send(:include, ::Instana::Instrumentation::PostgreSQLAdapter)
|
24
|
-
|
25
|
-
else
|
26
|
-
::Instana.logger.debug "Unsupported ActiveRecord adapter"
|
27
26
|
end
|
28
27
|
end
|
data/lib/instana/setup.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'oj_check'
|
2
|
+
|
1
3
|
require "instana/base"
|
2
4
|
require "instana/config"
|
3
5
|
require "instana/agent"
|
@@ -10,7 +12,10 @@ require "instana/instrumentation"
|
|
10
12
|
::Instana.agent.setup
|
11
13
|
|
12
14
|
# Register the metric collectors
|
13
|
-
|
15
|
+
unless RUBY_PLATFORM == 'java'.freeze
|
16
|
+
require 'instana/collectors/gc'
|
17
|
+
end
|
18
|
+
|
14
19
|
require 'instana/collectors/memory'
|
15
20
|
require 'instana/collectors/thread'
|
16
21
|
|
data/lib/instana/version.rb
CHANGED
data/lib/oj_check.rb
ADDED
data/test/agent/agent_test.rb
CHANGED
@@ -1,7 +1,10 @@
|
|
1
1
|
require 'test_helper'
|
2
|
-
require '
|
2
|
+
require './lib/oj_check'
|
3
3
|
|
4
4
|
class AgentTest < Minitest::Test
|
5
|
+
|
6
|
+
Oj = ::Instana::Oj unless defined?(Oj)
|
7
|
+
|
5
8
|
def test_agent_host_detection
|
6
9
|
url = "http://#{::Instana.config[:agent_host]}:#{::Instana.config[:agent_port]}/"
|
7
10
|
stub_request(:get, url)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: instana
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.10.
|
4
|
+
version: 1.10.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Giacomo Lombardo
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-08-
|
11
|
+
date: 2019-08-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -53,33 +53,33 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '5.0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: pry
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: 0.10.0
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: 0.10.0
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: byebug
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0.
|
75
|
+
version: 8.0.0
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0.
|
82
|
+
version: 8.0.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: pry-byebug
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,14 +100,14 @@ dependencies:
|
|
100
100
|
requirements:
|
101
101
|
- - ">="
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
103
|
+
version: 1.2.2
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
110
|
+
version: 1.2.2
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: get_process_mem
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -247,6 +247,7 @@ files:
|
|
247
247
|
- lib/instana/tracing/span_context.rb
|
248
248
|
- lib/instana/util.rb
|
249
249
|
- lib/instana/version.rb
|
250
|
+
- lib/oj_check.rb
|
250
251
|
- lib/opentracing.rb
|
251
252
|
- log/.keep
|
252
253
|
- test/agent/agent_test.rb
|