appsignal 1.3.1 → 1.3.2
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/.rspec +1 -1
- data/CHANGELOG.md +5 -1
- data/README.md +21 -6
- data/Rakefile +7 -3
- data/ext/extconf.rb +3 -3
- data/lib/appsignal.rb +15 -4
- data/lib/appsignal/cli.rb +2 -1
- data/lib/appsignal/cli/diagnose.rb +2 -2
- data/lib/appsignal/cli/install.rb +1 -1
- data/lib/appsignal/config.rb +1 -1
- data/lib/appsignal/hooks.rb +5 -1
- data/lib/appsignal/transaction.rb +18 -1
- data/lib/appsignal/version.rb +1 -1
- data/spec/lib/appsignal/auth_check_spec.rb +3 -6
- data/spec/lib/appsignal/cli/install_spec.rb +4 -4
- data/spec/lib/appsignal/config_spec.rb +37 -37
- data/spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb +3 -3
- data/spec/lib/appsignal/event_formatter/active_record/instantiation_formatter_spec.rb +1 -1
- data/spec/lib/appsignal/event_formatter/active_record/sql_formatter_spec.rb +1 -1
- data/spec/lib/appsignal/event_formatter/faraday/request_formatter_spec.rb +1 -1
- data/spec/lib/appsignal/event_formatter/moped/query_formatter_spec.rb +7 -7
- data/spec/lib/appsignal/event_formatter_spec.rb +4 -4
- data/spec/lib/appsignal/hooks/redis_spec.rb +1 -1
- data/spec/lib/appsignal/hooks/sidekiq_spec.rb +1 -1
- data/spec/lib/appsignal/hooks_spec.rb +13 -13
- data/spec/lib/appsignal/integrations/mongo_ruby_driver_spec.rb +1 -1
- data/spec/lib/appsignal/integrations/railtie_spec.rb +6 -6
- data/spec/lib/appsignal/integrations/webmachine_spec.rb +1 -1
- data/spec/lib/appsignal/rack/rails_instrumentation_spec.rb +2 -2
- data/spec/lib/appsignal/subscriber_spec.rb +4 -4
- data/spec/lib/appsignal/transaction_spec.rb +44 -25
- data/spec/lib/appsignal/transmitter_spec.rb +9 -9
- data/spec/lib/appsignal/utils_spec.rb +2 -2
- data/spec/lib/appsignal_spec.rb +14 -15
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ec2efb96b788112eddc36f06d1a5b08ded6102ec
|
4
|
+
data.tar.gz: 14c8aea711a79ad90ce04ffce963fe19546f2b84
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c452757e1ac4c4db326810f1b2ed014fd5d185edde76eab088bd5ca761a90b1de532fde1807cd46bb9eba7c431ea3c2f3a0201a43644b4f966d0e934971d0b05
|
7
|
+
data.tar.gz: 513c9907c8be8a26f07ef98d34f5840567e7bfdf4243f3dab6fdc88cea9e9b247ec6949459bca60cb9c6509544c95763f7347193532360f149872386f35eabd4
|
data/.rspec
CHANGED
@@ -1 +1 @@
|
|
1
|
-
--order default
|
1
|
+
--order default --warnings
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -10,26 +10,41 @@ applications and sends it to [AppSignal](https://appsignal.com)
|
|
10
10
|
|
11
11
|
## Development
|
12
12
|
|
13
|
-
|
13
|
+
Make sure you have Bundler installed and then use the Rake install task to
|
14
|
+
install all other dependencies.
|
15
|
+
|
16
|
+
```
|
17
|
+
gem install bundler
|
18
|
+
rake install
|
19
|
+
```
|
20
|
+
|
21
|
+
AppSignal runs in many different configurations. To replicate these
|
22
|
+
configurations you need to run the spec suite with a specific Gemfile.
|
14
23
|
|
15
24
|
```
|
16
25
|
BUNDLE_GEMFILE=gemfiles/capistrano2.gemfile bundle exec rspec
|
17
26
|
BUNDLE_GEMFILE=gemfiles/capistrano3.gemfile bundle exec rspec
|
27
|
+
BUNDLE_GEMFILE=gemfiles/grape.gemfile bundle exec rspec
|
18
28
|
BUNDLE_GEMFILE=gemfiles/no_dependencies.gemfile bundle exec rspec
|
19
29
|
BUNDLE_GEMFILE=gemfiles/padrino.gemfile bundle exec rspec
|
20
|
-
BUNDLE_GEMFILE=gemfiles/rails-3.0.gemfile bundle exec rspec
|
21
|
-
BUNDLE_GEMFILE=gemfiles/rails-3.1.gemfile bundle exec rspec
|
22
30
|
BUNDLE_GEMFILE=gemfiles/rails-3.2.gemfile bundle exec rspec
|
23
31
|
BUNDLE_GEMFILE=gemfiles/rails-4.0.gemfile bundle exec rspec
|
24
32
|
BUNDLE_GEMFILE=gemfiles/rails-4.1.gemfile bundle exec rspec
|
25
33
|
BUNDLE_GEMFILE=gemfiles/rails-4.2.gemfile bundle exec rspec
|
34
|
+
BUNDLE_GEMFILE=gemfiles/rails-5.0.gemfile bundle exec rspec
|
35
|
+
BUNDLE_GEMFILE=gemfiles/resque.gemfile bundle exec rspec
|
36
|
+
BUNDLE_GEMFILE=gemfiles/sequel-435.gemfile bundle exec rspec
|
26
37
|
BUNDLE_GEMFILE=gemfiles/sequel.gemfile bundle exec rspec
|
27
38
|
BUNDLE_GEMFILE=gemfiles/sinatra.gemfile bundle exec rspec
|
39
|
+
BUNDLE_GEMFILE=gemfiles/webmachine.gemfile bundle exec rspec
|
28
40
|
```
|
29
41
|
|
30
|
-
|
31
|
-
|
32
|
-
|
42
|
+
If you have either Rvm or Rbenv installed you can also use
|
43
|
+
`rake generate_bundle_and_spec_all` to generate a script that runs specs for
|
44
|
+
all Ruby versions and gem combinations we support.
|
45
|
+
|
46
|
+
On Travis we run the suite against all of the Gemfiles mentioned above and on
|
47
|
+
a number of different Ruby versions.
|
33
48
|
|
34
49
|
## Branches and versions
|
35
50
|
|
data/Rakefile
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
require 'bundler'
|
2
|
-
require 'rspec/core/rake_task'
|
3
2
|
|
4
3
|
GEMFILES = %w(
|
5
4
|
capistrano2
|
@@ -174,8 +173,13 @@ task :install_extension do
|
|
174
173
|
`cd ext && rm -f libappsignal.a && ruby extconf.rb && make clean && make`
|
175
174
|
end
|
176
175
|
|
177
|
-
|
178
|
-
|
176
|
+
begin
|
177
|
+
require 'rspec/core/rake_task'
|
178
|
+
RSpec::Core::RakeTask.new(:rspec) do |t|
|
179
|
+
t.pattern = Dir.glob('spec/**/*_spec.rb')
|
180
|
+
end
|
181
|
+
rescue LoadError
|
182
|
+
# When running rake install, there is no RSpec yet.
|
179
183
|
end
|
180
184
|
|
181
185
|
task :travis => [:install_extension, :rspec]
|
data/ext/extconf.rb
CHANGED
@@ -47,9 +47,9 @@ def install
|
|
47
47
|
|
48
48
|
arch_config = AGENT_CONFIG['triples'][ARCH]
|
49
49
|
|
50
|
-
unless File.
|
51
|
-
File.
|
52
|
-
File.
|
50
|
+
unless File.exist?(ext_path('appsignal-agent')) &&
|
51
|
+
File.exist?(ext_path('libappsignal.a')) &&
|
52
|
+
File.exist?(ext_path('appsignal_extension.h'))
|
53
53
|
logger.info "Downloading agent release from #{arch_config['download_url']}"
|
54
54
|
|
55
55
|
archive = open(arch_config['download_url'], :ssl_ca_cert => CA_CERT_PATH)
|
data/lib/appsignal.rb
CHANGED
@@ -15,7 +15,8 @@ end
|
|
15
15
|
|
16
16
|
module Appsignal
|
17
17
|
class << self
|
18
|
-
attr_accessor :config, :subscriber, :
|
18
|
+
attr_accessor :config, :subscriber, :agent, :extension_loaded
|
19
|
+
attr_writer :logger, :in_memory_log
|
19
20
|
|
20
21
|
def extensions
|
21
22
|
@extensions ||= []
|
@@ -72,6 +73,14 @@ module Appsignal
|
|
72
73
|
end
|
73
74
|
end
|
74
75
|
|
76
|
+
def in_memory_log
|
77
|
+
if defined?(@in_memory_log) && @in_memory_log
|
78
|
+
@in_memory_log
|
79
|
+
else
|
80
|
+
@in_memory_log = StringIO.new
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
75
84
|
def stop(called_by=nil)
|
76
85
|
if called_by
|
77
86
|
logger.debug("Stopping appsignal (#{called_by})")
|
@@ -219,8 +228,7 @@ module Appsignal
|
|
219
228
|
end
|
220
229
|
|
221
230
|
def logger
|
222
|
-
@
|
223
|
-
@logger ||= Logger.new(@in_memory_log).tap do |l|
|
231
|
+
@logger ||= Logger.new(in_memory_log).tap do |l|
|
224
232
|
l.level = Logger::INFO
|
225
233
|
l.formatter = log_formatter
|
226
234
|
end
|
@@ -248,7 +256,10 @@ module Appsignal
|
|
248
256
|
else
|
249
257
|
@logger.level = Logger::INFO
|
250
258
|
end
|
251
|
-
|
259
|
+
|
260
|
+
if in_memory_log
|
261
|
+
@logger << in_memory_log.string
|
262
|
+
end
|
252
263
|
|
253
264
|
if path_arg
|
254
265
|
@logger.info('Setting the path in start_logger has no effect anymore, set it in the config instead')
|
data/lib/appsignal/cli.rb
CHANGED
@@ -11,7 +11,8 @@ module Appsignal
|
|
11
11
|
AVAILABLE_COMMANDS = %w(diagnose install notify_of_deploy).freeze
|
12
12
|
|
13
13
|
class << self
|
14
|
-
attr_accessor :options, :
|
14
|
+
attr_accessor :options, :initial_config
|
15
|
+
attr_writer :config
|
15
16
|
|
16
17
|
def run(argv=ARGV)
|
17
18
|
@options = {}
|
@@ -49,7 +49,7 @@ module Appsignal
|
|
49
49
|
def check_api_key
|
50
50
|
start_appsignal
|
51
51
|
auth_check = ::Appsignal::AuthCheck.new(Appsignal.config, Appsignal.logger)
|
52
|
-
status,
|
52
|
+
status, _ = auth_check.perform_with_result
|
53
53
|
if status == '200'
|
54
54
|
puts "Checking API key: Ok"
|
55
55
|
else
|
@@ -66,7 +66,7 @@ module Appsignal
|
|
66
66
|
puts File.read(install_log_path)
|
67
67
|
puts "\n"
|
68
68
|
mkmf_log_path = "#{path.strip}/ext/mkmf.log"
|
69
|
-
if File.
|
69
|
+
if File.exist?(mkmf_log_path)
|
70
70
|
puts "Showing last lines of extension compilation log: #{mkmf_log_path}"
|
71
71
|
puts File.read(mkmf_log_path)
|
72
72
|
puts "\n"
|
@@ -188,7 +188,7 @@ module Appsignal
|
|
188
188
|
|
189
189
|
def configure(config, environments, name_overwritten)
|
190
190
|
deploy_rb_file = File.join(Dir.pwd, 'config/deploy.rb')
|
191
|
-
if File.
|
191
|
+
if File.exist?(deploy_rb_file) && (File.read(deploy_rb_file) =~ /require (\'|\").\/appsignal\/capistrano/).nil?
|
192
192
|
print 'Adding AppSignal integration to deploy.rb'
|
193
193
|
File.open(deploy_rb_file, 'a') do |f|
|
194
194
|
f.write "\nrequire 'appsignal/capistrano'\n"
|
data/lib/appsignal/config.rb
CHANGED
data/lib/appsignal/hooks.rb
CHANGED
@@ -21,6 +21,10 @@ module Appsignal
|
|
21
21
|
Appsignal::Hooks.register(name, hook.new)
|
22
22
|
end
|
23
23
|
|
24
|
+
def initialize
|
25
|
+
@installed = false
|
26
|
+
end
|
27
|
+
|
24
28
|
def try_to_install(name)
|
25
29
|
if dependencies_present? && !installed?
|
26
30
|
Appsignal.logger.info("Installing #{name} hook")
|
@@ -34,7 +38,7 @@ module Appsignal
|
|
34
38
|
end
|
35
39
|
|
36
40
|
def installed?
|
37
|
-
|
41
|
+
@installed
|
38
42
|
end
|
39
43
|
|
40
44
|
def dependencies_present?
|
@@ -59,13 +59,14 @@ module Appsignal
|
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
62
|
-
attr_reader :ext, :transaction_id, :namespace, :request, :paused, :tags, :options
|
62
|
+
attr_reader :ext, :transaction_id, :namespace, :request, :paused, :tags, :options, :discarded
|
63
63
|
|
64
64
|
def initialize(transaction_id, namespace, request, options={})
|
65
65
|
@transaction_id = transaction_id
|
66
66
|
@namespace = namespace
|
67
67
|
@request = request
|
68
68
|
@paused = false
|
69
|
+
@discarded = false
|
69
70
|
@tags = {}
|
70
71
|
@store = Hash.new({})
|
71
72
|
@options = options
|
@@ -79,6 +80,10 @@ module Appsignal
|
|
79
80
|
end
|
80
81
|
|
81
82
|
def complete
|
83
|
+
if discarded?
|
84
|
+
Appsignal.logger.debug('Skipping transaction because it was manually discarded.'.freeze)
|
85
|
+
return
|
86
|
+
end
|
82
87
|
if @ext.finish
|
83
88
|
sample_data
|
84
89
|
end
|
@@ -97,6 +102,18 @@ module Appsignal
|
|
97
102
|
@paused == true
|
98
103
|
end
|
99
104
|
|
105
|
+
def discard!
|
106
|
+
@discarded = true
|
107
|
+
end
|
108
|
+
|
109
|
+
def restore!
|
110
|
+
@discarded = false
|
111
|
+
end
|
112
|
+
|
113
|
+
def discarded?
|
114
|
+
@discarded == true
|
115
|
+
end
|
116
|
+
|
100
117
|
def store(key)
|
101
118
|
@store[key]
|
102
119
|
end
|
data/lib/appsignal/version.rb
CHANGED
@@ -8,20 +8,17 @@ describe Appsignal::AuthCheck do
|
|
8
8
|
describe "#perform_with_result" do
|
9
9
|
it "should give success message" do
|
10
10
|
auth_check.should_receive(:perform).and_return('200')
|
11
|
-
auth_check.perform_with_result.should
|
12
|
-
['200', 'AppSignal has confirmed authorization!']
|
11
|
+
auth_check.perform_with_result.should eq ['200', 'AppSignal has confirmed authorization!']
|
13
12
|
end
|
14
13
|
|
15
14
|
it "should give 401 message" do
|
16
15
|
auth_check.should_receive(:perform).and_return('401')
|
17
|
-
auth_check.perform_with_result.should
|
18
|
-
['401', 'API key not valid with AppSignal...']
|
16
|
+
auth_check.perform_with_result.should eq ['401', 'API key not valid with AppSignal...']
|
19
17
|
end
|
20
18
|
|
21
19
|
it "should give an error message" do
|
22
20
|
auth_check.should_receive(:perform).and_return('402')
|
23
|
-
auth_check.perform_with_result.should
|
24
|
-
['402', 'Could not confirm authorization: 402']
|
21
|
+
auth_check.perform_with_result.should eq ['402', 'Could not confirm authorization: 402']
|
25
22
|
end
|
26
23
|
end
|
27
24
|
|
@@ -118,7 +118,7 @@ describe Appsignal::CLI::Install do
|
|
118
118
|
|
119
119
|
subject { cli.rails_environments }
|
120
120
|
|
121
|
-
it { should
|
121
|
+
it { should eq ['development', 'production'] }
|
122
122
|
end
|
123
123
|
|
124
124
|
describe ".installed_frameworks" do
|
@@ -271,7 +271,7 @@ describe Appsignal::CLI::Install do
|
|
271
271
|
Gem.stub(:win_platform? => true)
|
272
272
|
end
|
273
273
|
|
274
|
-
it { should
|
274
|
+
it { should eq 'text' }
|
275
275
|
end
|
276
276
|
|
277
277
|
context "not on windows" do
|
@@ -279,7 +279,7 @@ describe Appsignal::CLI::Install do
|
|
279
279
|
Gem.stub(:win_platform? => false)
|
280
280
|
end
|
281
281
|
|
282
|
-
it { should
|
282
|
+
it { should eq "\e[32mtext\e[0m" }
|
283
283
|
end
|
284
284
|
end
|
285
285
|
|
@@ -325,7 +325,7 @@ describe Appsignal::CLI::Install do
|
|
325
325
|
cli.should_receive(:gets).once.and_return('')
|
326
326
|
cli.should_receive(:gets).once.and_return('value')
|
327
327
|
|
328
|
-
cli.required_input('provide: ').should
|
328
|
+
cli.required_input('provide: ').should eq 'value'
|
329
329
|
end
|
330
330
|
end
|
331
331
|
|
@@ -16,7 +16,7 @@ describe Appsignal::Config do
|
|
16
16
|
its(:log_file_path) { should end_with('spec/support/project_fixture/appsignal.log') }
|
17
17
|
|
18
18
|
it "should merge with the default config and fill the config hash" do
|
19
|
-
subject.config_hash.should
|
19
|
+
subject.config_hash.should eq({
|
20
20
|
:debug => false,
|
21
21
|
:ignore_errors => [],
|
22
22
|
:ignore_actions => [],
|
@@ -38,7 +38,7 @@ describe Appsignal::Config do
|
|
38
38
|
:enable_host_metrics => true,
|
39
39
|
:enable_minutely_probes => false,
|
40
40
|
:hostname => Socket.gethostname
|
41
|
-
}
|
41
|
+
})
|
42
42
|
end
|
43
43
|
|
44
44
|
context "if a log file path is set" do
|
@@ -51,13 +51,13 @@ describe Appsignal::Config do
|
|
51
51
|
|
52
52
|
let(:config) { project_fixture_config('production', :log_path => '/tmp/not-writable') }
|
53
53
|
|
54
|
-
its(:log_file_path) { should
|
54
|
+
its(:log_file_path) { should eq '/tmp/appsignal.log' }
|
55
55
|
end
|
56
56
|
|
57
57
|
context "if it does not exist" do
|
58
58
|
let(:config) { project_fixture_config('production', :log_path => '/non-existing') }
|
59
59
|
|
60
|
-
its(:log_file_path) { should
|
60
|
+
its(:log_file_path) { should eq '/tmp/appsignal.log' }
|
61
61
|
end
|
62
62
|
|
63
63
|
context "if it is nil" do
|
@@ -65,7 +65,7 @@ describe Appsignal::Config do
|
|
65
65
|
|
66
66
|
before { config.stub(:root_path => nil) }
|
67
67
|
|
68
|
-
its(:log_file_path) { should
|
68
|
+
its(:log_file_path) { should eq '/tmp/appsignal.log' }
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
@@ -73,7 +73,7 @@ describe Appsignal::Config do
|
|
73
73
|
let(:config) { project_fixture_config('production', :endpoint => 'https://push.appsignal.com/1') }
|
74
74
|
|
75
75
|
it "should strip the path" do
|
76
|
-
subject[:endpoint].should
|
76
|
+
subject[:endpoint].should eq 'https://push.appsignal.com'
|
77
77
|
end
|
78
78
|
end
|
79
79
|
|
@@ -81,18 +81,18 @@ describe Appsignal::Config do
|
|
81
81
|
let(:config) { project_fixture_config('production', :endpoint => 'http://localhost:4567') }
|
82
82
|
|
83
83
|
it "should keep the port" do
|
84
|
-
subject[:endpoint].should
|
84
|
+
subject[:endpoint].should eq 'http://localhost:4567'
|
85
85
|
end
|
86
86
|
end
|
87
87
|
|
88
88
|
describe "#[]= and #[]" do
|
89
89
|
it "should get the value for an existing key" do
|
90
|
-
subject[:push_api_key].should
|
90
|
+
subject[:push_api_key].should eq 'abc'
|
91
91
|
end
|
92
92
|
|
93
93
|
it "should change and get the value for an existing key" do
|
94
94
|
subject[:push_api_key] = 'abcde'
|
95
|
-
subject[:push_api_key].should
|
95
|
+
subject[:push_api_key].should eq 'abcde'
|
96
96
|
end
|
97
97
|
|
98
98
|
it "should return nil for a non-existing key" do
|
@@ -111,26 +111,26 @@ describe Appsignal::Config do
|
|
111
111
|
end
|
112
112
|
|
113
113
|
it "should write the current config to env vars" do
|
114
|
-
ENV['APPSIGNAL_ACTIVE'].should
|
114
|
+
ENV['APPSIGNAL_ACTIVE'].should eq 'true'
|
115
115
|
ENV['APPSIGNAL_APP_PATH'].should end_with('spec/support/project_fixture')
|
116
116
|
ENV['APPSIGNAL_AGENT_PATH'].should end_with('/ext')
|
117
|
-
ENV['APPSIGNAL_DEBUG_LOGGING'].should
|
117
|
+
ENV['APPSIGNAL_DEBUG_LOGGING'].should eq 'false'
|
118
118
|
ENV['APPSIGNAL_LOG_FILE_PATH'].should end_with('/tmp/appsignal.log')
|
119
|
-
ENV['APPSIGNAL_PUSH_API_ENDPOINT'].should
|
120
|
-
ENV['APPSIGNAL_PUSH_API_KEY'].should
|
121
|
-
ENV['APPSIGNAL_APP_NAME'].should
|
122
|
-
ENV['APPSIGNAL_ENVIRONMENT'].should
|
123
|
-
ENV['APPSIGNAL_AGENT_VERSION'].should
|
124
|
-
ENV['APPSIGNAL_LANGUAGE_INTEGRATION_VERSION'].should
|
125
|
-
ENV['APPSIGNAL_HTTP_PROXY'].should
|
126
|
-
ENV['APPSIGNAL_IGNORE_ACTIONS'].should
|
127
|
-
ENV['APPSIGNAL_FILTER_PARAMETERS'].should
|
128
|
-
ENV['APPSIGNAL_SEND_PARAMS'].should
|
129
|
-
ENV['APPSIGNAL_RUNNING_IN_CONTAINER'].should
|
119
|
+
ENV['APPSIGNAL_PUSH_API_ENDPOINT'].should eq 'https://push.appsignal.com'
|
120
|
+
ENV['APPSIGNAL_PUSH_API_KEY'].should eq 'abc'
|
121
|
+
ENV['APPSIGNAL_APP_NAME'].should eq 'TestApp'
|
122
|
+
ENV['APPSIGNAL_ENVIRONMENT'].should eq 'production'
|
123
|
+
ENV['APPSIGNAL_AGENT_VERSION'].should eq Appsignal::Extension.agent_version
|
124
|
+
ENV['APPSIGNAL_LANGUAGE_INTEGRATION_VERSION'].should eq Appsignal::VERSION
|
125
|
+
ENV['APPSIGNAL_HTTP_PROXY'].should eq 'http://localhost'
|
126
|
+
ENV['APPSIGNAL_IGNORE_ACTIONS'].should eq 'action1,action2'
|
127
|
+
ENV['APPSIGNAL_FILTER_PARAMETERS'].should eq 'password,confirm_password'
|
128
|
+
ENV['APPSIGNAL_SEND_PARAMS'].should eq 'true'
|
129
|
+
ENV['APPSIGNAL_RUNNING_IN_CONTAINER'].should eq 'false'
|
130
130
|
ENV['APPSIGNAL_WORKING_DIR_PATH'].should be_nil
|
131
|
-
ENV['APPSIGNAL_ENABLE_HOST_METRICS'].should
|
132
|
-
ENV['APPSIGNAL_ENABLE_MINUTELY_PROBES'].should
|
133
|
-
ENV['APPSIGNAL_HOSTNAME'].should
|
131
|
+
ENV['APPSIGNAL_ENABLE_HOST_METRICS'].should eq 'true'
|
132
|
+
ENV['APPSIGNAL_ENABLE_MINUTELY_PROBES'].should eq 'false'
|
133
|
+
ENV['APPSIGNAL_HOSTNAME'].should eq 'app1.local'
|
134
134
|
ENV['APPSIGNAL_PROCESS_NAME'].should include 'rspec'
|
135
135
|
end
|
136
136
|
|
@@ -141,7 +141,7 @@ describe Appsignal::Config do
|
|
141
141
|
end
|
142
142
|
|
143
143
|
it "should write the current config to env vars" do
|
144
|
-
ENV['APPSIGNAL_WORKING_DIR_PATH'].should
|
144
|
+
ENV['APPSIGNAL_WORKING_DIR_PATH'].should eq '/tmp/appsignal2'
|
145
145
|
end
|
146
146
|
end
|
147
147
|
end
|
@@ -159,11 +159,11 @@ describe Appsignal::Config do
|
|
159
159
|
end
|
160
160
|
|
161
161
|
it "should ignore env vars that are present in the config file" do
|
162
|
-
subject[:push_api_key].should
|
162
|
+
subject[:push_api_key].should eq 'abc'
|
163
163
|
end
|
164
164
|
|
165
165
|
it "should use env vars that are not present in the config file" do
|
166
|
-
subject[:debug].should
|
166
|
+
subject[:debug].should eq true
|
167
167
|
end
|
168
168
|
|
169
169
|
context "running on Heroku" do
|
@@ -184,8 +184,8 @@ describe Appsignal::Config do
|
|
184
184
|
let(:config) { project_fixture_config('production', :name => 'Initial name', :initial_key => 'value') }
|
185
185
|
|
186
186
|
it "should merge with the config" do
|
187
|
-
subject[:name].should
|
188
|
-
subject[:initial_key].should
|
187
|
+
subject[:name].should eq 'TestApp'
|
188
|
+
subject[:initial_key].should eq 'value'
|
189
189
|
end
|
190
190
|
end
|
191
191
|
|
@@ -193,11 +193,11 @@ describe Appsignal::Config do
|
|
193
193
|
let(:config) { project_fixture_config('old_api_key') }
|
194
194
|
|
195
195
|
it "should fill the push_api_key with the old style key" do
|
196
|
-
subject[:push_api_key].should
|
196
|
+
subject[:push_api_key].should eq 'def'
|
197
197
|
end
|
198
198
|
|
199
199
|
it "should fill ignore_errors with the old style ignore exceptions" do
|
200
|
-
subject[:ignore_errors].should
|
200
|
+
subject[:ignore_errors].should eq ['StandardError']
|
201
201
|
end
|
202
202
|
end
|
203
203
|
end
|
@@ -239,11 +239,11 @@ describe Appsignal::Config do
|
|
239
239
|
its(:valid?) { should be_true }
|
240
240
|
its(:active?) { should be_true }
|
241
241
|
|
242
|
-
its([:push_api_key]) { should
|
243
|
-
its([:active]) { should
|
244
|
-
its([:name]) { should
|
245
|
-
its([:debug]) { should
|
246
|
-
its([:ignore_actions]) { should
|
242
|
+
its([:push_api_key]) { should eq 'aaa-bbb-ccc' }
|
243
|
+
its([:active]) { should eq true }
|
244
|
+
its([:name]) { should eq 'App name' }
|
245
|
+
its([:debug]) { should eq true }
|
246
|
+
its([:ignore_actions]) { should eq ['action1', 'action2'] }
|
247
247
|
end
|
248
248
|
end
|
249
249
|
|