-
Why We Only Support JavaScript
We are unlikely to add additional language support to TrackJS. And it's not just because of our name! Read more »
-
The Dangers of Using VC Funded Companies
Learn from our mistakes: be careful when using VC funded companies as vendors or important parts of your stack. Read more »
-
Profitability is Important
Unprofitable companies, like Flexport and Splunk, are a risk for their customers because they can radically change or close down entirely. What about TrackJS? Read more »
-
Saved Filter Notifications
Alerts and notifications have been part of TrackJS since the very beginning. Our standard notification options reflect our desire to keep things simple. Ov... Read more »
-
Avoiding Ad Blockers with Forwarding Domains
Large tech companies are monetizing and exploiting customer data in increasingly unpalatable ways. It’s no surprise that users are fighting back. It’s estim... Read more »
-
Parsing Query Strings in .NET Core
We recently needed to parse and modify some query strings while building Request Metrics. Query string parsing has never been pleasant in .NET, has it im... Read more »
-
Faster Elasticsearch Query Performance
We store all of our JavaScript error data in a large Elasticsearch cluster. This lets our customers slice and dice their error data in realtime, and perform... Read more »
-
Debugging: Slow Network Requests and "Cannot read property 'id' of undefined"
We understand the value of JavaScript error monitoring here at TrackJS. Consequently, we run TrackJS on all of our own web properties to log our JS errors. W... Read more »
-
Building TrackJS Filters: React without the SPA
We recently released a significant update to the way users filter and explore their error data. I want to discuss how we built it, the tools we used, and how... Read more »
-
TrackJS Filters: Find Important Errors Before Your Users Do
Dealing with noise is the biggest problem in client-side error monitoring. Read more »
-
The Event Stream Debacle
Unless you were hiding under a rock, you probably heard about the “event-stream situation” on NPM this week. TLDR: the original maintainer of the event-strea... Read more »
-
Application Versions
These days it’s common to release new versions of a web application daily, or even multiple times a day. At any given time there could be multiple versions ... Read more »
-
Moving to Mailgun
At TrackJS we pride ourselves on our pragmatic approach to software development. We’re cautious of making changes - every change must be weighed not only by... Read more »
-
Adding Value
I recently appeared on Dave Rael’s Developer on Fire podcast. The show focuses less on technical minutiae and more on the developer as a person, and their a... Read more »
-
The Siren Song of Component Libraries
Large web applications are almost always built by multiple teams. When the scope or scale of an application grows, there’s just no way a single team can be ... Read more »
-
Impermanent UIs: the Fleeting Frontend
“The only thing constant is change.” A silly platitude, but if you’re a frontend developer you can empathize. If it’s not JavaScript frameworks that are ch... Read more »
-
Backwards Compatibility
I built my first website in 1995. It was a simple affair consisting of markup I wrote with notepad.exe. Deployment involved FTPing the files to GeoCities. ... Read more »
-
Error Status
The ability to set the status of an error is our most commonly requested feature. Customers want to mark errors as fixed, or one team member wants to let th... Read more »
-
Search Improvements
One of our biggest challenges is helping customers make sense of their JavaScript errors. Web applications produce a staggering number of errors, but not al... Read more »
-
New Feature: Error Groupings
It’s common to have JavaScript error messages that are almost identical, but differ by a url segment or identifier. These can be noisy, creating dozens (or h... Read more »
-
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 ... Read more »
-
Tracking Unhandled Promise Rejections
Ever since jQuery introduced deferreds, developers have used promises to manage asynchronous control flow. (I know, I know, promises pre-date jQuery, but tha... Read more »
-
JavaScript Debugging with Sourcemaps
With the proliferation of JavaScript transpilers, sourcemaps have become an integral part of the front-end development. If you’re using Angular 2, React, Om... Read more »
-
Introducing Trends
One of the hardest parts of client side error tracking is giving the customer meaningful signal from a sea of noise. The internet is a hostile place, and er... Read more »
-
Hiding Noisy JavaScript Errors
One thing we’re constantly striving to maintain at TrackJS is a high signal-to-noise ratio. Logs filled with meaningless errors hide significant problems fro... Read more »