DEV Community

Cover image for Node.js Observability Tool: Enhance Visibility Without Performance Impact
Rishi Kumar
Rishi Kumar

Posted on • Edited on

1

Node.js Observability Tool: Enhance Visibility Without Performance Impact

Introduction

Load testing is a crucial process for understanding how your application performs under various conditions. In this article, we examine the effectiveness of Errsole.
We focus on key performance metrics—average response time, the 90th percentile (p90), and the 95th percentile (p95) response times—comparing load testing results with and without Errsole to assess its impact.

Load Testing Scenario
For this analysis, we conducted a load test using K6, a popular open-source load testing tool. The load testing scenario consisted of the following configuration:

  • 500 virtual users (VUs) for 1 minute
  • 1000 VUs for 3 minutes
  • 500 VUs for 1 minute
  • Sleep time of 3 seconds between iterations

We monitored the application's response times and behavior under these conditions with and without Errsole.

Errsole: Errsole is an error logger and remote debugger for Node.js apps. With Errsole, developers can view the root cause of every error, reproduce any error with just a click, and debug the server code without affecting the live app and its users.

Load Testing Environment
In our load-testing scenario, we used the following technologies:

  • HTTP method: POST API
  • Database: SQLite
  • Nodejs framework: Express
  • Server: AWS EC2

Load Testing Results

Without Errsole:

  • Average response time: 2.53 seconds
  • 90th percentile (p90) response time: 4.42 seconds
  • 95th percentile (p95) response time: 4.64 seconds
  • Iterations completed: Approximately 35,000

With Errsole:

  • Average response time: 2.56 seconds
  • 90th percentile (p90) response time: 4.47 seconds
  • 95th percentile (p95) response time: 4.65 seconds
  • Iterations completed: Approximately 35,000

Image description

Analysis

The results of the load testing indicate that, in this specific scenario, the use of Errsole has minimal to no effect on the application's performance. When comparing average response times, there is only a marginal difference between the runs. The 90th and 95th percentiles also exhibit similar patterns.

Furthermore, the number of iterations completed in both test runs is approximately 35,000, with virtually no difference between them.

Image of AssemblyAI tool

Challenge Submission: SpeechCraft - AI-Powered Speech Analysis for Better Communication

SpeechCraft is an advanced real-time speech analytics platform that transforms spoken words into actionable insights. Using cutting-edge AI technology from AssemblyAI, it provides instant transcription while analyzing multiple dimensions of speech performance.

Read full post

Top comments (0)

Heroku

This site is powered by Heroku

Heroku was created by developers, for developers. Get started today and find out why Heroku has been the platform of choice for brands like DEV for over a decade.

Sign Up

👋 Kindness is contagious

Engage with a sea of insights in this enlightening article, highly esteemed within the encouraging DEV Community. Programmers of every skill level are invited to participate and enrich our shared knowledge.

A simple "thank you" can uplift someone's spirits. Express your appreciation in the comments section!

On DEV, sharing knowledge smooths our journey and strengthens our community bonds. Found this useful? A brief thank you to the author can mean a lot.

Okay