Signed-off-by: Alex Meijer <ameijer@kubecost.com>
@@ -2252,7 +2252,12 @@ func (a *Accesses) ComputeAllocationHandler(w http.ResponseWriter, r *http.Reque
asr, err := a.Model.QueryAllocation(window, resolution, step, aggregateBy, includeIdle, idleByNode, includeProportionalAssetResourceCosts)
if err != nil {
- WriteError(w, InternalServerError(err.Error()))
+ if strings.Contains(strings.ToLower(err.Error()), "bad request") {
+ WriteError(w, BadRequest(err.Error()))
+ } else {
+ WriteError(w, InternalServerError(err.Error()))
+ }
+
return
}
@@ -1,6 +1,7 @@
package costmodel
import (
+ "errors"
"fmt"
"math"
"regexp"
@@ -2302,7 +2303,9 @@ func (cm *CostModel) QueryAllocation(window kubecost.Window, resolution, step ti
// Idle is required for proportional asset costs
if includeProportionalAssetResourceCosts {
- includeIdle = true
+ if !includeIdle {
+ return nil, errors.New("bad request - includeIdle must be set true if includeProportionalAssetResourceCosts is true")
// Begin with empty response