- 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.