GitHub is how people build software. With a community of more than 15 million people, developers can discover, use, and contribute to over 38 million projects using a powerful collaborative development workflow.
Whether using GitHub.com or your own instance of GitHub Enterprise, you can integrate GitHub with third party tools, from project management to continuous deployment, to build software in the way that works best for you.
Date:
October 24, 2014
What is your name?
Scott Sanders
What is the name of your company?
GitHub
What is your position or title?
Infrastructure Engineer
How long has your company/org/dept/team been using Graphite?
GitHub first installed Graphite 3 years ago to add visibility into our metrics.
What do you use Graphite to monitor?
Quite literally, everything. We monitoring all host level metrics with Collectd. Application level metrics are measured with Statsd. Service level metrics are collectd by both aggregating our application metrics as well as through external systems performing behavioral tests and recording timing results and failures. Business and financial metrics are also recorded into Graphite where appropriate.
What questions does Graphite help you answer?
Graphite gives us the ability to analyze and compare large volumes of time-series data. We use Graphite to look at trends and anomolies, and extract the raw data into other visualization and dashboarding systems.
What problems does Graphite help you solve?
In our operations team we use graphite to drive many of our alerting systems and perform capacity analysis. It's also heavily used by our development teams to analyze the performance impact of changes as they're implemented and slowly deployed across our infrastructure. Our business and sales teams use graphite to track impact and effectiveness of their campaigns and initiatives.
Do you track any business or non-technical metrics in Graphite?
Yes. As many as possible. We have spent significant effort into making graphite as self-service as possible.
Do you use Graphite for anything unique?
We interact with a large portion of our graphs through Chat. A culture of data driven investigation through chat has enabled us to interact with our data in a manner that is visible to the entire team participating. In addition this creates an audit log allowing us to assess our successes and failures well after the event has ended.
Anything else you'd like to add?
Scaling Graphite is still a difficult task and care should be taken to ensure the tradeoffs inherent in the different scaling topologies match your business and operation needs.