The SDK now supports recording and aggregating metrics. A new thread will be started
for aggregation and will flush the pending data to Sentry every 5 seconds.
And then in your application code, collect metrics as follows:
# increment a simple counterSentry::Metrics.increment('button_click')# set a value, unit and tagsSentry::Metrics.increment('time',5,unit: 'second',tags: {browser:' firefox'})# distribution - get statistical aggregates from an array of observationsSentry::Metrics.distribution('page_load',15.0,unit: 'millisecond')# gauge - record statistical aggregates directly on the SDK, more space efficientSentry::Metrics.gauge('page_load',15.0,unit: 'millisecond')# set - get unique counts of elementsSentry::Metrics.set('user_view','jane')# timing - measure duration of code block, defaults to seconds# will also automatically create a `metric.timing` spanSentry::Metrics.timing('how_long'){sleep(1)}# timing - measure duration of code block in other duraton unitsSentry::Metrics.timing('how_long_ms',unit: 'millisecond'){sleep(0.5)}
You can filter some keys or update tags on the fly with the before_emit callback, which will be triggered before a metric is aggregated.
Sentry.initdo |config|
# ...# the 'foo' metric will be filtered and the tags will be updated to add :bar and remove :bazconfig.metrics.before_emit=lambdado |key,tags|
returnnilifkey == 'foo'tags[:bar]=42tags.delete(:baz)trueendend
By default, the SDK will send code locations for unique metrics (defined by type, key and unit) once a day and with every startup/shutdown of your application.
You can turn this off with the following:
The SDK now supports recording and aggregating metrics. A new thread will be started
for aggregation and will flush the pending data to Sentry every 5 seconds.
And then in your application code, collect metrics as follows:
# increment a simple counterSentry::Metrics.increment('button_click')# set a value, unit and tagsSentry::Metrics.increment('time',5,unit: 'second',tags: {browser:' firefox'})# distribution - get statistical aggregates from an array of observationsSentry::Metrics.distribution('page_load',15.0,unit: 'millisecond')# gauge - record statistical aggregates directly on the SDK, more space efficientSentry::Metrics.gauge('page_load',15.0,unit: 'millisecond')# set - get unique counts of elementsSentry::Metrics.set('user_view','jane')# timing - measure duration of code block, defaults to seconds# will also automatically create a `metric.timing` spanSentry::Metrics.timing('how_long'){sleep(1)}# timing - measure duration of code block in other duraton unitsSentry::Metrics.timing('how_long_ms',unit: 'millisecond'){sleep(0.5)}
You can filter some keys or update tags on the fly with the before_emit callback, which will be triggered before a metric is aggregated.
Sentry.initdo |config|
# ...# the 'foo' metric will be filtered and the tags will be updated to add :bar and remove :bazconfig.metrics.before_emit=lambdado |key,tags|
returnnilifkey == 'foo'tags[:bar]=42tags.delete(:baz)trueendend
By default, the SDK will send code locations for unique metrics (defined by type, key and unit) once a day and with every startup/shutdown of your application.
You can turn this off with the following:
Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase.
All Depfu comment commands
@depfu rebase
Rebases against your default branch and redoes this update
@depfu recreate
Recreates this PR, overwriting any edits that you've made to it
@depfu merge
Merges this PR once your tests are passing and conflicts are resolved
@depfu cancel merge
Cancels automatic merging of this PR
@depfu close
Closes this PR and deletes the branch
@depfu reopen
Restores the branch and reopens this PR (if it's closed)
@depfu pause
Ignores all future updates for this dependency and closes this PR
@depfu pause [minor|major]
Ignores all future minor/major updates for this dependency and closes this PR
@depfu resume
Future versions of this dependency will create PRs again (leaves this PR as is)
Here is everything you need to know about this update. Please take a good look at what changed and the test results before merging this pull request.
What changed?
✳️ sentry-rails (5.16.1 → 5.17.1) · Repo · Changelog
Release Notes
5.17.1
5.17.0
Does any of this look wrong? Please let us know.
✳️ sentry-ruby (5.16.1 → 5.17.1) · Repo · Changelog
Release Notes
5.17.0
Does any of this look wrong? Please let us know.
↗️ i18n (indirect, 1.14.1 → 1.14.4) · Repo · Changelog
Release Notes
1.14.4
1.14.3
Does any of this look wrong? Please let us know.
Commits
See the full diff on Github. The new version differs by 28 commits:
Bump to 1.14.4
Merge pull request #687 from ruby-i18n/undo-racc-dep
Remove 3.0 x rails-main action run
Use strictly ruby 3 point 0, not latest Ruby 3
undo strict racc dependency on this branch
Bump to 1.14.3
Merge pull request #683 from fatkodima/add-inspect-to-fallbacks
Merge branch 'master' into add-inspect-to-fallbacks
Merge pull request #684 from ruby-i18n/update-workflows
Clearly specify which versions of Ruby + Rails we support
Add back Ruby 3.0 support
Use actions/checkout@v4, as Node 16 actions have been deprecated
Bump Mocha deps to v2 to fix build issue
Specify racc as a dependency
Update workflows
Implement `Fallbacks#inspect` and `Fallbacks#empty?`
Merge pull request #678 from fatkodima/fix-interpolate-reserved-keywords
Raise when translated entry contains interpolations for reserved keywords and no substitutions provided
Merge pull request #677 from fatkodima/update-mocha
Update `mocha` gem
Merge pull request #669 from kbrock/regex2
Merge pull request #668 from kbrock/regex
Bump to 1.14.2
Merge pull request #671 from ruby-i18n/exists-pass-options
Pass options to along to exists? super calls
condense to TOKENIZER
Speed up INTERPOLATION_SYNTAX
Improve TOKENIZER by 23%
↗️ minitest (indirect, 5.22.2 → 5.22.3) · Repo · Changelog
Commits
See the full diff on Github. The new version differs by 5 commits:
Branching minitest to version 5.22.3
- Minor changes to tests to pass when tests ran with extra flags (eg -p).
+ MASSIVE improvement of minitest's pride plugin output: Frequencies doubled! Sine waves shifted!! Comments improved!!! Colors rotated!!!! (havenwood)
- Improved wording on Minitest::Test#parallelize_me! to clarify it goes INSIDE your test class/describe.
- Support Ruby 3.4's new error message format. (mame)
↗️ nokogiri (indirect, 1.16.2 → 1.16.3) · Repo · Changelog
Commits
See the full diff on Github. The new version differs by 4 commits:
version bump to v1.16.3
dep: update libxml 2.12.6 (branch v1.16.x) (#3151)
fix: Reader#read sets @encoding if it is unset
dep: update libxml2 to v2.12.6
🆕 bigdecimal (added, 3.1.7)
Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with
@depfu rebase
.All Depfu comment commands