Repository: stratos Updated Branches: refs/heads/master 66f173226 -> 8ad5fef24
Fix RuleTasksDelegator class logs and line limit exceeds Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/efe1f791 Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/efe1f791 Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/efe1f791 Branch: refs/heads/master Commit: efe1f7914973ebfc49fc8ee576770c0bc64491c6 Parents: 66f1732 Author: Lahiru Sandaruwan <[email protected]> Authored: Tue Mar 17 11:20:47 2015 +0530 Committer: Lahiru Sandaruwan <[email protected]> Committed: Tue Mar 17 11:20:54 2015 +0530 ---------------------------------------------------------------------- .../autoscaler/rule/RuleTasksDelegator.java | 45 ++++++++++++-------- 1 file changed, 28 insertions(+), 17 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/efe1f791/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java index 85bee11..a5571b9 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java @@ -65,7 +65,8 @@ public class RuleTasksDelegator { } - public int getNumberOfInstancesRequiredBasedOnRif(float rifPredictedValue, float requestsServedPerInstance, float averageRequestsServedPerInstance, boolean arspiReset) { + public int getNumberOfInstancesRequiredBasedOnRif(float rifPredictedValue, float requestsServedPerInstance, float + averageRequestsServedPerInstance, boolean arspiReset) { float requestsInstanceCanHandle = requestsServedPerInstance; @@ -133,7 +134,8 @@ public class RuleTasksDelegator { if (laReset) { laBasedRequiredInstances = numberOfInstancesReuquiredBasedOnLoadAverage; } - numberOfInstances = Math.max(Math.max(numberOfInstancesRequiredBasedOnMemoryConsumption, numberOfInstancesReuquiredBasedOnLoadAverage), numberOfInstancesRequiredBasedOnRif); + numberOfInstances = Math.max(Math.max(numberOfInstancesRequiredBasedOnMemoryConsumption, + numberOfInstancesReuquiredBasedOnLoadAverage), numberOfInstancesRequiredBasedOnRif); return numberOfInstances; } @@ -189,7 +191,8 @@ public class RuleTasksDelegator { int minimumCountOfNetworkPartition = 0; ClusterMonitor clusterMonitor = (ClusterMonitor) AutoscalerContext.getInstance().getClusterMonitor(clusterId); ClusterContext clusterContext = (ClusterContext) clusterMonitor.getClusterContext(); - ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext = clusterContext.getNetworkPartitionCtxt(nwPartitionId); + ClusterLevelNetworkPartitionContext clusterLevelNetworkPartitionContext = + clusterContext.getNetworkPartitionCtxt(nwPartitionId); ClusterInstanceContext clusterInstanceContext = (ClusterInstanceContext) clusterLevelNetworkPartitionContext. getInstanceContext(clusterInstanceId); @@ -272,18 +275,20 @@ public class RuleTasksDelegator { //Moving member to pending termination list if (clusterMonitorPartitionContext.activeMemberAvailable(memberId)) { - log.info(String.format("[scale-down] Moving active member to termination pending list [member id] %s [partition] %s " + - "[network partition] %s" , memberId, clusterMonitorPartitionContext.getPartitionId(), + log.info(String.format("[scale-down] Moving active member to termination pending list [member id] %s " + + "[partition] %s [network partition] %s" , memberId, + clusterMonitorPartitionContext.getPartitionId(), clusterMonitorPartitionContext.getNetworkPartitionId())); - clusterMonitorPartitionContext.moveActiveMemberToTerminationPendingMembers(memberId); - clusterMonitorPartitionContext.removeMemberStatsContext(memberId); + clusterMonitorPartitionContext.moveActiveMemberToTerminationPendingMembers(memberId); + clusterMonitorPartitionContext.removeMemberStatsContext(memberId); } else if (clusterMonitorPartitionContext.pendingMemberAvailable(memberId)) { - log.info(String.format("[scale-down] Moving pending member to termination pending list [member id] %s [partition] %s " + - "[network partition] %s" , memberId, clusterMonitorPartitionContext.getPartitionId(), + log.info(String.format("[scale-down] Moving pending member to termination pending list [member id] %s " + + "[partition] %s [network partition] %s" , memberId, + clusterMonitorPartitionContext.getPartitionId(), clusterMonitorPartitionContext.getNetworkPartitionId())); - clusterMonitorPartitionContext.movePendingMemberToObsoleteMembers(memberId); - clusterMonitorPartitionContext.removeMemberStatsContext(memberId); + clusterMonitorPartitionContext.movePendingMemberToObsoleteMembers(memberId); + clusterMonitorPartitionContext.removeMemberStatsContext(memberId); } } catch (Exception e) { log.error("[scale-down] Cannot move member to termination pending list ", e); @@ -345,10 +350,13 @@ public class RuleTasksDelegator { float memberGredientLoadAverage = memberStatsContext.getLoadAverage().getGradient(); float memberSecondDerivativeLoadAverage = memberStatsContext.getLoadAverage().getSecondDerivative(); - double memberPredictedLoadAverage = getPredictedValueForNextMinute(memberAverageLoadAverage, memberGredientLoadAverage, memberSecondDerivativeLoadAverage, 1); - - log.debug("Member ID : " + memberStatsContext.getMemberId() + " : Predicted Load Average : " + memberPredictedLoadAverage); + double memberPredictedLoadAverage = getPredictedValueForNextMinute(memberAverageLoadAverage, + memberGredientLoadAverage, memberSecondDerivativeLoadAverage, 1); + if(log.isDebugEnabled()) { + log.debug(String.format("[member-id] $s [predicted load average] $s ", memberStatsContext.getMemberId() + , memberPredictedLoadAverage)); + } loadAveragePredicted += memberPredictedLoadAverage; ++totalMemberCount; } @@ -372,10 +380,13 @@ public class RuleTasksDelegator { float memberMemoryConsumptionGredient = memberStatsContext.getMemoryConsumption().getGradient(); float memberMemoryConsumptionSecondDerivative = memberStatsContext.getMemoryConsumption().getSecondDerivative(); - double memberPredictedMemoryConsumption = getPredictedValueForNextMinute(memberMemoryConsumptionAverage, memberMemoryConsumptionGredient, memberMemoryConsumptionSecondDerivative, 1); - - log.debug("Member ID : " + memberStatsContext.getMemberId() + " : Predicted Memory Consumption : " + memberPredictedMemoryConsumption); + double memberPredictedMemoryConsumption = getPredictedValueForNextMinute(memberMemoryConsumptionAverage, + memberMemoryConsumptionGredient, memberMemoryConsumptionSecondDerivative, 1); + if(log.isDebugEnabled()) { + log.debug(String.format("[member-id] $s [predicted memory consumption] $s ", memberStatsContext.getMemberId() + , memberPredictedMemoryConsumption)); + } memoryConsumptionPredicted += memberPredictedMemoryConsumption; ++totalMemberCount; }
