appsignal 4.10.1-java → 5.0.0.rc.1-java
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/CHANGELOG.md +19 -0
- data/Rakefile +87 -0
- data/appsignal.gemspec +8 -0
- data/build_matrix.yml +14 -1
- data/ext/appsignal_extension.c +14 -0
- data/lib/appsignal/backends.rb +55 -0
- data/lib/appsignal/config.rb +140 -1
- data/lib/appsignal/demo.rb +1 -1
- data/lib/appsignal/event_formatter/action_view/render_formatter.rb +34 -22
- data/lib/appsignal/event_formatter/active_job/perform_formatter.rb +35 -0
- data/lib/appsignal/event_formatter/active_record/sql_formatter.rb +19 -0
- data/lib/appsignal/event_formatter/elastic_search/search_formatter.rb +27 -0
- data/lib/appsignal/event_formatter/recorded_elsewhere.rb +17 -0
- data/lib/appsignal/event_formatter/rom/sql_formatter.rb +24 -0
- data/lib/appsignal/event_formatter/sequel/sql_formatter.rb +5 -0
- data/lib/appsignal/event_formatter/view_component/render_formatter.rb +21 -10
- data/lib/appsignal/event_formatter.rb +78 -0
- data/lib/appsignal/extension.rb +4 -0
- data/lib/appsignal/helpers/instrumentation.rb +236 -20
- data/lib/appsignal/helpers/metrics.rb +3 -24
- data/lib/appsignal/hooks/action_cable.rb +18 -6
- data/lib/appsignal/hooks/active_job.rb +128 -39
- data/lib/appsignal/hooks/at_exit.rb +4 -1
- data/lib/appsignal/hooks/excon.rb +20 -0
- data/lib/appsignal/hooks/faraday.rb +16 -0
- data/lib/appsignal/hooks/http.rb +5 -0
- data/lib/appsignal/hooks/resque.rb +1 -1
- data/lib/appsignal/hooks/sequel.rb +32 -2
- data/lib/appsignal/hooks/shoryuken.rb +3 -3
- data/lib/appsignal/hooks/sidekiq.rb +1 -1
- data/lib/appsignal/integrations/action_cable.rb +5 -2
- data/lib/appsignal/integrations/active_support_notifications.rb +59 -14
- data/lib/appsignal/integrations/data_mapper.rb +14 -2
- data/lib/appsignal/integrations/delayed_job_plugin.rb +45 -5
- data/lib/appsignal/integrations/dry_monitor.rb +39 -15
- data/lib/appsignal/integrations/excon/appsignal_middleware.rb +21 -0
- data/lib/appsignal/integrations/excon.rb +52 -15
- data/lib/appsignal/integrations/faraday.rb +47 -12
- data/lib/appsignal/integrations/http.rb +43 -1
- data/lib/appsignal/integrations/mongo_ruby_driver.rb +73 -4
- data/lib/appsignal/integrations/net_http.rb +31 -2
- data/lib/appsignal/integrations/puma.rb +4 -1
- data/lib/appsignal/integrations/que.rb +224 -37
- data/lib/appsignal/integrations/railtie.rb +4 -1
- data/lib/appsignal/integrations/rake.rb +9 -3
- data/lib/appsignal/integrations/redis.rb +22 -1
- data/lib/appsignal/integrations/redis_client.rb +22 -1
- data/lib/appsignal/integrations/resque.rb +57 -10
- data/lib/appsignal/integrations/shoryuken.rb +140 -12
- data/lib/appsignal/integrations/sidekiq.rb +73 -16
- data/lib/appsignal/integrations/webmachine.rb +47 -4
- data/lib/appsignal/loaders/padrino.rb +2 -1
- data/lib/appsignal/logger/extension_backend.rb +24 -0
- data/lib/appsignal/logger/opentelemetry_backend.rb +66 -0
- data/lib/appsignal/logger.rb +13 -9
- data/lib/appsignal/metrics/extension_backend.rb +47 -0
- data/lib/appsignal/metrics/opentelemetry_backend.rb +89 -0
- data/lib/appsignal/opentelemetry/attributes.rb +31 -0
- data/lib/appsignal/opentelemetry/dependencies.rb +35 -0
- data/lib/appsignal/opentelemetry/error_type.rb +37 -0
- data/lib/appsignal/opentelemetry/http_client_request.rb +83 -0
- data/lib/appsignal/opentelemetry/http_method.rb +59 -0
- data/lib/appsignal/opentelemetry/http_response.rb +30 -0
- data/lib/appsignal/opentelemetry/http_server_request.rb +45 -0
- data/lib/appsignal/opentelemetry/messaging.rb +82 -0
- data/lib/appsignal/opentelemetry/rendering.rb +29 -0
- data/lib/appsignal/opentelemetry/sql_db_system.rb +89 -0
- data/lib/appsignal/opentelemetry.rb +337 -0
- data/lib/appsignal/rack/abstract_middleware.rb +63 -4
- data/lib/appsignal/rack/body_wrapper.rb +18 -5
- data/lib/appsignal/rack/event_handler.rb +36 -3
- data/lib/appsignal/rack/grape_middleware.rb +1 -0
- data/lib/appsignal/rack/hanami_middleware.rb +2 -1
- data/lib/appsignal/rack/instrumentation_middleware.rb +1 -0
- data/lib/appsignal/rack/rails_instrumentation.rb +1 -0
- data/lib/appsignal/rack/sinatra_instrumentation.rb +1 -0
- data/lib/appsignal/rack.rb +39 -11
- data/lib/appsignal/sample_data.rb +4 -0
- data/lib/appsignal/transaction/base_backend.rb +107 -0
- data/lib/appsignal/transaction/extension_backend.rb +203 -0
- data/lib/appsignal/transaction/opentelemetry_backend.rb +796 -0
- data/lib/appsignal/transaction.rb +537 -144
- data/lib/appsignal/utils/stdout_and_logger_message.rb +9 -0
- data/lib/appsignal/version.rb +1 -1
- data/lib/appsignal.rb +9 -0
- data/sig/appsignal.rbi +426 -37
- data/sig/appsignal.rbs +386 -27
- metadata +23 -1
|
@@ -8,9 +8,18 @@ module Appsignal
|
|
|
8
8
|
logger.warn message
|
|
9
9
|
end
|
|
10
10
|
|
|
11
|
+
def self.error(message, logger = Appsignal.internal_logger)
|
|
12
|
+
Kernel.warn "appsignal ERROR: #{message}"
|
|
13
|
+
logger.error message
|
|
14
|
+
end
|
|
15
|
+
|
|
11
16
|
def stdout_and_logger_warning(message, logger = Appsignal.internal_logger)
|
|
12
17
|
Appsignal::Utils::StdoutAndLoggerMessage.warning(message, logger)
|
|
13
18
|
end
|
|
19
|
+
|
|
20
|
+
def stdout_and_logger_error(message, logger = Appsignal.internal_logger)
|
|
21
|
+
Appsignal::Utils::StdoutAndLoggerMessage.error(message, logger)
|
|
22
|
+
end
|
|
14
23
|
end
|
|
15
24
|
end
|
|
16
25
|
end
|
data/lib/appsignal/version.rb
CHANGED
data/lib/appsignal.rb
CHANGED
|
@@ -8,6 +8,8 @@ require "appsignal/logger"
|
|
|
8
8
|
require "appsignal/utils/stdout_and_logger_message"
|
|
9
9
|
require "appsignal/helpers/instrumentation"
|
|
10
10
|
require "appsignal/helpers/metrics"
|
|
11
|
+
require "appsignal/backends"
|
|
12
|
+
require "appsignal/opentelemetry"
|
|
11
13
|
|
|
12
14
|
# AppSignal for Ruby gem's main module.
|
|
13
15
|
#
|
|
@@ -143,6 +145,8 @@ module Appsignal
|
|
|
143
145
|
Appsignal::Hooks.load_hooks
|
|
144
146
|
Appsignal::Loaders.start
|
|
145
147
|
|
|
148
|
+
Appsignal::OpenTelemetry.configure(config) if config.collector_mode_configured?
|
|
149
|
+
|
|
146
150
|
if config[:enable_allocation_tracking] && !Appsignal::System.jruby?
|
|
147
151
|
Appsignal::Extension.install_allocation_event_hook
|
|
148
152
|
Appsignal::Environment.report_enabled("allocation_tracking")
|
|
@@ -241,6 +245,10 @@ module Appsignal
|
|
|
241
245
|
# @return [void]
|
|
242
246
|
# @since 1.0.0
|
|
243
247
|
def stop(called_by = nil)
|
|
248
|
+
# Wrapped in `Thread.new ... .join` so this is safe to call from a
|
|
249
|
+
# `Signal.trap` block: `Mutex#synchronize` (used by
|
|
250
|
+
# `CheckIn::Scheduler`) is unsafe in trap handlers, and running on a
|
|
251
|
+
# separate thread sidesteps that restriction. See PR #1295.
|
|
244
252
|
Thread.new do
|
|
245
253
|
if called_by
|
|
246
254
|
internal_logger.info("Stopping AppSignal (#{called_by})")
|
|
@@ -250,6 +258,7 @@ module Appsignal
|
|
|
250
258
|
Appsignal::Extension.stop
|
|
251
259
|
Appsignal::Probes.stop
|
|
252
260
|
Appsignal::CheckIn.stop
|
|
261
|
+
Appsignal::OpenTelemetry.shutdown
|
|
253
262
|
end.join
|
|
254
263
|
nil
|
|
255
264
|
end
|