What's new in TrackJS?
We’ve been busy building new features and wanted to take a few minutes to highlight some of them. Often we’ll soft launch a feature without much fanfare to make sure it’s working as intended, so sometimes it’s not obvious when new functionality appears. So here’s some of the cool new things we’ve added in the last two months!
Totally Revamped Notifications
We recently released some major improvements to our notifications offering. The first big change is the addition of unlimited notification channels. You can have multiple Slack and Hipchat rooms, as well as unlimited email addresses. All settings are configurable by application and notification type, so you can completely customize which channels receive which alerts.
Our original notification feature had the concept of a “New Error” alert. That is, whenever we saw an error that hadn’t been seen before, we’d alert. The problem was that many site visitors have bad plugins or malware that cause unusual errors. A common pattern was to see tens of errors all caused by a single problem user. You now have the option of only alerting if more than one user is affected, pruning out much of that noise.
Finally, we’ve added two new types of notification:
- Trending Errors - Whenever an error moves up more than 10 positions, we’ll notify all subscribed channels. You can also customize whether you only want notifications if more than one user is affected.
- Error Rate Increases - If your error rate spikes above historically normal levels, we’ll notify all subscribed channels.
We take a data driven approach to feature priority when possible. Our data was telling us lots of people were using the search, even though it hadn’t been substantially changed in years. It was very bare bones. A few weeks ago we released a new and improved search screen.
Relevance is improved, and we’re exposing more data than before. We’re surfacing top data groupings, like most users affected and top messages. There’s a histogram too. Finally, for advanced users, you can use a subset of the Lucene query string syntax. We support the boolean logic operators so you can make more advanced queries. We’re always experimenting with the results, so if you’re having trouble searching for something, let us know!
Ignore Rule Improvements
Ignoring noisy errors is one of our most popular features, so we added a few new tricks to make things even easier and effective.
- Add a Description - You can now create ignore rules with descriptions. Some of the ignore patterns can be non-obvious, so this is a great way for other team members to understand why the rule was created.
- Pause a rule - Sometimes it’s nice to pause a rule to see if the problem is still occurring, and gather details if that’s the case.
- Ignore by Stack Trace and Operating System - You can now ignore errors by the contents of their stack trace, or by the operating system they were thrown from.
Global Filter Additions
Customers used to ask us, “How can I see all users affected by a specific error message?” Or “Which browsers did this specific error occur in?” Until recently answering those questions involved manual paging through the site. We’ve now added the ability to filter the entire UI by user-selected properties.
As an example, take that second scenario: “For a specific message, see all browsers the error occurred in.”
That specific message will be added to the global filter. The entire UI will now be segmented by this additional property. Here we can see only the browser groupings for the specific message we chose:
The site-wide filtering even works for your own custom key/value metadata pairs. For example, one of the custom data points we monitor internally is which physical web server was responsible for the error. Here you can see I’m looking at all urls for a specific machine:
Dashboard and Daily Summary Updates
We’ve had the concept of “trending errors” for awhile now, but we weren’t doing a good job of putting it in front of the customer. We were also hiding information about which users were experiencing the most errors. We felt these were two key pieces of data and they should be front and center.
The same data is now going out in the nightly summary emails as well.
Multiple Account Owners
The last feature is minor but makes a big difference for some teams. Within a TrackJS account there is the concept of an account owner. This user can do administrative activities like change billing details and manage users. Until this past week there could only be one owner per account. We now support as many owners as you have users (if that’s what you wish to do!). All account owners will receive copies of the TrackJS invoices as well.