Building a Standard Interface for Feature Flags with Node.js

By Vince Gandolfo

Feature flags are an essential part of many modern development processes. They help us decouple deployment from release and gain more control over user access, and they also allow us to toggle features on and off. However, just enabling feature flags is not enough. To have more predictable releases, it’s essential to create a standard process for how flags are used.

At LogDNA, feature flags were part of our software development life cycle (SDLC), but weren’t organized in a standard way, which led to confusion across the organization. For example, in our web application, there are multiple sources where feature flags originate. From there, they were combined into a single location in an unpredictable fashion. This made it hard to know what took precedence and what overrides existed.

On the backend, feature flags were tacked onto account records from the database or even stored in environment variables. Storing flags in the database introduces complexity and risk — the exact thing you’re trying to avoidwhen flags need updating because you must manually modify a production database or use a tool to make updates in bulk. Additionally, flags that are left lying around after they’re no longer needed can cause confusion.

Adopting LaunchDarkly

To solve these pain points, we adopted LaunchDarkly. Now, we have a central home where all feature flags live and a standard process for rolling out new features. Not only can we pick out specific accounts to toggle a feature for, we can also target accounts based on specific properties.

For example, we support customers across a dozen IBM environments as well as our direct customers who are hosted on LogDNA infrastructure. There are cases where we want to toggle a feature only for IBM accounts or only for LogDNA accounts. LaunchDarkly even offers percentage rollouts, where only a certain percent of accounts see a new feature. This facilitates A/B testing and can help with reducing impact if there’s an issue with a new feature. With LaunchDarkly, features can be disabled for accounts without requiring a rollback, which can be helpful during incidents. Alternatively, if a feature rolls out smoothly to a percentage of accounts, we can easily bump it up so that all accounts see the feature.

Adopting LaunchDarkly has helped us move faster, experiment more and mitigate risk. However, we wanted to push its capabilities even further by creating a standardized interface for interacting with the service.

The Node.js Client

Since our codebase is written in Node.js, we decided to build a wrapper around LaunchDarkly’s node-server-sdk. We wanted it to be able to read flags from LaunchDarkly, enforce some validation and format the user data before it’s sent to LaunchDarkly to request a feature flag.

The initial implementation of the client worked well, but we ended up running into some issues with it. During testing, we found that we needed to add a lot of code to capture the requests LaunchDarkly’s sdk client makes and to mock the results it receives. This was just too much effort and required vendor-specific logic just to get testing to work. Also, this would need to be duplicated in every project we wanted to add our client to. We had to go back to the drawing board and design the client in a way to make testing simple.

In the new version of the client, we wanted to abstract away the vendor-specific logic and remove the need to monkey-patch the client’s functionality. The client now has a couple of new storage backend options, which determine from where to read feature flags. The “memory” backend maintains a local store, just a plain old javascript object, to add and read flags from, while the “dummy” backend simply returns whatever default flag value you pass to it. Both of these new backend options are great for testing and make it a lot easier to add the client to any of our repositories. Lastly, the “launchdarkly” backend reads flags directly from LaunchDarkly, just like the previous version, and is meant mostly for use in production.

The feature flags client can now be dropped in anywhere in our codebase. It requires only a small amount of code to be added, and testing with it is relatively simple.

Conclusion

For the LogDNA engineering team, adopting LaunchDarkly was the first step in rolling out a robust feature flagging process. Standardizing our interface with the service with a custom-built Node.js client has taken this process to the next level, and now we’re deploying with more confidence than ever before.

Next news
You're viewing our latest news item.
Previous news
You're viewing our oldest news item.
How AI-Driven Observability Is Transforming SRE: Insights from Mezmo CEO Tucker Callaway
2026: The End of the Dashboard as We Know It?
The Importance of Context Engineering in the AI Era
Mezmo: Named One of The Top 50 Software Companies of 2025
Why Synthetic Tracing Delivers Better Data, Not Just More Data
Why Agentic SREs Require Active Telemetry in Kubernetes
5 Startups Defining AI SRE
Mezmo Launches AI SRE Agent for Root Cause Analysis
AI-Driven Observability with Tucker Callaway | The Software With Podcast
Mezmo CEO Tucker Callaway on Active Telemetry, Context Engineering, and the Fastest AI SRE for Kubernetes | 10KMedia Podcast
Mezmo Launches Fast & Precise AI SRE for Kubernetes Ahead of KubeCon
Mezmo Wins 2025 Digital Innovator Award from Intellyx
Mezmo Announces Cost Optimization Workflow to Reduce Observability Spend for Datadog Users
Mezmo Disrupts Market by Reducing Observability Cost Structure by 90%
Building trust in telemetry data [Q&A]
2025 Observability Predictions - Part 1
Mezmo Simplifies Management of Telemetry Data to Reduce Observability Costs
At KubeCon/CloudNativeCon 2024, AI hype gives way to real application concerns
Mezmo Unveils Mezmo Flow for Guided Data Onboarding and One-Click Log Volume Optimization
Mezmo Flow Released
What’s new from KubeCon + Cloud Native Con North America 2024
Mezmo Unveils Mezmo Flow for Guided Data Onboarding and One-Click Log Volume Optimization - Yahoo Finance
Real-time Analytics News for the Week Ending November 16
Analytics and Data Science News for the Week of November 15; Updates from Alteryx, DataRobot, ThoughtSpot & More
Modern Observability Through Application Development
Mezmo Unveils Mezmo Flow for Guided Data Onboarding and One-Click Log Volume Optimization
Mezmo CEO Tucker Callaway Shares Observability Insights and KubeCon + CloudNativeCon 2024 Plans
Telemetry Data: The Puzzle Pieces of Observability
Q&A with Tucker Callaway, CEO of Mezmo
Mezmo Makes Inc. 5000’s List of Fastest Growing Companies in the Nation for Third Consecutive Year
7 Ways Telemetry Pipelines Unlock Data Confidence
The 2024 SD Times 100: 'Best in Show' in Software Development
Mezmo Hires Former StackHawk, New Relic Leader as Vice President of Product
Inside the VP of Sales' Journey: Financial Software to AI Startups - Craig McAndrews Spills it all!
Mezmo: Adding In-Stream Alert Capabilities to Telemetry Pipeline Platform
An IT Manager's (Re)View of the RSA Conference
Real-time Analytics News for the Week Ending May 11
Mezmo Adds Industry-First Stateful Processing in Telemetry Pipelines
SalesTechStar Interview with Craig McAndrews, Vice President of Sales at Mezmo
Mezmo Ranks No. 82 on Inc. Magazine’s List of the Pacific Region’s Fastest-Growing Private Companies
How To Break Down Silos To Get More Benefit From Your Data
Mezmo Bolsters Sales Leadership With New Hires From Chef and Apptio
How Metric Normalization Enhances Data Observability
KubeCon 2023: Telemetry and Data Management
Telemetry Data’s Role in Cybersecurity – Tucker Callaway – Enterprise Security Weekly
Breaking data silos between observability and security empowers organizations
2024 Application Performance Management Predictions - Part 3: Observability
Data Management News for the Week of November 10; Updates from AWS, Monte Carlo, Satori & More
Real-time Analytics News for the Week Ending November 11
At KubeCon NA 2023, finding cloud independence on the edges of Kubernetes
Mezmo Introduces Data Profiling and Responsive Telemetry Pipelines for Kubernetes
Data Profiling & Responsive Telemetry Pipelines For Kubernetes | Mezmo
KubeCon: GKE Enterprise gets release date, Mezmo adds data profiling feature, and more
Data Profiling & Responsive Telemetry Pipelines For Kubernetes | Mezmo
Data Profiling & Responsive Telemetry Pipelines For Kubernetes | Mezmo
Optimize Your Observability Spending in 5 Steps
Take Control of Your Kubernetes Telemetry Data
The Role of Observability Engineers in Managing Complex IT Systems
Mezmo Launches Welcome Pipeline to Unlock Kubernetes Insights Faster
Mezmo Ranks #1,386 on Inc. 5000’s List of Fastest Growing Companies in the Nation
Mezmo Simplifies Management of DevOps Telemetry Data
Mezmo Empowers Enterprises to Extract Business Insights from Telemetry Data
How DevOps Teams Can Manage Telemetry Data Complexity
Mezmo Wins the 2023 Digital Innovator Award from Intellyx
Tucker Callaway, Mezmo | RSA Conference 2023
Mezmo: Cloud Native Telemetry Pipeline
Mezmo Adds Free Community Plan for Managing Observability Data
Mezmo Announces Free Access to Telemetry Pipeline
Tame Telemetry Data With Mezmo Observability Pipeline
Mezmo Named 2023 Log Analytics Solution of the Year In Data Breakthrough Awards
Down the Observability Pipeline with Mezmo
How Developers, SRE Teams, and Security Engineers Use Telemetry Data
Data Pipeline Feeds IT's Observability Beast
How to Maximize Telemetry Data Value With Observability Pipelines
Mezmo Ranks #53 on Inc. Magazine’s List of Fastest-Growing Companies in the Pacific Region
Mezmo 2023 Predictions: More Organizations Adopt OpenTelemetry
Understanding Observability Data's Impact Across an Organization
Solutions Review Names 6 Data Observability Vendors to Watch, 2023
DevSecOps Accelerates Incident Detection, Response Efforts
2023 Application Performance Management Predictions - Part 3
Mezmo-Harris Poll Report Explores the Impact of Observability Data
Mezmo Wins Intellyx 2022 Digital Innovator Award
Mezmo Ranked No. 164 on Deloitte Technology Fast 500
Mezmo Wins 2022 Reworked IMPACT Award
Mezmo Unveils Observability Pipeline to Enhance the Value of Data
Launching a podcast? Try these 14 tips for greater exposure
DevSecOps Expedites Incident Detection and Response Time
Mezmo Named A Fastest Growing Company On Inc. 5000
DevSecOps Adoption Lags Despite Incident Detection Impact
Implementing DevSecOps Means Fewer Incidents
DevSecOps Reduces Security Incidents Research Finds
What is challenging successful DevSecOps adoption?
Fewer than one-quarter of organizations have a DevSecOps strategy
DevSecOps delivers significant results but take up remains low
DevSecOps adoption is low but packing a punch in user organizations
DevSecOps Drives Results, ESG Research Finds
101 Most Innovative Information Systems Startups
Protocol Enterprise Newsletter: Enterprise Moves
Headcount: Firings, Hirings, and Retirings — July 2022
“Above the Trend Line” – Your Industry Rumor Central for 8/8/2022