Operations | Monitoring | ITSM | DevOps | Cloud

Monitoring Your Node.js App Health on Fly.io

The Node.js service has just been containerized and deployed with a single fly deploy command across continents. Everything seems to be alright, but then a week later, a user messages you saying the app is slow. You run the fly logs command and scroll through some logs, and find nothing out of the ordinary. The Fly.io dashboard says the app is running and healthy, but something behind the scenes is slowing down the app, and you have no idea what. You don’t even know where to start.

Signal-Driven Error Monitoring: Detecting and Debugging Reactive Failures in Angular

Angular's Signal-based reactivity model represents one of the biggest paradigm shifts the framework has seen since Ivy. By replacing the asynchronous push-pull model of RxJS with synchronous, localized updates, Signals make state management both simpler and faster. But this new simplicity hides a subtle danger: when something breaks inside your reactive graph, it often does so silently. A computed value might stop updating. An effect might fire indefinitely.

Why Monitoring Matters for Modern Hosting Platforms

With all the discussion in the dev community lately about changes made at Heroku, we wanted to use this moment to talk about PaaS (Platform as a Service) providers and how AppSignal can be a vital tool to ensure you're using your app's hosts for everything from optimal performance to lower usage bills.

Stop Sifting Logs: Find Production Errors in Seconds with `severity=error`

Want your log queries to be more precise? Is your vibe code flooding you with logs and need a helping hand to make sense of it all? Good news! We've upgraded our log query language to be more powerful, flexible, and intuitive, letting you focus on finding answers fast rather than endlessly scrolling through your logs. And that's not all: We've revamped our logging interface, making it easier than ever to manage logs, customize views, and leverage log attributes.

Monitoring Node.js Express Application Performance with AppSignal

As your application scales to serve hundreds, thousands, or even millions of users, understanding its performance becomes essential. Performance monitoring helps you make informed decisions based on data instead of guesswork or user complaints. Imagine users reporting that your app feels"slow". Without proper instrumentation and monitoring, you're left troubleshooting blindly.

The Performance Revolution in JavaScript Tooling

Over the last couple of years, we've witnessed a remarkable shift in the JavaScript ecosystem, as many popular developer tools have been rewritten in systems programming languages like Rust, Go, and Zig. This transition has delivered dramatic performance improvements and other innovations that are reshaping how developers build JavaScript-backed applications.

Debugging in Elixir with Observer

Erlang's Observer is often discussed in passing and regarded as a curiosity during Elixir courses. However, Observer provides many powerful tools for monitoring and debugging your application, both in development and production. Together, we will learn how to access the Observer GUI and debug a project that leaks memory, both locally and through a remote node. We will set up process tracing and track garbage collections to find the offending code in our sample project. Let's get started!

Find and Fix Fastify Slowdowns with AppSignal for Node.js

In part one of this series, we set up basic performance monitoring for our Fastify application using AppSignal and explored key performance indicators. Now that we have our monitoring foundation in place, it's time to leverage these insights to actively improve application performance. You'll learn how to detect performance regressions, find optimization opportunities, and implement custom instrumentation with OpenTelemetry.

Monitor the Performance of Your Ecto for Elixir App with AppSignal

In part one of this series, we learned how to implement batch updates and advanced inserts in Ecto to dramatically improve database performance. But implementing these optimizations is only the first step. Ensuring they continue to work effectively in production requires professional monitoring and observability. This guide will show you how to use AppSignal for Elixir to monitor your Ecto application's performance when dealing with batch data operations.

Optimizing Your Cart with Signals: Smarter State, Better Debugging

In the first two parts of this series, we introduced Angular Signals and built a reactive shopping cart. Our CartService already supports core operations like adding, removing, and clearing items, as well as computing total price and item count using computed(). All of this was done without touching RxJS, subscriptions, or change detection hacks. But a real-world cart does more than tally up numbers.