- ref: Emit transaction instead of culprit (#458)
- fix: correctly detect errors from vm (#457)
- ref: use console.warn for alerts and store them in Set (#455)
- ci: Add node 9 and 10 to travis builds (#456)
- fix: Use shallow-copy instead of deep-copy when working with context to prevent too large memory usage and slowing down request resonses [See #452]
- feat: log non-standard ports in breadcrumbs (#440)
- feat: add flag for unhandled promise rejections (#446)
- fix: Remove a redundant try-catch block (#445)
- fix: Do not override context when capturing non-error exceptions (#444)
- fix: Update stack-trace to handle spaces in paths (#437)
- docs: Remove private DSNs from the docs (#447)
- docs: Update Usage docs to include Domains in Promise support (#438)
- fix: Dont throw exception when called captureException without config (#431)
- fix: Preserve context in for rejected promises (#428)
- ref: Log promise rejection reason alongside eventid (#434)
- ref: Use named function for middlewares (#429)
- fix: Handle scoped packages structure in node-lsmod (#426)
- fix: Report fatal errors as indeed "fatal" (#425)
- ref: Use a named function for the middleware over an anonymous (#424)
- feat: Sensible non-Error exception serializer (#416)
- fix: workaround for express.js 'host' deprecation message (#413)
- fix: attach remaining non-enumerables to req [See #387]
- feat: Allow to configure stacktrace for captureMessage calls [See #388]
- fix: access 'process' through global variable [See #399]
- ref: Enable http instrumentation by default [See #401]
- ref: Warn user when using capture/wrap without installing Raven [See #402]
- ci: Integrate Zeus and release with the bot [See #403]
- ref: Delete empty properties before sending event to the server [See #407]
- feat: Support Boom library statusCode [See #408]
- Remove unintentional memwatch-next dependency
- Fixed all Node v8 tests to ensure everything is working correctly [See #366]
- Raven now uses Prettier to format it's code [See #364]
- Prevent Raven from queueing too many requests in case server is down [See #132]
- Enable keep-alive on socket connection and limit number of sockets [See #284]
- Pull Error's name from constructor, not Error itself to always get correct error type [See #372]
- Updated Errors serialization to store all additional properties and allow for attaching other object instances directly to it [See #376]
- Preserve some non-enumerable properties from request [See #379]
- Fall back to
NODE_ENV
for Sentry Environment [See #384]
- Remove errant large file that accidentally got published in 2.1.1. [See #361]
- Fix issue where HTTP request was duplicated as
req
(and dropped by Sentry server). [See #340]
- Truncate long lines in surrounding source to avoid sending large amounts of minified code [See #329]
- Refactor automatic breadcrumb instrumentation of modules to accommodate compilation tools [See #322]
- Testing for Node 8 [See #328]
- Fix issue with sending empty request details when no request is present [See #324]
- Fix memory explosion when parsing stack for large files [See #320]
- Properly surface errors to preserve process exit conditions [See #308, #257]
- Node processes with raven will now exit in exactly the same situations as if raven were not present
- Previously, there were failure scenarios where raven would erroneously cause the process to continue to run when it should have shut down
- Be aware when upgrading: it is possible that with raven-node 2.0, your node process will shut down from exceptions where it previously did not
- This also includes changes to more reliably finish capturing the exception that induces process shutdown
- Node processes with raven will now exit in exactly the same situations as if raven were not present
- Don't include
domain
property as extra property onError
objects [See #309] - Parse
req
object from context or kwargs [See #310]- For Express middleware users in particular, raven will now automatically report request details and user context in situations where it previously did not
- Tidied up
.npmignore
to exclude unnecessary files in npm package [See #311]- Install size reduced from 484kB to 84kB, which should save npm ~100GB/month in bandwidth
- Removed various deprecated methods [See #313]
- Removed postgres autoBreadcrumbs to avoid webpack dependency issue [See #315, #254]
- postgres (and more) autoBreadcrumbs will return in version 2.1
- Fix memory leak in
consoleAlert
(and thus, if not disabled, incaptureException
) [See #300]
- Add sampleRate config option [See #292]
- Fix memory leak in http autoBreadcrumb instrumentation [See #296]
- Use
util.format
to get message string inconsole
instrumentation [See #289]
- Add
parseUser
option to control user parsing behavior [See #274] - Make http instrumentation use
req.emit
instead of response event handler [See #276] - Add alert about raven-node vs raven-js when it seems like a browser env [See #277]
- Send kwargs to
shouldSendCallback
[See #251] - Capture breadcrumbs from global context [See #267]
- Make stack parsing native-frame-check work on Windows paths [See #268]
- Bind req/res to context domain in express requestHandler [See #269]
- Fix postgres/pg name mismatch [See #270]
- Fix middleware backwards compatibility [See #246]
- Added support for (automatic) breadcrumbs [See #240]
Raven.captureBreadcrumb
manual methodautoBreadcrumbs
config field to automatically capture breadcrumbs for:- console logs
- http requests
- postgres queries
- Deprecate
captureQuery
[See #239]
Raven.config(...)
instead ofnew raven.Client(...)
Raven.install()
instead ofclient.patchGlobal()
- The callback to
Raven.captureException
now fires after transmission [See #217] - Added
captureUnhandledRejections
option for Promise rejections - Introduced contexts and associated
set/merge/getContext
methods [See #207] - Added
shouldSendCallback
config option andset*Callback
methods [See #220] - Added
intercept()
method [See #225] - Backwards compatibility was mostly maintained, but lots of stuff was deprecated
- We'll print console messages if you're doing anything the old way
- We'll also print console messages in certain situations where behavior might be surprising, like if no DSN is configured
- You can disable these alerts with
Raven.disableConsoleAlerts();
- Replace
node-uuid
dependency withuuid
[See #236]
- Add column number to stack frames [See #235]
- Check that
require.main.filename
is defined [See #233]
- Fix bug where
environment
option was not actually being transmitted to Sentry [See #185]
- Add
environment
config option andsetRelease
method [See #179] - No longer passes
process.env
values [See #181] - Connect/Express middleware now attempts to attach
req.user
as User interface [See #177] - Use json-stringify-safe to prevent circular refs [See #182]
captureError
renamed tocaptureException
to match raven-js (alias exists for backwards compat)parsers.parseError
now coerces Error type to string. [See #155]
- Now supports global context for extra data, tags, user [See #141]
- Added
setUserContext
,setExtraContext
,setTagsContext
- Always coerce req.body to string. [See 2061d4efbf269c5e2096f2b7b55f5af2249c4aa7]
- Allow passing options to HTTP transports. [See #123]
- Fixed tests for node 4.0/5.0
- Don't send a body for GET/HEAD requests unless one has been passed. [See 0476a6e9818135b8b258b0be0724c369fe30e3c7]
- Fixed a missing
domain
import in the Express/Connect middleware [See #120]
- Drop support for node 0.6
- Remove
SENTRY_SITE
environment variable usage - Fixed
express deprecated req.host: Use req.hostname instead
warning [See #101] - Allow passing custom
ca
options for an https request [See #110 #108] - Use newer API endpoint [See #105]
- Added support for Sentry's new Releases feature
- Update Express/Connect middleware to support domains [See #116]
- When calling
captureError
without an Error, generate a fakeError
object to pull stacktrace from. [See #87] - Prevent
patchGlobal
from causing recursion [See #84] - Fixed issues arond capturing tags.
- Removed deprecated
site
parameter. - Allow explicitly declaring the
culprit
[See #107] - Publicly export out the various parsers [See #111]
- Support for iojs and node 0.12
- Added
dataCallback
option to Client configuration. See: https://github.com/getsentry/raven-node#pre-processing-data
- Fixed package.json to not install junk from
optionalDependencies
. TILoptionalDependencies
are still installed. [See #89]
- Moved from mattrobenolt/raven-node into getsentry/raven-node
- Bumped to sentry protocol version 5
- Capture all properties off of an Error object and send them along as as
extra
[See #72] - Better feature detection support for capturing request parameters. Adds support for use in Koa. [See #78 #79]
- Fix another issue that was breaking when running Raven from the REPL [See #66]
- Add additional meta data on the error callbacks [See #67 #73]
- Allow overriding the logger name for an individual event
- Update lsmod to not break when running Raven from the REPL
- Added a
raven
bin so you can runraven test [DSN]
- Use lsmod for getting the list of installed modules [See #55]
- Parse cookies on the http request always [See #56]
- Use
stack-trace
to assist in capturing stacks. This should fix compat with the New Relic plugin [See #57]
- Updated sentry protocol to version 4 (Requires Sentry 6.0+ now)
- Module names now include the full path
- Attach client IP address to env object
- Include module and function name in stacktrace culprit
- Only record exceptions for 500 status codes from Connect middleware
- Fix DSN parser when using Sentry at a non-root URL, thanks @rcoup [See #44]
- Bump raw-stacktrace version
- Fix compatibilities with CoffeeScript [Fixes #47] [Fixes #50]
- Doesnt chose on circular references
- Add support for third party transports, thanks @crankycoder
- Remove NODE_ENV entirely, fixes many issues since people have different opinions on wtf this means
- Several fixes in collecting a better stack trace, thanks @azylman
- Pass exception through to the patchGlobal callback, thanks @ktmud [See #28]
- Official 0.10 support!
- Other misc things. https://github.com/mattrobenolt/raven-node/compare/v0.4.7...v0.5.0
- Actually disable when NODE_ENV does not equal 'production' [Fixes #25]
- Added
platform=node
to payload for Sentry 5.1
- Resolve
node_modules
path properly [Fixes #23]
- Prevent 'error' event from bubbling up due to no listeners [See #22]
- Augment 'error' event emitter with an actual Error object [See #22]
- Allow a callback to be given to
patchGlobal()
[Fixes #19] - Removed old
patch_global()
alias
- Added test coverage to
patchGlobal()
- Quit using my own deprecated
get_ident()
method insidepatchGlobal
- Send string errors as a normal message to prevent Sentry server from crying [Fixes #18]
- patchGlobal() was actually broken. :( Thanks @ligthyear [Fixes #17]
- Silence and disable Raven/Sentry when using a non-existent or falsey DSN value
- Separate transports out into their own module for portability
- Added UDP transport [Fixes #10]
- Ignore sub-transports, such as gevent+https, raven sees it as just https
- Added parsing DSNs with non-standard port. [Fixes #4]
- Added BSD license
- Prevent any potentially odd stack traces from causing Raven to crash. [Fixes #2]
- raven.Client now emits
logged
anderror
events.
- Fixed connect/express middleware, thanks Almad!
- Renamed all methods to follow
client.capture*()
pattern. (Sorry if you were already using it!) - All
npm
installed modules are shoved into Sentry for debugging - Toggle actual sending based on
NODE_ENV
variable. Check README for information. - Fixes for more types of stack traces.
- Added
client.captureQuery()
- Support for
SENTRY_DSN
,SENTRY_NAME
, andSENTRY_SITE
enviornment variables - More test coverage
- Initial release