bugsnag 6.9.0 → 6.10.0
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 +16 -0
- data/Gemfile +0 -1
- data/VERSION +1 -1
- data/features/delayed_job.feature +9 -10
- data/features/fixtures/delayed_job/Dockerfile +2 -2
- data/features/fixtures/delayed_job/app/config/initializers/bugsnag.rb +12 -12
- data/features/fixtures/docker-compose.yml +118 -124
- data/features/fixtures/plain/Dockerfile +5 -6
- data/features/fixtures/plain/app/Gemfile +1 -1
- data/features/fixtures/plain/app/app.rb +19 -19
- data/features/fixtures/plain/app/configuration/api_key.rb +1 -1
- data/features/fixtures/plain/app/stack_frame_modification/initiators/handled_before_notify.rb +5 -1
- data/features/fixtures/rack1/Dockerfile +7 -6
- data/features/fixtures/rack1/Gemfile +1 -1
- data/features/fixtures/rack2/Dockerfile +7 -6
- data/features/fixtures/rack2/Gemfile +1 -1
- data/features/fixtures/rails3/Dockerfile +5 -6
- data/features/fixtures/rails3/app/Gemfile +1 -1
- data/features/fixtures/rails3/app/config/initializers/bugsnag.rb +12 -12
- data/features/fixtures/rails4/Dockerfile +7 -5
- data/features/fixtures/rails4/app/Gemfile +1 -1
- data/features/fixtures/rails4/app/config/initializers/bugsnag.rb +12 -12
- data/features/fixtures/rails5/Dockerfile +5 -6
- data/features/fixtures/rails5/app/Gemfile +1 -1
- data/features/fixtures/rails5/app/config/initializers/bugsnag.rb +12 -12
- data/features/fixtures/resque/Dockerfile +6 -5
- data/features/fixtures/resque/Gemfile +1 -1
- data/features/fixtures/sidekiq/Dockerfile +4 -2
- data/features/fixtures/sidekiq/app/Gemfile +3 -1
- data/features/fixtures/sidekiq/app/app.rb +4 -4
- data/features/fixtures/sinatra1/Dockerfile +6 -5
- data/features/fixtures/sinatra1/Gemfile +1 -1
- data/features/fixtures/sinatra2/Dockerfile +6 -5
- data/features/fixtures/sinatra2/Gemfile +1 -1
- data/features/plain_features/add_tab.feature +15 -17
- data/features/plain_features/api_key.feature +2 -3
- data/features/plain_features/app_type.feature +3 -5
- data/features/plain_features/app_version.feature +3 -5
- data/features/plain_features/auto_notify.feature +1 -3
- data/features/plain_features/delivery.feature +3 -5
- data/features/plain_features/exception_data.feature +4 -6
- data/features/plain_features/filters.feature +4 -6
- data/features/plain_features/handled_errors.feature +48 -30
- data/features/plain_features/ignore_classes.feature +0 -2
- data/features/plain_features/ignore_report.feature +0 -2
- data/features/plain_features/proxies.feature +4 -6
- data/features/plain_features/release_stages.feature +8 -10
- data/features/plain_features/report_api_key.feature +1 -3
- data/features/plain_features/report_severity.feature +3 -5
- data/features/plain_features/report_stack_frames.feature +54 -21
- data/features/plain_features/report_user.feature +10 -12
- data/features/plain_features/unhandled_errors.feature +4 -6
- data/features/rails_features/api_key.feature +3 -3
- data/features/rails_features/app_type.feature +4 -4
- data/features/rails_features/app_version.feature +2 -2
- data/features/rails_features/auto_capture_sessions.feature +4 -4
- data/features/rails_features/auto_notify.feature +5 -5
- data/features/rails_features/before_notify.feature +4 -4
- data/features/rails_features/handled.feature +6 -6
- data/features/rails_features/ignore_classes.feature +2 -2
- data/features/rails_features/meta_data_filters.feature +2 -2
- data/features/rails_features/project_root.feature +8 -8
- data/features/rails_features/release_stage.feature +2 -2
- data/features/rails_features/send_code.feature +2 -2
- data/features/rails_features/send_environment.feature +3 -3
- data/features/rails_features/unhandled.feature +4 -4
- data/features/rails_features/user_info.feature +4 -4
- data/features/sidekiq.feature +9 -10
- data/features/steps/ruby_notifier_steps.rb +6 -25
- data/features/support/env.rb +18 -9
- data/lib/bugsnag/configuration.rb +3 -3
- data/lib/bugsnag/integrations/mailman.rb +0 -1
- data/lib/bugsnag/integrations/shoryuken.rb +6 -8
- data/lib/bugsnag/integrations/sidekiq.rb +14 -11
- data/lib/bugsnag/stacktrace.rb +1 -2
- data/spec/configuration_spec.rb +1 -1
- data/spec/integrations/sidekiq_spec.rb +73 -7
- data/spec/report_spec.rb +62 -20
- data/spec/spec_helper.rb +1 -1
- data/spec/stacktrace_spec.rb +20 -16
- metadata +2 -2
@@ -1,17 +1,16 @@
|
|
1
1
|
Feature: API Key configuration options
|
2
2
|
|
3
3
|
Background:
|
4
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
5
4
|
And I configure the bugsnag endpoint
|
6
5
|
|
7
6
|
Scenario Outline: The API key configuration option can be set
|
8
7
|
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
9
|
-
And I set environment variable "
|
8
|
+
And I set environment variable "BUGSNAG_API_KEY" to "b35a2a72bd230ac0aa0f52715bbdc6aa"
|
10
9
|
And I have built the service "plain-ruby"
|
11
10
|
And I run the service "plain-ruby" with the command "bundle exec ruby configuration/api_key.rb"
|
12
11
|
And I wait for 1 second
|
13
12
|
Then I should receive a request
|
14
|
-
And the request used the Ruby notifier
|
13
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
15
14
|
And the request used payload v4 headers
|
16
15
|
And the request contained the api key "b35a2a72bd230ac0aa0f52715bbdc6aa"
|
17
16
|
|
@@ -2,21 +2,19 @@ Feature: App type configuration option
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
And I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: The App type configuration option can be set
|
10
8
|
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
11
|
-
And I set environment variable "
|
9
|
+
And I set environment variable "BUGSNAG_APP_TYPE" to "test_app"
|
12
10
|
And I have built the service "plain-ruby"
|
13
11
|
And I run the service "plain-ruby" with the command "bundle exec ruby configuration/send_handled.rb"
|
14
12
|
And I wait for 1 second
|
15
13
|
Then I should receive a request
|
16
|
-
And the request used the Ruby notifier
|
14
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
17
15
|
And the request used payload v4 headers
|
18
16
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
19
|
-
And the event "app.type"
|
17
|
+
And the event "app.type" equals "test_app"
|
20
18
|
|
21
19
|
Examples:
|
22
20
|
| ruby version |
|
@@ -2,21 +2,19 @@ Feature: App version configuration option
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
And I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: The App version configuration option can be set
|
10
8
|
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
11
|
-
And I set environment variable "
|
9
|
+
And I set environment variable "BUGSNAG_APP_VERSION" to "9.9.8"
|
12
10
|
And I have built the service "plain-ruby"
|
13
11
|
And I run the service "plain-ruby" with the command "bundle exec ruby configuration/send_handled.rb"
|
14
12
|
And I wait for 1 second
|
15
13
|
Then I should receive a request
|
16
|
-
And the request used the Ruby notifier
|
14
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
17
15
|
And the request used payload v4 headers
|
18
16
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
19
|
-
And the event "app.version"
|
17
|
+
And the event "app.version" equals "9.9.8"
|
20
18
|
|
21
19
|
Examples:
|
22
20
|
| ruby version |
|
@@ -2,13 +2,11 @@ Feature: Auto notify configuration option
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
And I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: When Auto-notify is false notifications are not sent
|
10
8
|
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
11
|
-
And I set environment variable "
|
9
|
+
And I set environment variable "BUGSNAG_AUTO_NOTIFY" to "false"
|
12
10
|
And I have built the service "plain-ruby"
|
13
11
|
And I run the service "plain-ruby" with the command "bundle exec ruby configuration/send_unhandled.rb"
|
14
12
|
And I wait for 1 second
|
@@ -2,8 +2,6 @@ Feature: delivery_method configuration option
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
And I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: When the delivery_method is set to :synchronous
|
@@ -12,7 +10,7 @@ Scenario Outline: When the delivery_method is set to :synchronous
|
|
12
10
|
And I run the service "plain-ruby" with the command "bundle exec ruby delivery/synchronous.rb"
|
13
11
|
And I wait for 1 second
|
14
12
|
Then I should receive a request
|
15
|
-
And the request used the Ruby notifier
|
13
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
16
14
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
17
15
|
And the exception "errorClass" equals "RuntimeError"
|
18
16
|
And the event "metaData.config" matches the JSON fixture in "features/fixtures/plain/json/delivery_synchronous.json"
|
@@ -33,7 +31,7 @@ Scenario Outline: When the delivery_method is set to :thread_queue
|
|
33
31
|
And I run the service "plain-ruby" with the command "bundle exec ruby delivery/threadpool.rb"
|
34
32
|
And I wait for 1 second
|
35
33
|
Then I should receive a request
|
36
|
-
And the request used the Ruby notifier
|
34
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
37
35
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
38
36
|
And the exception "errorClass" equals "RuntimeError"
|
39
37
|
And the event "metaData.config" matches the JSON fixture in "features/fixtures/plain/json/delivery_threadpool.json"
|
@@ -54,7 +52,7 @@ Scenario Outline: When the delivery_method is set to :thread_queue in a fork
|
|
54
52
|
And I run the service "plain-ruby" with the command "bundle exec ruby delivery/fork_threadpool.rb"
|
55
53
|
And I wait for 1 second
|
56
54
|
Then I should receive 2 requests
|
57
|
-
And the request used the Ruby notifier
|
55
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
58
56
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
59
57
|
And the exception "errorClass" equals "RuntimeError"
|
60
58
|
And the event "metaData.config" matches the JSON fixture in "features/fixtures/plain/json/delivery_fork.json"
|
@@ -2,8 +2,6 @@ Feature: Plain exception data
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
Given I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: An error has built in meta-data
|
@@ -12,7 +10,7 @@ Scenario Outline: An error has built in meta-data
|
|
12
10
|
And I run the service "plain-ruby" with the command "bundle exec ruby exception_data/<state>_meta_data.rb"
|
13
11
|
And I wait for 1 second
|
14
12
|
Then I should receive a request
|
15
|
-
And the request used the Ruby notifier
|
13
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
16
14
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
17
15
|
And the exception "errorClass" equals "CustomError"
|
18
16
|
And the event "metaData.exception.exception_type" equals "FATAL"
|
@@ -41,7 +39,7 @@ Scenario Outline: An error has built in context
|
|
41
39
|
And I run the service "plain-ruby" with the command "bundle exec ruby exception_data/<state>_context.rb"
|
42
40
|
And I wait for 1 second
|
43
41
|
Then I should receive a request
|
44
|
-
And the request used the Ruby notifier
|
42
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
45
43
|
And the request used payload v4 headers
|
46
44
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
47
45
|
And the exception "errorClass" equals "CustomError"
|
@@ -70,7 +68,7 @@ Scenario Outline: An error has built in grouping hash
|
|
70
68
|
And I run the service "plain-ruby" with the command "bundle exec ruby exception_data/<state>_hash.rb"
|
71
69
|
And I wait for 1 second
|
72
70
|
Then I should receive a request
|
73
|
-
And the request used the Ruby notifier
|
71
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
74
72
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
75
73
|
And the exception "errorClass" equals "CustomError"
|
76
74
|
And the event "groupingHash" equals "ABCDE12345"
|
@@ -98,7 +96,7 @@ Scenario Outline: An error has built in user id
|
|
98
96
|
And I run the service "plain-ruby" with the command "bundle exec ruby exception_data/<state>_user_id.rb"
|
99
97
|
And I wait for 1 second
|
100
98
|
Then I should receive a request
|
101
|
-
And the request used the Ruby notifier
|
99
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
102
100
|
And the request used payload v4 headers
|
103
101
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
104
102
|
And the exception "errorClass" equals "CustomError"
|
@@ -2,8 +2,6 @@ Feature: Plain filtering of metadata
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
Given I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: Metadata is filtered through the default filters
|
@@ -12,7 +10,7 @@ Scenario Outline: Metadata is filtered through the default filters
|
|
12
10
|
And I run the service "plain-ruby" with the command "bundle exec ruby filters/default_filters.rb"
|
13
11
|
And I wait for 1 second
|
14
12
|
Then I should receive a request
|
15
|
-
And the request used the Ruby notifier
|
13
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
16
14
|
And the request used payload v4 headers
|
17
15
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
18
16
|
And the event "metaData.filter" matches the JSON fixture in "features/fixtures/plain/json/filters_default_metadata_filters.json"
|
@@ -29,15 +27,15 @@ Scenario Outline: Metadata is filtered through the default filters
|
|
29
27
|
|
30
28
|
Scenario Outline: Additional filters can be added to the filter list
|
31
29
|
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
32
|
-
And I set environment variable "
|
30
|
+
And I set environment variable "BUGSNAG_META_DATA_FILTERS" to "filter_me"
|
33
31
|
And I have built the service "plain-ruby"
|
34
32
|
And I run the service "plain-ruby" with the command "bundle exec ruby filters/additional_filters.rb"
|
35
33
|
And I wait for 1 second
|
36
34
|
Then I should receive a request
|
37
|
-
And the request used the Ruby notifier
|
35
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
38
36
|
And the request used payload v4 headers
|
39
37
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
40
|
-
And the event "metaData.filter.filter_me"
|
38
|
+
And the event "metaData.filter.filter_me" equals "[FILTERED]"
|
41
39
|
|
42
40
|
Examples:
|
43
41
|
| ruby version |
|
@@ -2,42 +2,60 @@ Feature: Plain handled errors
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
And I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
|
-
Scenario Outline: A
|
7
|
+
Scenario Outline: A rescued exception sends a report
|
10
8
|
And I set environment variable "RUBY_VERSION" to "<ruby version>"
|
11
9
|
And I have built the service "plain-ruby"
|
12
|
-
And I run the service "plain-ruby" with the command "bundle exec ruby handled
|
10
|
+
And I run the service "plain-ruby" with the command "bundle exec ruby handled/notify_exception.rb"
|
13
11
|
And I wait for 1 second
|
14
12
|
Then I should receive a request
|
15
|
-
And the request used the Ruby notifier
|
13
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
16
14
|
And the request used payload v4 headers
|
17
15
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
18
16
|
And the event "unhandled" is false
|
19
|
-
And the event "severity"
|
20
|
-
And the event "severityReason.type"
|
17
|
+
And the event "severity" equals "warning"
|
18
|
+
And the event "severityReason.type" equals "handledException"
|
21
19
|
And the exception "errorClass" equals "RuntimeError"
|
22
|
-
And the "file" of stack frame 0 equals "/usr/src/handled
|
23
|
-
And the "lineNumber" of stack frame 0 equals
|
20
|
+
And the "file" of stack frame 0 equals "/usr/src/app/handled/notify_exception.rb"
|
21
|
+
And the "lineNumber" of stack frame 0 equals 6
|
24
22
|
|
25
23
|
Examples:
|
26
|
-
| ruby version |
|
27
|
-
| 1.9.3 |
|
28
|
-
|
|
29
|
-
| 2.
|
30
|
-
| 2.
|
31
|
-
| 2.
|
32
|
-
| 2.
|
33
|
-
| 2.
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
24
|
+
| ruby version |
|
25
|
+
| 1.9.3 |
|
26
|
+
| 2.0 |
|
27
|
+
| 2.1 |
|
28
|
+
| 2.2 |
|
29
|
+
| 2.3 |
|
30
|
+
| 2.4 |
|
31
|
+
| 2.5 |
|
32
|
+
|
33
|
+
Scenario Outline: A notified string sends a report
|
34
|
+
And I set environment variable "RUBY_VERSION" to "<ruby version>"
|
35
|
+
And I have built the service "plain-ruby"
|
36
|
+
And I run the service "plain-ruby" with the command "bundle exec ruby handled/notify_string.rb"
|
37
|
+
And I wait for 1 second
|
38
|
+
Then I should receive a request
|
39
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
40
|
+
And the request used payload v4 headers
|
41
|
+
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
42
|
+
And the event "unhandled" is false
|
43
|
+
And the event "severity" equals "warning"
|
44
|
+
And the event "severityReason.type" equals "handledException"
|
45
|
+
And the exception "errorClass" equals "RuntimeError"
|
46
|
+
And the "file" of the top non-bugsnag stackframe equals "/usr/src/app/handled/notify_string.rb"
|
47
|
+
And the "lineNumber" of the top non-bugsnag stackframe equals 8
|
48
|
+
|
49
|
+
Examples:
|
50
|
+
| ruby version |
|
51
|
+
| 1.9.3 |
|
52
|
+
| 2.0 |
|
53
|
+
| 2.1 |
|
54
|
+
| 2.2 |
|
55
|
+
| 2.3 |
|
56
|
+
| 2.4 |
|
57
|
+
| 2.5 |
|
58
|
+
|
41
59
|
|
42
60
|
Scenario Outline: A handled error doesn't send a report when the :skip_bugsnag flag is set
|
43
61
|
And I set environment variable "RUBY_VERSION" to "<ruby version>"
|
@@ -62,17 +80,17 @@ Scenario Outline: A handled error can attach metadata in a block
|
|
62
80
|
And I run the service "plain-ruby" with the command "bundle exec ruby handled/block_metadata.rb"
|
63
81
|
And I wait for 1 second
|
64
82
|
Then I should receive a request
|
65
|
-
And the request used the Ruby notifier
|
83
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
66
84
|
And the request used payload v4 headers
|
67
85
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
68
86
|
And the event "unhandled" is false
|
69
|
-
And the event "severity"
|
70
|
-
And the event "severityReason.type"
|
87
|
+
And the event "severity" equals "warning"
|
88
|
+
And the event "severityReason.type" equals "handledException"
|
71
89
|
And the exception "errorClass" equals "RuntimeError"
|
72
|
-
And the "file" of stack frame 0 equals "/usr/src/handled/block_metadata.rb"
|
90
|
+
And the "file" of stack frame 0 equals "/usr/src/app/handled/block_metadata.rb"
|
73
91
|
And the "lineNumber" of stack frame 0 equals 6
|
74
|
-
And the event "metaData.account.id"
|
75
|
-
And the event "metaData.account.name"
|
92
|
+
And the event "metaData.account.id" equals "1234abcd"
|
93
|
+
And the event "metaData.account.name" equals "Acme Co"
|
76
94
|
And the event "metaData.account.support" is true
|
77
95
|
|
78
96
|
Examples:
|
@@ -2,8 +2,6 @@ Feature: Plain ignore classes
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
Given I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: An errors class is in the ignore_classes array
|
@@ -2,8 +2,6 @@ Feature: Plain ignore report
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
Given I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: A reports severity can be modified
|
@@ -2,16 +2,14 @@ Feature: proxy configuration options
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
And I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: Proxy settings are provided as configuration options
|
10
8
|
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
11
|
-
And I set environment variable "
|
12
|
-
And I set environment variable "
|
13
|
-
And I set environment variable "
|
14
|
-
And I set environment variable "
|
9
|
+
And I set environment variable "BUGSNAG_PROXY_HOST" to the current IP
|
10
|
+
And I set environment variable "BUGSNAG_PROXY_PORT" to the mock API port
|
11
|
+
And I set environment variable "BUGSNAG_PROXY_USER" to "tester"
|
12
|
+
And I set environment variable "BUGSNAG_PROXY_PASSWORD" to "testpass"
|
15
13
|
And I have built the service "plain-ruby"
|
16
14
|
And I run the service "plain-ruby" with the command "bundle exec ruby configuration/proxy.rb"
|
17
15
|
And I wait for 1 second
|
@@ -2,14 +2,12 @@ Feature: Release stage configuration options
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
And I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: Doesn't notify in the wrong release stage
|
10
8
|
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
11
|
-
And I set environment variable "
|
12
|
-
And I set environment variable "
|
9
|
+
And I set environment variable "BUGSNAG_NOTIFY_RELEASE_STAGE" to "stage_one"
|
10
|
+
And I set environment variable "BUGSNAG_RELEASE_STAGE" to "stage_two"
|
13
11
|
And I have built the service "plain-ruby"
|
14
12
|
And I run the service "plain-ruby" with the command "bundle exec ruby configuration/send_unhandled.rb"
|
15
13
|
And I wait for 1 second
|
@@ -27,20 +25,20 @@ Scenario Outline: Doesn't notify in the wrong release stage
|
|
27
25
|
|
28
26
|
Scenario Outline: Doesn't notify in the wrong release stage
|
29
27
|
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
30
|
-
And I set environment variable "
|
31
|
-
And I set environment variable "
|
28
|
+
And I set environment variable "BUGSNAG_NOTIFY_RELEASE_STAGE" to "stage_one"
|
29
|
+
And I set environment variable "BUGSNAG_RELEASE_STAGE" to "stage_one"
|
32
30
|
And I have built the service "plain-ruby"
|
33
31
|
And I run the service "plain-ruby" with the command "bundle exec ruby configuration/send_unhandled.rb"
|
34
32
|
And I wait for 1 second
|
35
33
|
Then I should receive a request
|
36
|
-
And the request used the Ruby notifier
|
34
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
37
35
|
And the request used payload v4 headers
|
38
36
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
39
37
|
And the event "unhandled" is true
|
40
|
-
And the event "severity"
|
41
|
-
And the event "severityReason.type"
|
38
|
+
And the event "severity" equals "error"
|
39
|
+
And the event "severityReason.type" equals "unhandledException"
|
42
40
|
And the exception "errorClass" equals "RuntimeError"
|
43
|
-
And the "file" of stack frame 0 equals "/usr/src/configuration/send_unhandled.rb"
|
41
|
+
And the "file" of stack frame 0 equals "/usr/src/app/configuration/send_unhandled.rb"
|
44
42
|
|
45
43
|
Examples:
|
46
44
|
| ruby version |
|
@@ -2,8 +2,6 @@ Feature: Plain report modify api key
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
Given I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: A report can have its api_key modified
|
@@ -13,7 +11,7 @@ Scenario Outline: A report can have its api_key modified
|
|
13
11
|
And I run the service "plain-ruby" with the command "bundle exec ruby report_modification/modify_api_key.rb"
|
14
12
|
And I wait for 1 second
|
15
13
|
Then I should receive a request
|
16
|
-
And the request used the Ruby notifier
|
14
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
17
15
|
And the request used payload v4 headers
|
18
16
|
And the request contained the api key "abcdefghijklmnopqrstuvwxyz123456"
|
19
17
|
|
@@ -2,8 +2,6 @@ Feature: Plain report modify severity
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
Given I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: A reports severity can be modified
|
@@ -13,11 +11,11 @@ Scenario Outline: A reports severity can be modified
|
|
13
11
|
And I run the service "plain-ruby" with the command "bundle exec ruby report_modification/modify_severity.rb"
|
14
12
|
And I wait for 1 second
|
15
13
|
Then I should receive a request
|
16
|
-
And the request used the Ruby notifier
|
14
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
17
15
|
And the request used payload v4 headers
|
18
16
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
19
|
-
And the event "severity"
|
20
|
-
And the event "severityReason.type"
|
17
|
+
And the event "severity" equals "info"
|
18
|
+
And the event "severityReason.type" equals "userCallbackSetSeverity"
|
21
19
|
|
22
20
|
Examples:
|
23
21
|
| ruby version | initiator |
|
@@ -2,8 +2,6 @@ Feature: Plain report modify stack frames
|
|
2
2
|
|
3
3
|
Background:
|
4
4
|
Given I set environment variable "BUGSNAG_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
5
|
-
Given I set environment variable "MAZE_API_KEY" to "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
6
|
-
And I set environment variable "APP_PATH" to "/usr/src"
|
7
5
|
And I configure the bugsnag endpoint
|
8
6
|
|
9
7
|
Scenario Outline: Stack frames can be removed
|
@@ -13,36 +11,52 @@ Scenario Outline: Stack frames can be removed
|
|
13
11
|
And I run the service "plain-ruby" with the command "bundle exec ruby stack_frame_modification/remove_stack_frame.rb"
|
14
12
|
And I wait for 1 second
|
15
13
|
Then I should receive a request
|
16
|
-
And the request used the Ruby notifier
|
14
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
17
15
|
And the request used payload v4 headers
|
18
16
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
19
|
-
And the "file" of
|
17
|
+
And the "file" of the top non-bugsnag stackframe equals "/usr/src/app/stack_frame_modification/initiators/<initiator>.rb"
|
20
18
|
And the "lineNumber" of stack frame 0 equals <lineNumber>
|
21
19
|
|
22
20
|
Examples:
|
23
21
|
| ruby version | initiator | lineNumber |
|
24
22
|
| 1.9.3 | handled_before_notify | 20 |
|
25
|
-
| 1.9.3 | handled_block | 19 |
|
26
23
|
| 1.9.3 | unhandled_before_notify | 21 |
|
27
24
|
| 2.0 | handled_before_notify | 20 |
|
28
|
-
| 2.0 | handled_block | 19 |
|
29
25
|
| 2.0 | unhandled_before_notify | 21 |
|
30
26
|
| 2.1 | handled_before_notify | 20 |
|
31
|
-
| 2.1 | handled_block | 19 |
|
32
27
|
| 2.1 | unhandled_before_notify | 21 |
|
33
28
|
| 2.2 | handled_before_notify | 20 |
|
34
|
-
| 2.2 | handled_block | 19 |
|
35
29
|
| 2.2 | unhandled_before_notify | 21 |
|
36
30
|
| 2.3 | handled_before_notify | 20 |
|
37
|
-
| 2.3 | handled_block | 19 |
|
38
31
|
| 2.3 | unhandled_before_notify | 21 |
|
39
32
|
| 2.4 | handled_before_notify | 20 |
|
40
|
-
| 2.4 | handled_block | 19 |
|
41
33
|
| 2.4 | unhandled_before_notify | 21 |
|
42
34
|
| 2.5 | handled_before_notify | 20 |
|
43
|
-
| 2.5 | handled_block | 19 |
|
44
35
|
| 2.5 | unhandled_before_notify | 21 |
|
45
36
|
|
37
|
+
Scenario Outline: Stack frames can be removed from a notified string
|
38
|
+
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
39
|
+
And I set environment variable "CALLBACK_INITIATOR" to "handled_block"
|
40
|
+
And I have built the service "plain-ruby"
|
41
|
+
And I run the service "plain-ruby" with the command "bundle exec ruby stack_frame_modification/remove_stack_frame.rb"
|
42
|
+
And I wait for 1 second
|
43
|
+
Then I should receive a request
|
44
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
45
|
+
And the request used payload v4 headers
|
46
|
+
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
47
|
+
And the "file" of the top non-bugsnag stackframe equals "/usr/src/app/stack_frame_modification/initiators/handled_block.rb"
|
48
|
+
And the "lineNumber" of the top non-bugsnag stackframe equals 19
|
49
|
+
|
50
|
+
Examples:
|
51
|
+
| ruby version |
|
52
|
+
| 1.9.3 |
|
53
|
+
| 2.0 |
|
54
|
+
| 2.1 |
|
55
|
+
| 2.2 |
|
56
|
+
| 2.3 |
|
57
|
+
| 2.4 |
|
58
|
+
| 2.5 |
|
59
|
+
|
46
60
|
Scenario Outline: Stack frames can be marked as in project
|
47
61
|
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
48
62
|
And I set environment variable "CALLBACK_INITIATOR" to "<initiator>"
|
@@ -50,10 +64,10 @@ Scenario Outline: Stack frames can be marked as in project
|
|
50
64
|
And I run the service "plain-ruby" with the command "bundle exec ruby stack_frame_modification/mark_frames_in_project.rb"
|
51
65
|
And I wait for 1 second
|
52
66
|
Then I should receive a request
|
53
|
-
And the request used the Ruby notifier
|
67
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
54
68
|
And the request used payload v4 headers
|
55
69
|
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
56
|
-
And the "file" of stack frame 0 equals "/usr/src/stack_frame_modification/initiators/<initiator>.rb"
|
70
|
+
And the "file" of stack frame 0 equals "/usr/src/app/stack_frame_modification/initiators/<initiator>.rb"
|
57
71
|
And the event "exceptions.0.stacktrace.0.inProject" is null
|
58
72
|
And the event "exceptions.0.stacktrace.1.inProject" is true
|
59
73
|
And the event "exceptions.0.stacktrace.2.inProject" is true
|
@@ -62,23 +76,42 @@ Scenario Outline: Stack frames can be marked as in project
|
|
62
76
|
Examples:
|
63
77
|
| ruby version | initiator |
|
64
78
|
| 1.9.3 | handled_before_notify |
|
65
|
-
| 1.9.3 | handled_block |
|
66
79
|
| 1.9.3 | unhandled_before_notify |
|
67
80
|
| 2.0 | handled_before_notify |
|
68
|
-
| 2.0 | handled_block |
|
69
81
|
| 2.0 | unhandled_before_notify |
|
70
82
|
| 2.1 | handled_before_notify |
|
71
|
-
| 2.1 | handled_block |
|
72
83
|
| 2.1 | unhandled_before_notify |
|
73
84
|
| 2.2 | handled_before_notify |
|
74
|
-
| 2.2 | handled_block |
|
75
85
|
| 2.2 | unhandled_before_notify |
|
76
86
|
| 2.3 | handled_before_notify |
|
77
|
-
| 2.3 | handled_block |
|
78
87
|
| 2.3 | unhandled_before_notify |
|
79
88
|
| 2.4 | handled_before_notify |
|
80
|
-
| 2.4 | handled_block |
|
81
89
|
| 2.4 | unhandled_before_notify |
|
82
90
|
| 2.5 | handled_before_notify |
|
83
|
-
| 2.5 |
|
84
|
-
|
91
|
+
| 2.5 | unhandled_before_notify |
|
92
|
+
|
93
|
+
Scenario Outline: Stack frames can be marked as in project with a handled string
|
94
|
+
Given I set environment variable "RUBY_VERSION" to "<ruby version>"
|
95
|
+
And I set environment variable "CALLBACK_INITIATOR" to "handled_block"
|
96
|
+
And I have built the service "plain-ruby"
|
97
|
+
And I run the service "plain-ruby" with the command "bundle exec ruby stack_frame_modification/mark_frames_in_project.rb"
|
98
|
+
And I wait for 1 second
|
99
|
+
Then I should receive a request
|
100
|
+
And the request used the "Ruby Bugsnag Notifier" notifier
|
101
|
+
And the request used payload v4 headers
|
102
|
+
And the request contained the api key "a35a2a72bd230ac0aa0f52715bbdc6aa"
|
103
|
+
And the "file" of the top non-bugsnag stackframe equals "/usr/src/app/stack_frame_modification/initiators/handled_block.rb"
|
104
|
+
And the event "exceptions.0.stacktrace.0.inProject" is null
|
105
|
+
And the event "exceptions.0.stacktrace.1.inProject" is true
|
106
|
+
And the event "exceptions.0.stacktrace.2.inProject" is true
|
107
|
+
And the event "exceptions.0.stacktrace.3.inProject" is true
|
108
|
+
|
109
|
+
Examples:
|
110
|
+
| ruby version |
|
111
|
+
| 1.9.3 |
|
112
|
+
| 2.0 |
|
113
|
+
| 2.1 |
|
114
|
+
| 2.2 |
|
115
|
+
| 2.3 |
|
116
|
+
| 2.4 |
|
117
|
+
| 2.5 |
|