Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add runtime version reporting to event and session payloads #560

Merged
merged 7 commits into from
Aug 27, 2019

Conversation

tomlongridge
Copy link
Contributor

@tomlongridge tomlongridge commented Aug 15, 2019

Goal

Augments reporting with the version of Ruby and integrated frameworks in use when an event occurred to aid diagnostics of version-specific bugs.

Design

Added data to device.runtimeVersions.ruby as per other notifiers.

Changeset

Changed

  • configuration.rb - adds Ruby/JRuby version to new property hash runtime_version
  • report.rb - adds the collected versions into the payload
  • session_tracker.rb - adds the collected versions into the payload
  • Updated Que, Rack, Rails, Rake, Resque and Sidekiq integrations to add version

Tests

  • Augmented unit tests where appropriate
  • Manually verified versions added to payload using example projects

Review

For the submitter, initial self-review:

  • Commented on code changes inline explain the reasoning behind the approach
  • Reviewed the test cases added for completeness and possible points for discussion
  • A changelog entry was added for the goal of this pull request
  • Check the scope of the changeset - is everything in the diff required for the pull request?
  • This pull request is ready for:
    • Initial review of the intended approach, not yet feature complete
    • Structural review of the classes, functions, and properties modified
    • Final review

For the pull request reviewer(s), this changeset has been reviewed for:

  • Consistency across platforms for structures or concepts added or modified
  • Consistency between the changeset and the goal stated above
  • Internal consistency with the rest of the library - is there any overlap between existing interfaces and any which have been added?
  • Usage friction - is the proposed change in usage cumbersome or complicated?
  • Performance and complexity - are there any cases of unexpected O(n^3) when iterating, recursing, flat mapping, etc?
  • Concurrency concerns - if components are accessed asynchronously, what issues will arise
  • Thoroughness of added tests and any missing edge cases
  • Idiomatic use of the language

@tomlongridge tomlongridge marked this pull request as ready for review August 15, 2019 12:55
@tobyhs
Copy link
Contributor

tobyhs commented Aug 15, 2019

Should this target the next branch instead of master?

CHANGELOG.md Outdated Show resolved Hide resolved
lib/bugsnag/integrations/que.rb Outdated Show resolved Hide resolved
spec/configuration_spec.rb Outdated Show resolved Hide resolved
spec/integrations/rack_spec.rb Outdated Show resolved Hide resolved
spec/integrations/rake_spec.rb Outdated Show resolved Hide resolved
spec/report_spec.rb Outdated Show resolved Hide resolved
@tomlongridge tomlongridge changed the base branch from master to next August 16, 2019 08:53
lib/bugsnag/middleware/rails3_request.rb Show resolved Hide resolved
lib/bugsnag/report.rb Outdated Show resolved Hide resolved
spec/configuration_spec.rb Outdated Show resolved Hide resolved
spec/integrations/rake_spec.rb Outdated Show resolved Hide resolved
spec/integrations/sidekiq_spec.rb Outdated Show resolved Hide resolved
lib/bugsnag/report.rb Outdated Show resolved Hide resolved
spec/configuration_spec.rb Outdated Show resolved Hide resolved
Copy link
Contributor

@tobyhs tobyhs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

a few minor test code related comments, otherwise lgtm

spec/integrations/rake_spec.rb Outdated Show resolved Hide resolved
spec/integrations/sidekiq_spec.rb Outdated Show resolved Hide resolved
spec/integrations/sidekiq_spec.rb Outdated Show resolved Hide resolved
@tomlongridge tomlongridge merged commit 49a046c into next Aug 27, 2019
@tomlongridge tomlongridge deleted the tom/add_runtime_versions branch August 27, 2019 10:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants