Hi,

I just saw this question. Check out
https://promlabs.com/blog/2020/07/02/selecting-data-in-promql and
https://promlabs.com/blog/2020/06/18/the-anatomy-of-a-promql-query, which
should answer most of your questions in more detail.

In addition to answers Matthias provided:

2. + 3. All three range query parameters are mandatory, otherwise the API
returns an error.

4. A range vector selector (like "foo[5m]") returns *all* samples under the
provided window. Doing a range *query* over an instant selector ("foo")
over that same range is *not* equivalent, as the resolution step applies,
and thus a) all output points will be aligned to that resolution, b) raw
samples with a higher frequency than your resolution are *skipped*, and c)
the returned format is different. Also, staleness handling is a
concept that only happens for instant vector selectors, see
https://promlabs.com/blog/2020/07/02/selecting-data-in-promql#instant-vector-selectors
and the "Staleness" section therein.

Regards,
Julius

On Mon, Nov 16, 2020 at 4:42 AM kiran <[email protected]> wrote:

> Hello all,
>
> I am new to PromQL and would like to understand as I could not find things
> (unless I am missing it) here:
> https://prometheus.io/docs/prometheus/latest/querying/api/
>
> 1. For an instant query, if I dont give timestamp, then what is the
> logic/default timestamp.
> 2. For range query, what is the default step value if no value is provided?
> 3. For range query, are start, and end parameters optional?
> 4. I see that time duration can be given after the metric in square
> brackets (e.g http_requests_total[5m]). Is giving time duration this way
> the same as giving range query with equivalent unix timestamp values for
> start and end parameters?
>
> So I am trying to understand if both the queries below are same and yield
> same result(including result format):
>
> /api/v1/query_range?query=<metricname>[<duration>]
> /api/v1/query_range?query=
> <metricname>&start=<strartunixtimestamp>&end=<endunixtimestamp>
>
> 5. I see that giving duration in square brackets is working for instant
> query as well(e.g /api/v1/query?query=<metricname>[<duration>]), but not
> sure what timeseries it is retrieving. Any valid cases to use this way?
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Prometheus Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/prometheus-users/CAOnWYZVk%3D-MRzawQ_BHamf_vtS-7960uM5kigO%3DtE559RaGoEw%40mail.gmail.com
> <https://groups.google.com/d/msgid/prometheus-users/CAOnWYZVk%3D-MRzawQ_BHamf_vtS-7960uM5kigO%3DtE559RaGoEw%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>


-- 
Julius Volz
PromLabs - promlabs.com

-- 
You received this message because you are subscribed to the Google Groups 
"Prometheus Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/prometheus-users/CAObpH5w-ZF%2BFvuTDLUtM-3rU%3DaEvjX8t5dMPZMc-CqEe_8gyMA%40mail.gmail.com.

Reply via email to