Hapi Framework Support for Our Node Agent

hapiHere at New Relic we love our frameworks. Rails, Angular, Play, we use a lot of them ourselves for building products for our customers (rpm.newrelic.com for instance) or for internal tools that do things like track feature requests from our customers.

We also love it when our customers use frameworks too. The patterns they promote to allow large teams to collaborate faster, and in a more organized manner, also allow our agent teams to more thoroughly instrument an application. Better instrumentation means better performance insights into where an application is spending its time.

The birth of a framework is an interesting event in itself. Especially when others already exist in a given space.

Back in 2012, Eran Hammer at Walmart Labs was charged with rethinking how his group should be approaching web services. As an early user of Express, Director and Restify, he hacked on them to solve his problems. It turns out that that wasn’t good enough, and after a while decided a fresh start was needed.

“We didn’t set [out] to create a whole new framework, but at the end of the day, it was easier and more appropriate than trying to make an existing solution work.”

He has an entertaining talk on the subject if you’re interested (especially if you a Ren and Stimpy fan).

A few of the principles that were important to him in the creation of Hapi:

    • Business logic must be isolated from transport layer
    • Configuration is better than code

What many developers find when they using the framework:

    • Support large team collaboration by making it easy to break a web service up into many smaller independent pieces
    • Include many tools to simplify developing large-scale services
    • Has a well-defined, standard request life cycle  

So as the title says, today we are excited to announce support for the Hapi framework (1.x and 2.0 flavors) in the New Relic Node Agent. In the latest version of our Node agent we will:

    • Automatically name transactions from hapi route paths
    • Report timing information for rendering views in Hapi
    • Report timing metrics for web requests

If you have a Hapi app and haven’t tried New Relic yet, now is the time to check us out!

Nate Heinrich is a product manager at New Relic. He has a background in IT management, Web development, and operations. His hobbies include sports that include balls and nets, games of the video variety, and experimenting with machine learning APIs to one day predict something useful. View posts by .

Interested in writing for New Relic Blog? Send us a pitch!