Expand description
Built-in PromQL function definitions.
This module defines the signatures of all built-in PromQL functions. It can be used for validation and documentation purposes.
§Function Categories
- Math functions:
abs,ceil,floor,exp,sqrt,ln,log2,log10 - Trigonometric:
acos,asin,atan,cos,sin,tan(and hyperbolic variants) - Rounding/clamping:
round,clamp,clamp_min,clamp_max - Sorting:
sort,sort_desc,sort_by_label - Rate functions:
rate,irate,increase,delta,idelta,deriv - Aggregation over time:
avg_over_time,sum_over_time,min_over_time, etc. - Time functions:
time,timestamp,hour,minute,month,year - Label functions:
label_replace,label_join - Histogram functions:
histogram_quantile,histogram_avg,histogram_count
§Example
use rusty_promql_parser::parser::function::{get_function, is_function};
assert!(is_function("rate"));
assert!(!is_function("unknown_func"));
let func = get_function("rate").unwrap();
assert_eq!(func.name, "rate");
assert_eq!(func.min_args(), 1);Structs§
- Function
- Function signature definition.
Enums§
- Value
Type - Value types for function arguments and return values.
- Variadic
- Variadic argument specification.
Statics§
- FUNCTIONS
- All built-in PromQL functions.
Functions§
- get_
function - Look up a function by name.
- is_
function - Check if a name is a known built-in function.