fixing https://issues.apache.org/jira/browse/STRATOS-645 - modifications to scaling drools file
Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/5c335754 Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/5c335754 Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/5c335754 Branch: refs/heads/master Commit: 5c335754a0bee9489701260f63d6c9bb76795b27 Parents: f13e59b Author: Nirmal Fernando <[email protected]> Authored: Wed May 7 04:26:16 2014 +0530 Committer: Nirmal Fernando <[email protected]> Committed: Wed May 7 04:26:16 2014 +0530 ---------------------------------------------------------------------- .../distribution/src/main/conf/scaling.drl | 26 ++++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/5c335754/products/stratos/modules/distribution/src/main/conf/scaling.drl ---------------------------------------------------------------------- diff --git a/products/stratos/modules/distribution/src/main/conf/scaling.drl b/products/stratos/modules/distribution/src/main/conf/scaling.drl index c192cd2..8600a27 100644 --- a/products/stratos/modules/distribution/src/main/conf/scaling.drl +++ b/products/stratos/modules/distribution/src/main/conf/scaling.drl @@ -67,36 +67,46 @@ dialect "mvel" eval(log.debug("[scaling] [network-partition] " + $networkPartitionContext.getId() + " [cluster] " + clusterId + " Algorithm name: " + algorithmName)) eval(log.debug("[scaling] [network-partition] " + $networkPartitionContext.getId() + " [cluster] " + clusterId + " Algorithm: " + autoscaleAlgorithm)) + + rifUpperLimit : Float() from $loadThresholds.getRequestsInFlight().getUpperLimit() + rifLowerLimit : Float() from $loadThresholds.getRequestsInFlight().getLowerLimit() rifAverage : Float() from $networkPartitionContext.getAverageRequestsInFlight() rifGradient : Float() from $networkPartitionContext.getRequestsInFlightGradient() rifSecondDerivative : Float() from $networkPartitionContext.getRequestsInFlightSecondDerivative() - rifAverageLimit : Float() from $loadThresholds.getRequestsInFlight().getAverage() rifPredictedValue : Double() from $delegator.getPredictedValueForNextMinute(rifAverage, rifGradient, rifSecondDerivative, 1) + mcUpperLimit : Float() from $loadThresholds.getMemoryConsumption().getUpperLimit() + mcLowerLimit : Float() from $loadThresholds.getMemoryConsumption().getLowerLimit() + memoryConsumptionAverage : Float() from $networkPartitionContext.getAverageMemoryConsumption() memoryConsumptionGradient : Float() from $networkPartitionContext.getMemoryConsumptionGradient() memoryConsumptionSecondDerivative : Float() from $networkPartitionContext.getMemoryConsumptionSecondDerivative() - mcAverageLimit : Float() from $loadThresholds.getMemoryConsumption().getAverage() mcPredictedValue : Double() from $delegator.getPredictedValueForNextMinute(memoryConsumptionAverage, memoryConsumptionGradient, memoryConsumptionSecondDerivative, 1) + laUpperLimit : Float() from $loadThresholds.getLoadAverage().getUpperLimit() + laLowerLimit : Float() from $loadThresholds.getLoadAverage().getLowerLimit() + loadAverageAverage : Float() from $networkPartitionContext.getAverageLoadAverage() loadAverageGradient : Float() from $networkPartitionContext.getLoadAverageGradient() loadAverageSecondDerivative : Float() from $networkPartitionContext.getLoadAverageSecondDerivative() - laAverageLimit : Float() from $loadThresholds.getLoadAverage().getAverage() laPredictedValue : Double() from $delegator.getPredictedValueForNextMinute(loadAverageAverage, loadAverageGradient, loadAverageSecondDerivative, 1) - scaleUp : Boolean() from ((rifReset && (rifPredictedValue > rifAverageLimit * 0.8)) || (mcReset && (mcPredictedValue > mcAverageLimit * 0.8)) || (laReset && (laPredictedValue > laAverageLimit * 0.8))) - scaleDown : Boolean() from ((rifReset && (rifPredictedValue < rifAverageLimit * 0.1)) && (mcReset && (mcPredictedValue < mcAverageLimit * 0.1)) && (laReset && (laPredictedValue < laAverageLimit * 0.1))) + scaleUp : Boolean() from ((rifReset && (rifPredictedValue > rifUpperLimit)) || (mcReset && (mcPredictedValue > mcUpperLimit)) || (laReset && (laPredictedValue > laUpperLimit))) + scaleDown : Boolean() from ((rifReset && (rifPredictedValue < rifLowerLimit )) && (mcReset && (mcPredictedValue < mcLowerLimit)) && (laReset && (laPredictedValue < laLowerLimit))) + eval(log.debug("[scaling] " + " [cluster] " + clusterId + " RIF Resetted?: " + rifReset)) eval(log.debug("[scaling] " + " [cluster] " + clusterId + " RIF predicted value: " + rifPredictedValue)) - eval(log.debug("[scaling] " + " [cluster] " + clusterId + " RIF average limit: " + rifAverageLimit)) + eval(log.debug("[scaling] " + " [cluster] " + clusterId + " RIF upper limit: " + rifUpperLimit)) + eval(log.debug("[scaling] " + " [cluster] " + clusterId + " RIF lower limit: " + rifLowerLimit)) eval(log.debug("[scaling] " + " [cluster] " + clusterId + " MC predicted value: " + mcPredictedValue)) - eval(log.debug("[scaling] " + " [cluster] " + clusterId + " MC average limit: " + mcAverageLimit)) + eval(log.debug("[scaling] " + " [cluster] " + clusterId + " MC upper limit: " + mcUpperLimit)) + eval(log.debug("[scaling] " + " [cluster] " + clusterId + " MC lower limit: " + mcLowerLimit)) eval(log.debug("[scaling] " + " [cluster] " + clusterId + " LA predicted value: " + laPredictedValue)) - eval(log.debug("[scaling] " + " [cluster] " + clusterId + " LA Average limit: " + laAverageLimit)) + eval(log.debug("[scaling] " + " [cluster] " + clusterId + " LA upper limit: " + laUpperLimit)) + eval(log.debug("[scaling] " + " [cluster] " + clusterId + " LA lower limit: " + laLowerLimit)) eval(log.debug("[scaling] " + " [cluster] " + clusterId + " Scale-up action: " + scaleUp)) eval(log.debug("[scaling] " + " [cluster] " + clusterId + " Scale-down action: " + scaleDown))
