Repository: stratos Updated Branches: refs/heads/master c2eb33208 -> c98223409
calculate instance count using InstanceRoundingFactor passed from autoscaling policy Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/c9822340 Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/c9822340 Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/c9822340 Branch: refs/heads/master Commit: c98223409fc082a7068d16fe1d7719ee3995cb9e Parents: c2eb332 Author: Lahiru Sandaruwan <[email protected]> Authored: Tue Nov 25 23:43:39 2014 +0530 Committer: Lahiru Sandaruwan <[email protected]> Committed: Tue Nov 25 23:43:39 2014 +0530 ---------------------------------------------------------------------- .../monitor/cluster/VMServiceClusterMonitor.java | 14 ++++++++++---- .../autoscaler/monitor/group/GroupMonitor.java | 7 +++++++ 2 files changed, 17 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/c9822340/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java index 7cf0f12..a072952 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java @@ -265,15 +265,21 @@ public class VMServiceClusterMonitor extends VMClusterMonitor { @Override public void onParentScalingEvent(MonitorScalingEvent scalingEvent) { - this.scalingFactorBasedOnDependencies = scalingEvent.getFactor(); + if(log.isDebugEnabled()){ + log.debug("Parent scaling event received to [cluster]: " + this.getClusterId() + + ", [network partition]: " + scalingEvent.getNetworkPartitionId() + + ", [event] " + scalingEvent.getId() + ", [group instance] " + scalingEvent.getInstanceId()); + } + + this.scalingFactorBasedOnDependencies = scalingEvent.getFactor(); + VMClusterContext vmClusterContext = (VMClusterContext) clusterContext; NetworkPartitionContext networkPartitionContext = getNetworkPartitionCtxt(scalingEvent.getNetworkPartitionId()); float requiredInstanceCount = networkPartitionContext.getMinInstanceCount() * scalingFactorBasedOnDependencies; - int roundedRequiredInstanceCount = getRoundedInstanceCount(requiredInstanceCount, 0); + int roundedRequiredInstanceCount = getRoundedInstanceCount(requiredInstanceCount, + vmClusterContext.getAutoscalePolicy().getInstanceRoundingFactor()); networkPartitionContext.setRequiredInstanceCountBasedOnStats(roundedRequiredInstanceCount); - //TODO get instance count rounding fraction(0) as a part of Autoscaling policy - } public void sendClusterScalingEvent(String networkPartitionId, float factor) { http://git-wip-us.apache.org/repos/asf/stratos/blob/c9822340/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java index 4b61b04..837ca77 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/group/GroupMonitor.java @@ -171,6 +171,13 @@ public class GroupMonitor extends ParentComponentMonitor implements EventHandler @Override public void onChildScalingEvent(MonitorScalingEvent scalingEvent) { + + if(log.isDebugEnabled()){ + log.debug("Child scaling event received to [group]: " + this.getId() + + ", [network partition]: " + scalingEvent.getNetworkPartitionId() + + ", [event] " + scalingEvent.getId() + ", [group instance] " + scalingEvent.getInstanceId()); + } + //find the child context of this group, from scaling dependency tree GroupChildContext currentChildContextInScalingTree = (GroupChildContext) scalingDependencyTree.findApplicationContextWithIdInScalingDependencyTree(id);
