Skip to content

Commit

Permalink
Add SSI entry point
Browse files Browse the repository at this point in the history
  • Loading branch information
TonyCTHsu committed Sep 20, 2024
1 parent e163c21 commit 015d492
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 1 deletion.
2 changes: 1 addition & 1 deletion lib-injection/host_inject.rb
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,7 @@ def bundler_supported?

bundle_add_cmd = "bundle add #{gem} --skip-install --version #{gem_version_mapping[gem]} "
bundle_add_cmd << ' --verbose ' if ENV['DD_TRACE_DEBUG'] == 'true'
bundle_add_cmd << '--require datadog/auto_instrument' if gem == 'datadog'
bundle_add_cmd << '--require datadog/single_step_instrument' if gem == 'datadog'

utils.debug "Injection with `#{bundle_add_cmd}`"

Expand Down
12 changes: 12 additions & 0 deletions lib/datadog/single_step_instrument.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# frozen_string_literal: true

#
# Entrypoint file for single step instrumentation.
#
# This file's path is private. Do not reference this file.
#
begin
require_relative 'auto_instrument'
rescue StandardError, LoadError => e
warn "Single step instrumentation failed: #{e.class}, #{e.message}"
end
23 changes: 23 additions & 0 deletions spec/datadog/single_step_instrument_spec.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
RSpec.describe 'Single step instrument' do
it do
expect_in_fork do
expect_any_instance_of(Object)
.to receive(:require_relative).with('auto_instrument').and_raise(LoadError)

expect do
load 'datadog/single_step_instrument.rb'
end.to output(/Single step instrumentation failed/).to_stderr
end
end

it do
expect_in_fork do
expect_any_instance_of(Object)
.to receive(:require_relative).with('auto_instrument').and_raise(StandardError)

expect do
load 'datadog/single_step_instrument.rb'
end.to output(/Single step instrumentation failed/).to_stderr
end
end
end

0 comments on commit 015d492

Please sign in to comment.