# Get Total Requests in a Period of Time

To calculate the total number of requests over a specified period of time using Prometheus, you can utilize the `increase` function. This function is ideal for summing up the total count of a counter metric over a given time interval.

[ad-logs-small]

### Example Scenario

Let's say you have a counter metric called `http_requests_total`, which counts the total number of HTTP requests received by your application. To get the total requests over a specific time period, you would write a PromQL query using the `increase` function.

### PromQL Query

Here’s how you can construct the query:

```
increase(http_requests_total[5m])
```

In this example:

- `http_requests_total` is the name of your counter metric.
- `[5m]` specifies the time range over which you want to calculate the increase—in this case, the last 5 minutes.

### Breakdown of the Query

- **Function**: `increase(...)` calculates the total increase in the `http_requests_total` counter over the specified time range.
- **Time Range**: You can adjust the time range as needed. For instance:
    - For the last 10 minutes: `increase(http_requests_total[10m])`
    - For the last hour: `increase(http_requests_total[1h])`
    - For the last day: `increase(http_requests_total[1d])`

### Viewing the Results

To view the results:

1. Open your Prometheus dashboard or any compatible visualization tool like Grafana.
2. Enter the query in the query editor and execute it.
3. You should see the total number of HTTP requests received in the specified time period.

### Additional Considerations

1. **Counter Resets**: The `increase` function automatically handles cases where the counter resets (e.g., due to application restarts), ensuring that your total count remains accurate.
2. **Rate of Change**: If you're interested in the rate of requests per second over that period, you can use the `rate` function instead:
    
    ```
    rate(http_requests_total[5m])
    ```
    
    This gives you the average requests per second over the last 5 minutes.
    
3. **Multiple Instances**: If you have multiple instances of your application (e.g., in a microservices architecture), you might want to sum the requests across all instances:
    
    ```
    sum(increase(http_requests_total[5m])) by (instance)
    ```
    

### Conclusion

Using the `increase` function in Prometheus allows you to effectively measure the total requests made over a specified time period. This is a valuable metric for monitoring application performance and understanding traffic patterns. Adjust the time range as needed based on your analysis requirements, and consider using visualization tools for better insights.

[ad-uptime]
