- Working Directory: Documents/Courses/Pluralsight-GettingStartedWithPrometheus
- Sample Code:
Module 2: Understanding How Prometheus Works
- Prometheus Server
- Scheduler fetches metrics from targets using a pull model
- Time Series Database
- Http API
- Web UI
- Alerting system
- What makes Prometheus so awesome
- each target runs an exporter
- exporter makes metrics available via http endpoint
- Prometheus pulls data from the http endpoint
-
Histograms are good for putting data into buckets, like sorting out good vs bad response times into buckets
- each label added creates a new timeseries of the data
Module 3: Running and Configuring Prometheus
Module 4: Querying Metrics with PromQL
Selector Basics:
metric_name
- will list out all values for metricmetric_name{label="value"}
- use a selector, like a where clause in SQL- label selectors
label="value"
- string comparelabel=~"value.*"
- regex compare
metric_name[5m]
- To see a range of results instead of the most recent specify the range- all samples in 5 minute span
Operators
sum(metric_name)
- total of all label valuessum without(job) (metric_name)
- like a group by in SQL with a having clause
Functions
delta(metric_name[1h])
- difference between first & last values in a range- not an agregation
- good for gauges
avg(delta(meric_name[1h]))
rate(metric_name[5m])
- output is a gauge
Demos
Demos are in the Courses content folder.