![]() ![]() ![]() The configuration points to a specific location on the endpoint that supplies a stream of text identifying the metric and its current value. Prometheus retrieves metrics in a very straightforward manner a simple HTTP request. Once Prometheus has a list of endpoints, it can begin to retrieve metrics from them. Service discovery is a more advanced topic for a future article. ![]() Endpoints can be supplied via a static configuration or they can be "found" through a process called service discovery. These endpoints can be the actual endpoint being monitored, or they can be a piece of middleware known as an exporter. Targets are the endpoints that supply the metrics that Prometheus stores. The first thing Prometheus needs is a target. Now that we understand what a metric is, let's look at how Prometheus gets the metrics it needs to store. For instance, what if you wanted to know how many "views" this article is getting? Or what if you wanted to know how much traffic is entering and leaving your network? Or how many build and deploy cycles are happening each hour? All of these are metrics that can be fed into Prometheus. Prometheus excels at metrics that change over time. However, those metrics are fairly static and not something you'd necessarily need a system like Prometheus for. The average number of letters in the words of this article is a metric. For instance, the time it takes you to read this article is a metric. So let's start with a question: What are metrics? Simply put, metrics measure something. What is a metric?īefore we get there, we need to understand why something like Prometheus exists. For this article, however, we're going to focus on Prometheus itself with a small detour into exporters. If you need to store metrics for long periods of time, remote storage backends are worth considering. If you need or want better graphing capabilities, applications like Grafana can be deployed. I say "roughly" four parts because plenty of additional applications are often used with a standard Prometheus cluster. Client Libraries can be used to instrument custom applications.AlertManager is an alert management system that ships with Prometheus.Exporters are purpose-built for working with specific applications and hardware.Exporters are optional external programs that ingest data from a variety of sources and convert it to metrics that Prometheus can scrape.This database is always used, but data can also be sent to remote storage backends. The database backend is an internal Time Series database.The main Prometheus app itself that is responsible for scraping metrics, storing them in the database, and (optionally) retrieving them when queried.Prometheus is made up of roughly four parts: Properly tuned and deployed, a Prometheus cluster can collect millions of metrics every second. Prometheus is similar in design to Google's Borgmon monitoring system, and a relatively modest system can handle collecting hundreds of thousands of metrics every second. Prometheus is a metrics collection and alerting tool developed and released to open source by SoundCloud. Automate Red Hat Enterprise Linux with Ansible and Satellite. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |