You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by im...@apache.org on 2013/12/25 19:45:22 UTC

[1/2] git commit: Implemented a new functionality to log inside drools files

Updated Branches:
  refs/heads/master 90236a71a -> d98f31e86


Implemented a new functionality to log inside drools files


Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/9113bc19
Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/9113bc19
Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/9113bc19

Branch: refs/heads/master
Commit: 9113bc190e106a9df5ad7fb18532772892d1127a
Parents: 22882d6
Author: Imesh Gunaratne <im...@apache.org>
Authored: Thu Dec 26 00:14:56 2013 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Thu Dec 26 00:14:56 2013 +0530

----------------------------------------------------------------------
 .../rule/AutoscalerRuleEvaluator.java           |  2 +
 .../apache/stratos/autoscaler/rule/RuleLog.java | 55 ++++++++++++++++++++
 .../distribution/src/main/conf/mincheck.drl     |  8 ++-
 .../distribution/src/main/conf/scaling.drl      |  9 ++++
 4 files changed, 73 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/9113bc19/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java
index 789606f..21eedd5 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java
@@ -104,11 +104,13 @@ public class AutoscalerRuleEvaluator {
     public StatefulKnowledgeSession getMinCheckStatefulSession() {
         StatefulKnowledgeSession ksession;
         ksession = minCheckKbase.newStatefulKnowledgeSession();
+        ksession.setGlobal("log", RuleLog.getInstance());
         return ksession;
     }
     public StatefulKnowledgeSession getScaleCheckStatefulSession() {
         StatefulKnowledgeSession ksession;
         ksession = scaleCheckKbase.newStatefulKnowledgeSession();
+        ksession.setGlobal("log", RuleLog.getInstance());
         return ksession;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/9113bc19/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleLog.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleLog.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleLog.java
new file mode 100644
index 0000000..3cf21d2
--- /dev/null
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleLog.java
@@ -0,0 +1,55 @@
+package org.apache.stratos.autoscaler.rule;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+/**
+ * Drools rule log for logging inside rule files.
+ */
+public class RuleLog {
+    private static final Log log = LogFactory.getLog(RuleLog.class);
+
+    private static volatile RuleLog instance;
+
+    private RuleLog() {
+    }
+
+    public static RuleLog getInstance() {
+        if (instance == null) {
+            synchronized (RuleLog.class) {
+                if (instance == null) {
+                    instance = new RuleLog();
+                }
+            }
+        }
+        return instance;
+    }
+
+    public boolean info(String value) {
+        if(log.isInfoEnabled()) {
+            log.info(value);
+        }
+        return true;
+    }
+
+    public boolean debug(String value) {
+        if(log.isDebugEnabled()) {
+            log.debug(value);
+        }
+        return true;
+    }
+
+    public boolean warn(String value) {
+        if(log.isWarnEnabled()) {
+            log.warn(value);
+        }
+        return true;
+    }
+
+    public boolean error(String value) {
+        if(log.isErrorEnabled()) {
+            log.error(value);
+        }
+        return true;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/9113bc19/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl
----------------------------------------------------------------------
diff --git a/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl b/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl
index bef3370..083d6b2 100755
--- a/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl
+++ b/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl
@@ -40,7 +40,7 @@ import org.apache.stratos.autoscaler.partition.PartitionGroup;
 import org.apache.stratos.cloud.controller.deployment.partition.Partition;
 import org.apache.stratos.cloud.controller.pojo.MemberContext;
 
-
+global org.apache.stratos.autoscaler.rule.RuleLog log;
 global org.apache.stratos.autoscaler.policy.PolicyManager $manager;
 global org.apache.stratos.autoscaler.AutoscalerContext $context; 
 global org.apache.commons.logging.Log log;
@@ -53,7 +53,10 @@ global java.lang.String lbRef;
 rule "Minimum Rule"
 dialect "mvel"
        when
+           eval(log.debug("Running minimum rule"))
 	       $ctxt : PartitionContext ()
+	       eval(log.debug("total member count: " + $ctxt.getTotalMemberCount()))
+	       eval(log.debug("minimum member count: " + $ctxt.getMinimumMemberCount()))
 	       eval($ctxt.getTotalMemberCount() < $ctxt.getMinimumMemberCount())
 
        then
@@ -64,9 +67,12 @@ end
 rule "Terminate Obsoleted Instances"
 dialect "mvel"
         when
+            eval(log.debug("Running obsolete instances rule"))
             $ctxt : PartitionContext ()
+            eval(log.debug("obsolete member count: " + $ctxt.getObsoletedMembers().size()))
             eval($ctxt.getObsoletedMembers().size() > 0)
             memberId : String() from $ctxt.getObsoletedMembers()
+            eval(log.debug("member id: " + memberId))
             eval($ctxt.removeObsoleteMember(memberId))
         then
            $delegator.delegateTerminate(memberId);

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/9113bc19/products/autoscaler/modules/distribution/src/main/conf/scaling.drl
----------------------------------------------------------------------
diff --git a/products/autoscaler/modules/distribution/src/main/conf/scaling.drl b/products/autoscaler/modules/distribution/src/main/conf/scaling.drl
index 3e1fa9f..9f6eeed 100644
--- a/products/autoscaler/modules/distribution/src/main/conf/scaling.drl
+++ b/products/autoscaler/modules/distribution/src/main/conf/scaling.drl
@@ -45,6 +45,7 @@ import org.apache.stratos.cloud.controller.pojo.MemberContext;
 import org.apache.stratos.autoscaler.policy.model.LoadAverage
 import org.apache.stratos.autoscaler.policy.model.MemoryConsumption
 
+global org.apache.stratos.autoscaler.rule.RuleLog log;
 global org.apache.stratos.autoscaler.rule.RuleTasksDelegator $delegator;
 global org.apache.stratos.autoscaler.policy.model.AutoscalePolicy autoscalePolicy;
 global java.lang.String clusterId;
@@ -54,6 +55,7 @@ global java.lang.String lbRef;
 rule "Scaler-up Rule"
 dialect "mvel"
 	when
+	    eval(log.debug("Running scale up rule"))
         $networkPartitionContext : NetworkPartitionContext ()
         $loadThresholds : LoadThresholds() from  autoscalePolicy.getLoadThresholds()
         autoscaleAlgorithm : AutoscaleAlgorithm() from  $delegator.getAutoscaleAlgorithm($networkPartitionContext.getPartitionAlgorithm())
@@ -64,6 +66,9 @@ dialect "mvel"
 
         partition :  Partition() from autoscaleAlgorithm.getNextScaleUpPartition($networkPartitionContext, clusterId)
         predictedValue : Float() from $delegator.getPredictedValueForNextMinute(lbStatAverage, lbStatGradient, lbStatSecondDerivative, 1)
+        eval(log.debug("predicted-value: " + predictedValue))
+        eval(log.debug("average-limit: " + averageLimit))
+        eval(log.debug("scale-up-factor: " + $delegator.SCALE_UP_FACTOR))
         eval(predictedValue > averageLimit * $delegator.SCALE_UP_FACTOR)
 	then
 //	    if (predictedValue*scaleUpFactor > averageLimit){
@@ -80,6 +85,7 @@ end
 rule "Scaler-down Rule"
 dialect "mvel"
 	when
+	    eval(log.debug("Running scale down rule"))
         $networkPartitionContext : NetworkPartitionContext ()
         $loadThresholds : LoadThresholds() from  autoscalePolicy.getLoadThresholds()
         autoscaleAlgorithm : AutoscaleAlgorithm() from  $delegator.getAutoscaleAlgorithm($networkPartitionContext.getPartitionAlgorithm())
@@ -90,6 +96,9 @@ dialect "mvel"
 
         partition :  Partition() from autoscaleAlgorithm.getNextScaleDownPartition($networkPartitionContext, clusterId)
         predictedValue :  Float() from $delegator.getPredictedValueForNextMinute(lbStatAverage, lbStatGradient, lbStatSecondDerivative, 1)
+        eval(log.debug("predicted-value: " + predictedValue))
+        eval(log.debug("average-limit: " + averageLimit))
+        eval(log.debug("scale-down-factor: " + $delegator.SCALE_DOWN_FACTOR))
         eval(predictedValue < averageLimit * $delegator.SCALE_DOWN_FACTOR)
 	then
 


[2/2] git commit: Merge remote-tracking branch 'origin/master'

Posted by im...@apache.org.
Merge remote-tracking branch 'origin/master'


Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/d98f31e8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/d98f31e8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/d98f31e8

Branch: refs/heads/master
Commit: d98f31e86071c915812bc7e78d6a488fdaca730d
Parents: 9113bc1 90236a7
Author: Imesh Gunaratne <im...@apache.org>
Authored: Thu Dec 26 00:15:14 2013 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Thu Dec 26 00:15:14 2013 +0530

----------------------------------------------------------------------
 tools/puppet/manifests/classes/php_cartridge.pp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------