Need help in calculating TPS (Transaction per second) in Prometheus metric

Hello,

I am trying to display TPS in Prometheus data source where I have metrics for total messages.

I am using rate function to basically achieve value2-value1/time2-time1.
(rate(metric{kubernetes_namespace=“namespace”}[2m])

Questions:

  1. I can not go below 2m in the range for rate. Any reason?
  2. I can not use $__interval or $__rate_interval. If I use graph goes blank. Why this can not be used?
  3. I can only use $__range as duration for rate. Why this is usable?
  4. Please explain $__interval, $__rate_interval and $__range in layman terms as I feel I am missing something.

Please help.