Zapier is a company that connects web applications to automate tasks without writing code. They use New Relic to monitor their complex application environment across many servers and technologies. New Relic provides visibility into performance issues and alerts Zapier to problems before users are affected. The New Relic Platform allows Zapier to view metrics from services like Redis and RabbitMQ in a single dashboard, improving productivity over separate monitoring tools. New Relic helped Zapier identify and address issues quickly to optimize performance.
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Zapier Aggregates Analytics in Single New Relic Dashboard
1. CASE STUDY: ZAPIER
Zapier Aggregates Multiple Analytics
in a Single Dashboard with the
New Relic Platform
Founded in 2011, Zapier enables non-technical users
to push data between hundreds of web applications —
including Salesforce, Basecamp and Gmail — with no need
to write code or wrangle APIs. The objective is to auto-
mate mundane tasks by connecting web applications.
A user selects a series of triggers from web applications
and, when the trigger occurs, a chosen action is launched.
Together, the trigger and action are called a Zap. Each
automatic Zap frees up a user’s time, enabling him or her
to do more complex tasks and creative work.
Environment
Zapier runs 50 Linux servers on the Amazon Elastic
Compute Cloud (EC2). The company’s web frontend
is a Django application split across several servers,
with Amazon Elastic Load Balancing (ELB) between
them. The backend consists of a dynamic number of
celery task workers fed by messages published to a
RabbitMQ cluster. Zapier also maintains a number of
internal web services on nginx in front of Gunicorn
and Node.js processes. Redis handles simple key and
value stores, with logging handled by Graylog2 and
ElasticSearch.
Challenges
When James Carr joined Zapier as a Systems Engineer
in January 2013, his first priority was automating and
provisioning servers for optimal performance. He knew,
however, that no level of automation would be sufficient
without an effective monitoring solution in place. “If
something’s breaking, I want to know immediately,” he
says. “For me, monitoring isn’t really an option. It’s a must
have. And if you don’t have the right tool, it can be an
incredibly time consuming task. One of my previous
employers had a dedicated team of six people working
on monitoring. That’s just not practical for us — we only
have six people in our entire company. So I started sniffing
around for the best option available.”
At a Glance
INDUSTRY
Data integration
LOCATION
Mountain View, California
EMPLOYEES
Six
USE CASE
Comprehensive monitoring to
accelerate on-demand integration
of more than 200 external services
WHY NEW RELIC
Full visibility into an extended
application environment
HIGHLIGHTS
• The New Relic Platform enables
Zapier to look at monitoring data
from multiple services in a single
dashboard
• New Relic drives productivity by
diagnosing the root cause of issues
in minutes, not hours or days
• New Relic proactively identifies
problems long before those
problems affect users
2. CASE STUDY: ZAPIER
Solution
For Carr, New Relic quickly emerged as the solution to beat. “I tested
a few different tools and I was very happy with what I saw in New Relic,”
he says. “Best of all, it was easy to implement. I was able to drop it into
our environment and just run with it.”
Today, Carr relies on New Relic to monitor CPU utilization. He also makes
heavy use of the Python agent to gain greater insight into Zapier’s Django
application. But for him, the most useful feature of all is App Map. “It’s
almost like the App Map was built for us,” he says. “We integrate with
more than 200 external services. We make hundreds of millions of
requests to third party APIs every month and we are anticipating that
we will be approaching one billion API requests per month before the
year is out. With such a complex extended application environment,
a graphical representation of our entire ecosystem is just incredibly
helpful. By looking at the map in New Relic, we can see which services
are taking the longest amount of time and which ones have experienced
issues in the last 30 minutes or so. Then we start digging to find out more.”
With the introduction of the New Relic Platform, Carr saw an opportunity
to gain even greater visibility into all metrics relevant to Zapier. “Some
parts of our environment — like Redis, nginx, RabbitMQ and HAProxy —
are major pieces of the business,” he says. “We’re constantly logging into
those tools to run a test, then checking New Relic, then going back to
run another test. It’s clearly inefficient. I was already trying to figure out
how I could create more integration between New Relic and these other
services. Then I heard about the platform and it was clear that New Relic
was on the same page.”
The New Relic Platform is community-driven, open to any developer who
wants to create a plugin either for public consumption or private use.
Zapier is already relying on three of the platform’s many extensions:
• The RabbitMQ plugin keeps track of queue backlogs over time,
proactively identifying scalability issues by generating alerts
when Zapier crosses a given threshold of messages in the queue.
• The Memcached plugin monitors the amount of memory and
number of commands executed per second on cache nodes.
The Zapier team uses this data to determine how much of its
cache is being utilized — even forecasting necessary adjustments
to the caching infrastructure.
• The Redis plugin tracks the number of active connections to
each Redis instance, the number of commands executed per
minute and the total number of keys stored. That way, Zapier
can set thresholds for notification when additional resources
need to be allocated.
Zapier gets better visibility into its technology metrics with the New Relic Platform.
“We no longer need to run our own custom metric tracking for all
of our resources because we can now get all of that information
inside the New Relic Platform. We can aggregate analytics in a
single app. We don’t waste time looking for data — it’s all in one
dashboard. And with each new plugin, we have a new opportunity
to save a little more time.”
James Carr
Systems Engineer, Zapier