<pclass="desc">A flexible query language allows slicing and dicing of collected time series data in order to generate ad-hoc graphs, tables, and alerts.</p>
<pclass="desc">Prometheus has multiple modes for visualizing data: a built-in expression browser, a GUI-based dashboard builder, and a console template language.</p>
<p>Prometheus stores time series in memory and on local disk in an efficient custom format. Scaling is achieved by functional sharding and federation.</p>
<p>Each server is independent for reliability, relying only on local storage. Written in Go, all binaries are statically linked and easy to deploy.</p>
<p>Alerts are defined based on Prometheus's flexible query language and maintain dimensional information. An alertmanager handles notifications and silencing.</p>
</a>
</div>
<divclass="col-md-3 feature-item">
<ahref="/docs/instrumenting/clientlibs/">
<h2><iclass="fa fa-code"></i> Many client libraries</h2>
<p>Client libraries allow easy instrumentation of services. Currently, Go, Java, and Ruby are supported. Custom libraries are easy to implement.</p>
</a>
</div>
<divclass="col-md-3 feature-item">
<ahref="/docs/instrumenting/exporters/">
<h2><iclass="fa fa-cloud-upload"></i> Many integrations</h2>
<p>Existing exporters allow bridging of third-party data into Prometheus. Examples: system statistics, as well as Docker, HAProxy, StatsD, and JMX metrics. </p>
</a>
</div>
</div>
</div>
<divclass="row top-hr">
<divclass="col-md-12">
<hr>
</div>
</div>
</div>
<divclass="col-md-3">
<h2><iclass="fa fa-database"></i> Storage</h2>
<divclass="row quote">
<pclass="desc">Prometheus stores time series in memory and on local disk in an efficient custom format. Scaling is achieved by functional sharding and federation.</p>
«Even though Borgmon remains internal to Google, the idea of treating time-series data as a data source for generating alerts is now accessible to everyone through those open source tools like Prometheus [...]»
</p>
<pclass="quote-source">
— <ahref="http://shop.oreilly.com/product/0636920041528.do"><b>Site Reliability Engineering:</b> How Google Runs Production Systems</a> (O'Reilly Media)
</p>
</div>
</div>
</div>
</div>
<divclass="row">
<divclass="row">
<divclass="col-md-3">
<divclass="col-md-12">
<h2><iclass="fa fa-cog"></i> Operation</h2>
<hr>
<pclass="desc">Each server is independent for reliability, relying only on local storage. Written in Go, all binaries are statically linked and easy to deploy.</p>
<pclass="desc">Client libraries allow easy instrumentation of services. Currently, Go, Java, and Ruby are supported. Custom libraries are easy to implement.</p>
<p>Prometheus is 100% open source and community-driven. All components are available under the <ahref="http://www.apache.org/licenses/LICENSE-2.0">Apache 2 License</a> on <ahref="https://github.com/prometheus">GitHub</a>.</p>
</div>
</div>
<divclass="col-md-3">
<h2><iclass="fa fa-warning"></i> Alerting</h2>
<pclass="desc">Alerts are defined based on Prometheus's flexible query language and maintain dimensional information. An alertmanager handles notifications and silencing.</p>
<pclass="desc">Existing exporters allow bridging of third-party data into Prometheus. Examples: system statistics, as well as Docker, HAProxy, StatsD, and JMX metrics. </p>