appsignal 3.0.13-java → 3.0.14-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -0
- data/ext/agent.yml +29 -25
- data/lib/appsignal/config.rb +4 -1
- data/lib/appsignal/hooks/mri.rb +16 -0
- data/lib/appsignal/hooks.rb +1 -0
- data/lib/appsignal/probes/mri.rb +26 -0
- data/lib/appsignal/probes.rb +1 -0
- data/lib/appsignal/version.rb +1 -1
- data/spec/lib/appsignal/config_spec.rb +1 -0
- data/spec/lib/appsignal/hooks/mri_spec.rb +23 -0
- data/spec/lib/appsignal/probes/mri_spec.rb +33 -0
- data/spec/support/helpers/dependency_helper.rb +4 -0
- metadata +8 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b0dc227eb529286bf96b7a3579a652e741b4ad2086ccd46468c1497e8b991c9
|
4
|
+
data.tar.gz: 0e2096d74a920968fd45c16d1081b613645603829f4d79dd562a0bdad0d1773b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7cfaa512933b3cfd620df6cadc711920ca5322ffab30ff090de70a0a3556adfd51d0bf510dacfcaceea8f31bae7457a41a6053d30b80bd6c8ff446d91e0ef2cb
|
7
|
+
data.tar.gz: 214179b9bcfee72780f695abc90548ba0d978a4dd25e1d2f57bb66b2be50d9e9c6b198eaa3e2354c4a8f3b41ab7bb1f907526e7d8d30dab45e38e7bcf926e46c
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,14 @@
|
|
1
1
|
# AppSignal for Ruby gem Changelog
|
2
2
|
|
3
|
+
## 3.0.14
|
4
|
+
|
5
|
+
- [c40f6d75](https://github.com/appsignal/appsignal-ruby/commit/c40f6d759e8d516cc47bd55cc83bfcb680fbd1ea) patch - Add minutely probe that collects metrics for :class_serial and :global_constant_state from RubyVM.
|
6
|
+
- [7c18fb6d](https://github.com/appsignal/appsignal-ruby/commit/7c18fb6db0c72f32adb6803ccde957963977008a) patch - Bump agent to 7376537
|
7
|
+
|
8
|
+
- Support JSON PostgreSQL operator in sql_lexer.
|
9
|
+
- Do not strip comments from SQL queries.
|
10
|
+
- [8d7b80ea](https://github.com/appsignal/appsignal-ruby/commit/8d7b80eafc203c295db037f2547f74a2f217f93f) patch - Add configuration option for the AppSignal agent StatsD server. This is on by default, but you can disable it with `enable_statsd: false`.
|
11
|
+
|
3
12
|
## 3.0.13
|
4
13
|
|
5
14
|
- [5c202185](https://github.com/appsignal/appsignal-ruby/commit/5c20218526e026ab436854508ccfe26ca55e8f15) patch - Bump agent to v-0318770.
|
data/ext/agent.yml
CHANGED
@@ -1,90 +1,94 @@
|
|
1
|
+
# DO NOT EDIT
|
2
|
+
# This is a generated file by the `rake ship` family of tasks in the
|
3
|
+
# appsignal-agent repository.
|
4
|
+
# Modifications to this file will be overwritten with the next agent release.
|
1
5
|
---
|
2
|
-
version: '
|
6
|
+
version: '7376537'
|
3
7
|
mirrors:
|
4
8
|
- https://appsignal-agent-releases.global.ssl.fastly.net
|
5
9
|
- https://d135dj0rjqvssy.cloudfront.net
|
6
10
|
triples:
|
7
11
|
x86_64-darwin:
|
8
12
|
static:
|
9
|
-
checksum:
|
13
|
+
checksum: 108f022d9def20cea03aae52f9c07e8f35ef64a2c046edaad01a38966e1e45a7
|
10
14
|
filename: appsignal-x86_64-darwin-all-static.tar.gz
|
11
15
|
dynamic:
|
12
|
-
checksum:
|
16
|
+
checksum: da1ed61e3a2b3b0aac3557dfa1d394d3cfaa06dd1c523800b3aa4036f603d6dd
|
13
17
|
filename: appsignal-x86_64-darwin-all-dynamic.tar.gz
|
14
18
|
universal-darwin:
|
15
19
|
static:
|
16
|
-
checksum:
|
20
|
+
checksum: 108f022d9def20cea03aae52f9c07e8f35ef64a2c046edaad01a38966e1e45a7
|
17
21
|
filename: appsignal-x86_64-darwin-all-static.tar.gz
|
18
22
|
dynamic:
|
19
|
-
checksum:
|
23
|
+
checksum: da1ed61e3a2b3b0aac3557dfa1d394d3cfaa06dd1c523800b3aa4036f603d6dd
|
20
24
|
filename: appsignal-x86_64-darwin-all-dynamic.tar.gz
|
21
25
|
aarch64-darwin:
|
22
26
|
static:
|
23
|
-
checksum:
|
27
|
+
checksum: 0eacd24a3a053f2f80c8c7aeb7fafa9e851588ddbe798de8f40277b77e2819d5
|
24
28
|
filename: appsignal-aarch64-darwin-all-static.tar.gz
|
25
29
|
dynamic:
|
26
|
-
checksum:
|
30
|
+
checksum: ef50dbb8f69ce25bc9d6145df2df71e105c7c48a66b42005f5529d5671b9618e
|
27
31
|
filename: appsignal-aarch64-darwin-all-dynamic.tar.gz
|
28
32
|
arm64-darwin:
|
29
33
|
static:
|
30
|
-
checksum:
|
34
|
+
checksum: 0eacd24a3a053f2f80c8c7aeb7fafa9e851588ddbe798de8f40277b77e2819d5
|
31
35
|
filename: appsignal-aarch64-darwin-all-static.tar.gz
|
32
36
|
dynamic:
|
33
|
-
checksum:
|
37
|
+
checksum: ef50dbb8f69ce25bc9d6145df2df71e105c7c48a66b42005f5529d5671b9618e
|
34
38
|
filename: appsignal-aarch64-darwin-all-dynamic.tar.gz
|
35
39
|
arm-darwin:
|
36
40
|
static:
|
37
|
-
checksum:
|
41
|
+
checksum: 0eacd24a3a053f2f80c8c7aeb7fafa9e851588ddbe798de8f40277b77e2819d5
|
38
42
|
filename: appsignal-aarch64-darwin-all-static.tar.gz
|
39
43
|
dynamic:
|
40
|
-
checksum:
|
44
|
+
checksum: ef50dbb8f69ce25bc9d6145df2df71e105c7c48a66b42005f5529d5671b9618e
|
41
45
|
filename: appsignal-aarch64-darwin-all-dynamic.tar.gz
|
42
46
|
aarch64-linux:
|
43
47
|
static:
|
44
|
-
checksum:
|
48
|
+
checksum: e45c227bf87d855e0a94d3fcb42a96a4140458f796c67865c650ef3ff1275c57
|
45
49
|
filename: appsignal-aarch64-linux-all-static.tar.gz
|
46
50
|
dynamic:
|
47
|
-
checksum:
|
51
|
+
checksum: 36468b88d52d5a9bf139bf6bc58ecf1726691b3e5897d531f3ed444a839366e0
|
48
52
|
filename: appsignal-aarch64-linux-all-dynamic.tar.gz
|
49
53
|
i686-linux:
|
50
54
|
static:
|
51
|
-
checksum:
|
55
|
+
checksum: 52a6e693650710f1a8b2b389d4a3dc7194069a4eb507b02b068e05f60b92e790
|
52
56
|
filename: appsignal-i686-linux-all-static.tar.gz
|
53
57
|
dynamic:
|
54
|
-
checksum:
|
58
|
+
checksum: 5365cff91857b87522a524a8e7ba3c19ea2306d4b0b5ea994afd18bdece4e414
|
55
59
|
filename: appsignal-i686-linux-all-dynamic.tar.gz
|
56
60
|
x86-linux:
|
57
61
|
static:
|
58
|
-
checksum:
|
62
|
+
checksum: 52a6e693650710f1a8b2b389d4a3dc7194069a4eb507b02b068e05f60b92e790
|
59
63
|
filename: appsignal-i686-linux-all-static.tar.gz
|
60
64
|
dynamic:
|
61
|
-
checksum:
|
65
|
+
checksum: 5365cff91857b87522a524a8e7ba3c19ea2306d4b0b5ea994afd18bdece4e414
|
62
66
|
filename: appsignal-i686-linux-all-dynamic.tar.gz
|
63
67
|
x86_64-linux:
|
64
68
|
static:
|
65
|
-
checksum:
|
69
|
+
checksum: 8ee5443ca68a3cbac7b63a079bfd734fffd84dbdeab1b9fae7379d7da544d096
|
66
70
|
filename: appsignal-x86_64-linux-all-static.tar.gz
|
67
71
|
dynamic:
|
68
|
-
checksum:
|
72
|
+
checksum: 46c4597cc9cefea80e0a8105998125308dbdfba52939c5bdd8685cbe7493df99
|
69
73
|
filename: appsignal-x86_64-linux-all-dynamic.tar.gz
|
70
74
|
x86_64-linux-musl:
|
71
75
|
static:
|
72
|
-
checksum:
|
76
|
+
checksum: 4e01355da3a638bf1fefda47786323eb76345a49e77afab42d79df8510f52e07
|
73
77
|
filename: appsignal-x86_64-linux-musl-all-static.tar.gz
|
74
78
|
dynamic:
|
75
|
-
checksum:
|
79
|
+
checksum: 33d98d3c11670d92ed51df76f30c6024204a2d8d258df5745b50b6319751b377
|
76
80
|
filename: appsignal-x86_64-linux-musl-all-dynamic.tar.gz
|
77
81
|
x86_64-freebsd:
|
78
82
|
static:
|
79
|
-
checksum:
|
83
|
+
checksum: 6ba022dc3c66b3ff53316ef55b4841e329dc84c0c585dcd87314bcd9ffae9aab
|
80
84
|
filename: appsignal-x86_64-freebsd-all-static.tar.gz
|
81
85
|
dynamic:
|
82
|
-
checksum:
|
86
|
+
checksum: cdce0bf8a9eb0b8496904594a282c58f6c295b1e7c521ed3e4146ea73fb09b0d
|
83
87
|
filename: appsignal-x86_64-freebsd-all-dynamic.tar.gz
|
84
88
|
amd64-freebsd:
|
85
89
|
static:
|
86
|
-
checksum:
|
90
|
+
checksum: 6ba022dc3c66b3ff53316ef55b4841e329dc84c0c585dcd87314bcd9ffae9aab
|
87
91
|
filename: appsignal-x86_64-freebsd-all-static.tar.gz
|
88
92
|
dynamic:
|
89
|
-
checksum:
|
93
|
+
checksum: cdce0bf8a9eb0b8496904594a282c58f6c295b1e7c521ed3e4146ea73fb09b0d
|
90
94
|
filename: appsignal-x86_64-freebsd-all-dynamic.tar.gz
|
data/lib/appsignal/config.rb
CHANGED
@@ -36,6 +36,7 @@ module Appsignal
|
|
36
36
|
:enable_gc_instrumentation => false,
|
37
37
|
:enable_host_metrics => true,
|
38
38
|
:enable_minutely_probes => true,
|
39
|
+
:enable_statsd => true,
|
39
40
|
:ca_file_path => File.expand_path(File.join("../../../resources/cacert.pem"), __FILE__),
|
40
41
|
:dns_servers => [],
|
41
42
|
:files_world_accessible => true,
|
@@ -69,6 +70,7 @@ module Appsignal
|
|
69
70
|
"APPSIGNAL_WORKING_DIRECTORY_PATH" => :working_directory_path,
|
70
71
|
"APPSIGNAL_ENABLE_HOST_METRICS" => :enable_host_metrics,
|
71
72
|
"APPSIGNAL_ENABLE_MINUTELY_PROBES" => :enable_minutely_probes,
|
73
|
+
"APPSIGNAL_ENABLE_STATSD" => :enable_statsd,
|
72
74
|
"APPSIGNAL_HOSTNAME" => :hostname,
|
73
75
|
"APPSIGNAL_CA_FILE_PATH" => :ca_file_path,
|
74
76
|
"APPSIGNAL_DNS_SERVERS" => :dns_servers,
|
@@ -99,6 +101,7 @@ module Appsignal
|
|
99
101
|
APPSIGNAL_ENABLE_GC_INSTRUMENTATION
|
100
102
|
APPSIGNAL_ENABLE_HOST_METRICS
|
101
103
|
APPSIGNAL_ENABLE_MINUTELY_PROBES
|
104
|
+
APPSIGNAL_ENABLE_STATSD
|
102
105
|
APPSIGNAL_FILES_WORLD_ACCESSIBLE
|
103
106
|
APPSIGNAL_INSTRUMENT_NET_HTTP
|
104
107
|
APPSIGNAL_INSTRUMENT_REDIS
|
@@ -290,7 +293,7 @@ module Appsignal
|
|
290
293
|
ENV["_APPSIGNAL_FILES_WORLD_ACCESSIBLE"] = config_hash[:files_world_accessible].to_s
|
291
294
|
ENV["_APPSIGNAL_TRANSACTION_DEBUG_MODE"] = config_hash[:transaction_debug_mode].to_s
|
292
295
|
ENV["_APPSIGNAL_SEND_ENVIRONMENT_METADATA"] = config_hash[:send_environment_metadata].to_s
|
293
|
-
ENV["_APPSIGNAL_ENABLE_STATSD"] =
|
296
|
+
ENV["_APPSIGNAL_ENABLE_STATSD"] = config_hash[:enable_statsd].to_s
|
294
297
|
ENV["_APP_REVISION"] = config_hash[:revision].to_s
|
295
298
|
end
|
296
299
|
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module Appsignal
|
2
|
+
class Hooks
|
3
|
+
# @api private
|
4
|
+
class MriHook < Appsignal::Hooks::Hook
|
5
|
+
register :mri
|
6
|
+
|
7
|
+
def dependencies_present?
|
8
|
+
defined?(::RubyVM)
|
9
|
+
end
|
10
|
+
|
11
|
+
def install
|
12
|
+
Appsignal::Minutely.probes.register :mri, Appsignal::Probes::MriProbe
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/lib/appsignal/hooks.rb
CHANGED
@@ -94,6 +94,7 @@ require "appsignal/hooks/active_job"
|
|
94
94
|
require "appsignal/hooks/active_support_notifications"
|
95
95
|
require "appsignal/hooks/celluloid"
|
96
96
|
require "appsignal/hooks/delayed_job"
|
97
|
+
require "appsignal/hooks/mri"
|
97
98
|
require "appsignal/hooks/net_http"
|
98
99
|
require "appsignal/hooks/passenger"
|
99
100
|
require "appsignal/hooks/puma"
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module Appsignal
|
2
|
+
module Probes
|
3
|
+
class MriProbe
|
4
|
+
# @api private
|
5
|
+
def self.dependencies_present?
|
6
|
+
defined?(::RubyVM) && ::RubyVM.respond_to?(:stat)
|
7
|
+
end
|
8
|
+
|
9
|
+
def initialize
|
10
|
+
Appsignal.logger.debug("Initializing VM probe")
|
11
|
+
end
|
12
|
+
|
13
|
+
# @api private
|
14
|
+
def call
|
15
|
+
stat = RubyVM.stat
|
16
|
+
[:class_serial, :global_constant_state].each do |metric|
|
17
|
+
Appsignal.add_distribution_value(
|
18
|
+
"ruby_vm",
|
19
|
+
stat[metric],
|
20
|
+
:metric => metric
|
21
|
+
)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
data/lib/appsignal/probes.rb
CHANGED
data/lib/appsignal/version.rb
CHANGED
@@ -172,6 +172,7 @@ describe Appsignal::Config do
|
|
172
172
|
:enable_gc_instrumentation => false,
|
173
173
|
:enable_host_metrics => true,
|
174
174
|
:enable_minutely_probes => true,
|
175
|
+
:enable_statsd => true,
|
175
176
|
:ca_file_path => File.join(resources_dir, "cacert.pem"),
|
176
177
|
:dns_servers => [],
|
177
178
|
:files_world_accessible => true,
|
@@ -0,0 +1,23 @@
|
|
1
|
+
describe Appsignal::Hooks::MriHook do
|
2
|
+
describe "#dependencies_present?" do
|
3
|
+
subject { described_class.new.dependencies_present? }
|
4
|
+
|
5
|
+
if DependencyHelper.running_jruby?
|
6
|
+
it { is_expected.to be_falsy }
|
7
|
+
else
|
8
|
+
it { is_expected.to be_truthy }
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
unless DependencyHelper.running_jruby?
|
13
|
+
context "install" do
|
14
|
+
before do
|
15
|
+
Appsignal::Hooks.load_hooks
|
16
|
+
end
|
17
|
+
|
18
|
+
it "should be added to minutely probes" do
|
19
|
+
expect(Appsignal::Minutely.probes[:mri]).to be Appsignal::Probes::MriProbe
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
describe Appsignal::Probes::MriProbe do
|
2
|
+
let(:probe) { described_class.new }
|
3
|
+
|
4
|
+
describe ".dependencies_present?" do
|
5
|
+
if DependencyHelper.running_jruby? || DependencyHelper.running_ruby_2_0?
|
6
|
+
it "should not be present" do
|
7
|
+
expect(described_class.dependencies_present?).to be_falsy
|
8
|
+
end
|
9
|
+
else
|
10
|
+
it "should be present" do
|
11
|
+
expect(described_class.dependencies_present?).to be_truthy
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
unless DependencyHelper.running_jruby? || DependencyHelper.running_ruby_2_0?
|
17
|
+
describe "#call" do
|
18
|
+
it "should track vm metrics" do
|
19
|
+
expect_distribution_value(:class_serial)
|
20
|
+
expect_distribution_value(:global_constant_state)
|
21
|
+
|
22
|
+
probe.call
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
def expect_distribution_value(metric)
|
27
|
+
expect(Appsignal).to receive(:add_distribution_value)
|
28
|
+
.with("ruby_vm", kind_of(Numeric), :metric => metric)
|
29
|
+
.and_call_original
|
30
|
+
.once
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: appsignal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.14
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Robert Beekman
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2021-
|
13
|
+
date: 2021-09-30 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rack
|
@@ -227,6 +227,7 @@ files:
|
|
227
227
|
- lib/appsignal/hooks/delayed_job.rb
|
228
228
|
- lib/appsignal/hooks/excon.rb
|
229
229
|
- lib/appsignal/hooks/mongo_ruby_driver.rb
|
230
|
+
- lib/appsignal/hooks/mri.rb
|
230
231
|
- lib/appsignal/hooks/net_http.rb
|
231
232
|
- lib/appsignal/hooks/passenger.rb
|
232
233
|
- lib/appsignal/hooks/puma.rb
|
@@ -264,6 +265,7 @@ files:
|
|
264
265
|
- lib/appsignal/marker.rb
|
265
266
|
- lib/appsignal/minutely.rb
|
266
267
|
- lib/appsignal/probes.rb
|
268
|
+
- lib/appsignal/probes/mri.rb
|
267
269
|
- lib/appsignal/probes/sidekiq.rb
|
268
270
|
- lib/appsignal/rack/generic_instrumentation.rb
|
269
271
|
- lib/appsignal/rack/rails_instrumentation.rb
|
@@ -324,6 +326,7 @@ files:
|
|
324
326
|
- spec/lib/appsignal/hooks/delayed_job_spec.rb
|
325
327
|
- spec/lib/appsignal/hooks/excon_spec.rb
|
326
328
|
- spec/lib/appsignal/hooks/mongo_ruby_driver_spec.rb
|
329
|
+
- spec/lib/appsignal/hooks/mri_spec.rb
|
327
330
|
- spec/lib/appsignal/hooks/net_http_spec.rb
|
328
331
|
- spec/lib/appsignal/hooks/passenger_spec.rb
|
329
332
|
- spec/lib/appsignal/hooks/puma_spec.rb
|
@@ -350,6 +353,7 @@ files:
|
|
350
353
|
- spec/lib/appsignal/logger_spec.rb
|
351
354
|
- spec/lib/appsignal/marker_spec.rb
|
352
355
|
- spec/lib/appsignal/minutely_spec.rb
|
356
|
+
- spec/lib/appsignal/probes/mri_spec.rb
|
353
357
|
- spec/lib/appsignal/probes/sidekiq_spec.rb
|
354
358
|
- spec/lib/appsignal/rack/generic_instrumentation_spec.rb
|
355
359
|
- spec/lib/appsignal/rack/rails_instrumentation_spec.rb
|
@@ -472,6 +476,7 @@ test_files:
|
|
472
476
|
- spec/lib/appsignal/hooks/delayed_job_spec.rb
|
473
477
|
- spec/lib/appsignal/hooks/excon_spec.rb
|
474
478
|
- spec/lib/appsignal/hooks/mongo_ruby_driver_spec.rb
|
479
|
+
- spec/lib/appsignal/hooks/mri_spec.rb
|
475
480
|
- spec/lib/appsignal/hooks/net_http_spec.rb
|
476
481
|
- spec/lib/appsignal/hooks/passenger_spec.rb
|
477
482
|
- spec/lib/appsignal/hooks/puma_spec.rb
|
@@ -498,6 +503,7 @@ test_files:
|
|
498
503
|
- spec/lib/appsignal/logger_spec.rb
|
499
504
|
- spec/lib/appsignal/marker_spec.rb
|
500
505
|
- spec/lib/appsignal/minutely_spec.rb
|
506
|
+
- spec/lib/appsignal/probes/mri_spec.rb
|
501
507
|
- spec/lib/appsignal/probes/sidekiq_spec.rb
|
502
508
|
- spec/lib/appsignal/rack/generic_instrumentation_spec.rb
|
503
509
|
- spec/lib/appsignal/rack/rails_instrumentation_spec.rb
|