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/11/22 06:09:45 UTC

[1/2] git commit: Added functionality to enable/disable load balancing statistics publisher

Updated Branches:
  refs/heads/master a9523bb69 -> e93bb7c93


Added functionality to enable/disable load balancing statistics publisher


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

Branch: refs/heads/master
Commit: 12559b5422f82f8303fa181b60c219f8287cd6f9
Parents: c852a28
Author: Imesh Gunaratne <im...@apache.org>
Authored: Fri Nov 22 10:39:07 2013 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Fri Nov 22 10:39:07 2013 +0530

----------------------------------------------------------------------
 .../statistics/LoadBalancerStatsPublisher.java     | 11 +++++++++++
 .../common/statistics/WSO2CEPStatsPublisher.java   | 17 ++++++++++++++++-
 .../extension/api/LoadBalancerStatsNotifier.java   |  7 ++++++-
 .../statistics/observers/WSO2CEPStatsObserver.java | 10 +++++++++-
 .../src/main/bin/haproxy-extension.sh              |  1 +
 .../modules/distribution/src/main/bin/stratos.bat  |  2 +-
 .../modules/distribution/src/main/bin/stratos.sh   |  1 +
 7 files changed, 45 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/12559b54/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/LoadBalancerStatsPublisher.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/LoadBalancerStatsPublisher.java b/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/LoadBalancerStatsPublisher.java
index 5687d76..46f9b35 100644
--- a/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/LoadBalancerStatsPublisher.java
+++ b/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/LoadBalancerStatsPublisher.java
@@ -27,6 +27,17 @@ import java.util.Map;
 public interface LoadBalancerStatsPublisher {
 
     /**
+     * Set statistics publisher enabled or disabled.
+     * @param enabled
+     */
+    void setEnabled(boolean enabled);
+
+    /**
+     * Return enabled state of the statistics publisher.
+     */
+    boolean isEnabled();
+
+    /**
      * Publish statistics as a map of Cluster Id, In-flight Request Count.
      * @param stats
      */

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/12559b54/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/WSO2CEPStatsPublisher.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/WSO2CEPStatsPublisher.java b/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/WSO2CEPStatsPublisher.java
index a5685a0..a781fba 100644
--- a/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/WSO2CEPStatsPublisher.java
+++ b/components/org.apache.stratos.load.balancer.common/src/main/java/org/apache/stratos/load/balancer/common/statistics/WSO2CEPStatsPublisher.java
@@ -19,6 +19,7 @@
 
 package org.apache.stratos.load.balancer.common.statistics;
 
+import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.wso2.carbon.databridge.agent.thrift.Agent;
@@ -40,6 +41,7 @@ public class WSO2CEPStatsPublisher implements LoadBalancerStatsPublisher {
     private static final String CALL_CENTER_DATA_STREAM = "stratos.lb.stats";
     private static final String VERSION = "1.0.0";
     private AsyncDataPublisher asyncDataPublisher;
+    private boolean enabled = true;
 
     public WSO2CEPStatsPublisher() {
         AgentConfiguration agentConfiguration = new AgentConfiguration();
@@ -48,6 +50,10 @@ public class WSO2CEPStatsPublisher implements LoadBalancerStatsPublisher {
         //TODO read following from a config file?
         String ip = System.getProperty("thrift.receiver.ip");
         String port = System.getProperty("thrift.receiver.port");
+        String enabledStr = System.getProperty("load.balancer.stats.publisher.enabled");
+        if(StringUtils.isNotBlank(enabledStr)) {
+            enabled = Boolean.getBoolean(enabledStr);
+        }
 
         // Using asynchronous data publisher
         asyncDataPublisher = new AsyncDataPublisher("tcp://"+ip+":"+port+"", "admin", "admin", agent);
@@ -66,8 +72,17 @@ public class WSO2CEPStatsPublisher implements LoadBalancerStatsPublisher {
     }
 
     @Override
-    public void publish(Map<String, Integer> stats) {
+    public void setEnabled(boolean enabled) {
+        this.enabled = enabled;
+    }
+
+    @Override
+    public boolean isEnabled() {
+        return enabled;
+    }
 
+    @Override
+    public void publish(Map<String, Integer> stats) {
         for (Map.Entry<String, Integer> entry : stats.entrySet()) {
 
             Object[] payload = new Object[]{entry.getKey(), entry.getValue()};

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/12559b54/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerStatsNotifier.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerStatsNotifier.java b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerStatsNotifier.java
index dc5a8a6..47a545e 100644
--- a/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerStatsNotifier.java
+++ b/components/org.apache.stratos.load.balancer.extension.api/src/main/java/org/apache/stratos/load/balancer/extension/api/LoadBalancerStatsNotifier.java
@@ -66,7 +66,12 @@ public class LoadBalancerStatsNotifier implements Runnable {
                     }
                 }
                 if (stats.size() > 0) {
-                    statsPublisher.publish(stats);
+                    if(statsPublisher.isEnabled()) {
+                        statsPublisher.publish(stats);
+                    }
+                    else if (log.isWarnEnabled()) {
+                        log.warn("Load balancer statistics publisher is disabled");
+                    }
                 }
             } catch (Exception e) {
                 if (log.isErrorEnabled()) {

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/12559b54/components/org.apache.stratos.load.balancer/src/main/java/org/apache/stratos/load/balancer/statistics/observers/WSO2CEPStatsObserver.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.load.balancer/src/main/java/org/apache/stratos/load/balancer/statistics/observers/WSO2CEPStatsObserver.java b/components/org.apache.stratos.load.balancer/src/main/java/org/apache/stratos/load/balancer/statistics/observers/WSO2CEPStatsObserver.java
index b2e108a..ebc793b 100644
--- a/components/org.apache.stratos.load.balancer/src/main/java/org/apache/stratos/load/balancer/statistics/observers/WSO2CEPStatsObserver.java
+++ b/components/org.apache.stratos.load.balancer/src/main/java/org/apache/stratos/load/balancer/statistics/observers/WSO2CEPStatsObserver.java
@@ -22,9 +22,12 @@ import java.util.Map;
 import java.util.Observable;
 import java.util.Observer;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.load.balancer.common.statistics.WSO2CEPStatsPublisher;
 
 public class WSO2CEPStatsObserver implements Observer{
+    private static final Log log = LogFactory.getLog(WSO2CEPStatsObserver.class);
     private WSO2CEPStatsPublisher statsPublisher;
 
     public WSO2CEPStatsObserver() {
@@ -34,7 +37,12 @@ public class WSO2CEPStatsObserver implements Observer{
     public void update(Observable arg0, Object arg1) {
         if(arg1 != null && arg1 instanceof Map<?, ?>) {
             Map<String, Integer> stats = (Map<String, Integer>)arg1;
-            statsPublisher.publish(stats);
+            if(statsPublisher.isEnabled()) {
+                statsPublisher.publish(stats);
+            }
+            else if (log.isWarnEnabled()) {
+                log.warn("Load balancer statistics publisher is disabled");
+            }
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/12559b54/extensions/load-balancer/haproxy-extension/src/main/bin/haproxy-extension.sh
----------------------------------------------------------------------
diff --git a/extensions/load-balancer/haproxy-extension/src/main/bin/haproxy-extension.sh b/extensions/load-balancer/haproxy-extension/src/main/bin/haproxy-extension.sh
index bc19205..124ba09 100755
--- a/extensions/load-balancer/haproxy-extension/src/main/bin/haproxy-extension.sh
+++ b/extensions/load-balancer/haproxy-extension/src/main/bin/haproxy-extension.sh
@@ -36,6 +36,7 @@ properties="-Djndi.properties.dir=${script_path}/../conf
             -Djavax.net.ssl.trustStorePassword=wso2carbon
             -Dthrift.receiver.ip=localhost
             -Dthrift.receiver.port=7615"
+            -Dstratos.messaging.topology.service.filter=""
 
 # Uncomment below line to enable remote debugging
 #debug="-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005"

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/12559b54/products/load-balancer/modules/distribution/src/main/bin/stratos.bat
----------------------------------------------------------------------
diff --git a/products/load-balancer/modules/distribution/src/main/bin/stratos.bat b/products/load-balancer/modules/distribution/src/main/bin/stratos.bat
index 5fe0d9a..be63ec7 100644
--- a/products/load-balancer/modules/distribution/src/main/bin/stratos.bat
+++ b/products/load-balancer/modules/distribution/src/main/bin/stratos.bat
@@ -154,7 +154,7 @@ set CARBON_CLASSPATH=.\lib;%CARBON_CLASSPATH%
 
 set JAVA_ENDORSED=".\lib\endorsed";"%JAVA_HOME%\jre\lib\endorsed";"%JAVA_HOME%\lib\endorsed"
 
-set CMD_LINE_ARGS=-Xbootclasspath/a:%CARBON_XBOOTCLASSPATH% -Xms1500m -Xmx3000m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:-UseGCOverheadLimit -XX:+CMSClassUnloadingEnabled -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=%CARBON_HOME%\repository\logs\heap-dump.hprof -Dcom.sun.management.jmxremote -classpath %CARBON_CLASSPATH% %JAVA_OPTS% -Djava.endorsed.dirs=%JAVA_ENDORSED% -Dcarbon.registry.root=/ -Dcarbon.home="%CARBON_HOME%" -Dloadbalancer.conf="file:///%CARBON_HOME%/repository/conf/loadbalancer.conf" -Dwso2.server.standalone=true -Djava.command="%JAVA_HOME%\bin\java" -Djava.opts="%JAVA_OPTS%" -Djava.io.tmpdir="%CARBON_HOME%\tmp" -Dcatalina.base="%CARBON_HOME%\lib\tomcat" -Dwso2.carbon.xml=%CARBON_HOME%\repository\conf\carbon.xml -Dwso2.registry.xml="%CARBON_HOME%\repository\conf\registry.xml" -Dwso2.user.mgt.xml="%CARBON_HOME%\repository\conf\user-mgt.xml" -Djava.util.logging.config.file="%CARBON_HOME%\repository\conf\log4j.properties" -
 Dcarbon.config.dir.path="%CARBON_HOME%\repository\conf" -Djndi.properties.dir="%CARBON_HOME%/repository/conf" -Dconf.location="%CARBON_HOME%\repository\conf" -Dcarbon.logs.path="%CARBON_HOME%\repository\logs" -Dcomponents.repo="%CARBON_HOME%\repository\components" -Dcom.atomikos.icatch.file="%CARBON_HOME%\lib\transactions.properties" -Dcom.atomikos.icatch.hide_init_file_path="true" -Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true -Dcom.sun.jndi.ldap.connect.pool.authentication=simple -Dcom.sun.jndi.ldap.connect.pool.timeout=3000 -Dorg.terracotta.quartz.skipUpdateCheck=true -Dcarbon.classpath=%CARBON_CLASSPATH% -Dfile.encoding=UTF8 -Djavax.net.ssl.trustStore=$CARBON_HOME/repository/resources/security/client-truststore.jks -Djavax.net.ssl.trustStorePassword=wso2carbon -Dthrift.receiver.ip=localhost -Dthrift.receiver.port=7615 -Dstratos.messaging.topology.service.filter=""
+set CMD_LINE_ARGS=-Xbootclasspath/a:%CARBON_XBOOTCLASSPATH% -Xms1500m -Xmx3000m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:-UseGCOverheadLimit -XX:+CMSClassUnloadingEnabled -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=%CARBON_HOME%\repository\logs\heap-dump.hprof -Dcom.sun.management.jmxremote -classpath %CARBON_CLASSPATH% %JAVA_OPTS% -Djava.endorsed.dirs=%JAVA_ENDORSED% -Dcarbon.registry.root=/ -Dcarbon.home="%CARBON_HOME%" -Dloadbalancer.conf="file:///%CARBON_HOME%/repository/conf/loadbalancer.conf" -Dwso2.server.standalone=true -Djava.command="%JAVA_HOME%\bin\java" -Djava.opts="%JAVA_OPTS%" -Djava.io.tmpdir="%CARBON_HOME%\tmp" -Dcatalina.base="%CARBON_HOME%\lib\tomcat" -Dwso2.carbon.xml=%CARBON_HOME%\repository\conf\carbon.xml -Dwso2.registry.xml="%CARBON_HOME%\repository\conf\registry.xml" -Dwso2.user.mgt.xml="%CARBON_HOME%\repository\conf\user-mgt.xml" -Djava.util.logging.config.file="%CARBON_HOME%\repository\conf\log4j.properties" -
 Dcarbon.config.dir.path="%CARBON_HOME%\repository\conf" -Djndi.properties.dir="%CARBON_HOME%/repository/conf" -Dconf.location="%CARBON_HOME%\repository\conf" -Dcarbon.logs.path="%CARBON_HOME%\repository\logs" -Dcomponents.repo="%CARBON_HOME%\repository\components" -Dcom.atomikos.icatch.file="%CARBON_HOME%\lib\transactions.properties" -Dcom.atomikos.icatch.hide_init_file_path="true" -Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true -Dcom.sun.jndi.ldap.connect.pool.authentication=simple -Dcom.sun.jndi.ldap.connect.pool.timeout=3000 -Dorg.terracotta.quartz.skipUpdateCheck=true -Dcarbon.classpath=%CARBON_CLASSPATH% -Dfile.encoding=UTF8 -Djavax.net.ssl.trustStore=$CARBON_HOME/repository/resources/security/client-truststore.jks -Djavax.net.ssl.trustStorePassword=wso2carbon -Dthrift.receiver.ip=localhost -Dthrift.receiver.port=7615 -Dstratos.messaging.topology.service.filter="" -Dload.balancer.stats.publisher.enabled="false"
 
 :runJava
 echo JAVA_HOME environment variable is set to %JAVA_HOME%

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/12559b54/products/load-balancer/modules/distribution/src/main/bin/stratos.sh
----------------------------------------------------------------------
diff --git a/products/load-balancer/modules/distribution/src/main/bin/stratos.sh b/products/load-balancer/modules/distribution/src/main/bin/stratos.sh
index 1e17dcc..d4c53bb 100644
--- a/products/load-balancer/modules/distribution/src/main/bin/stratos.sh
+++ b/products/load-balancer/modules/distribution/src/main/bin/stratos.sh
@@ -299,6 +299,7 @@ exec "$JAVACMD" \
         -Dthrift.receiver.ip=localhost \
         -Dthrift.receiver.port=7615 \
         -Dstratos.messaging.topology.service.filter="" \
+        -Dload.balancer.stats.publisher.enabled="false" \
         org.wso2.carbon.bootstrap.Bootstrap $*
 
 


[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/e93bb7c9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/e93bb7c9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/e93bb7c9

Branch: refs/heads/master
Commit: e93bb7c9327cb7a618c06817818d83caf4c2363b
Parents: 12559b5 a9523bb
Author: Imesh Gunaratne <im...@apache.org>
Authored: Fri Nov 22 10:39:29 2013 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Fri Nov 22 10:39:29 2013 +0530

----------------------------------------------------------------------
 .../internal/ADCManagementServerComponent.java  |   5 +-
 .../mgt/listener/InstanceStatusListener.java    |  31 +-
 .../manager/CartridgeSubscriptionManager.java   |   3 +-
 .../adc/mgt/payload/NonCarbonPayload.java       |   4 +
 .../mgt/publisher/ArtifactUpdatePublisher.java  |  44 +-
 .../mgt/service/RepoNotificationService.java    |  11 +-
 .../mgt/utils/ApplicationManagementUtil.java    | 458 +------------
 .../adc/mgt/utils/PersistenceManager.java       |  31 +-
 .../adc/mgt/utils/RepoPasswordMgtUtil.java      |   9 +-
 .../deployers/DeploymentPolicyReader.java       |   2 +-
 .../synchronization/ArtifactUpdatedEvent.java   |  11 +-
 .../extension/FaultHandlingWindowProcessor.java | 180 +++++
 .../modules/deployment-synchronizer/pom.xml     |  81 +++
 .../synchronizer/ArtifactRepository.java        |  31 +
 .../synchronizer/RepositoryInformation.java     |  65 ++
 .../git/impl/GitBasedArtifactRepository.java    | 666 +++++++++++++++++++
 .../CustomJschConfigSessionFactory.java         |  64 ++
 .../GitDeploymentSynchronizerConstants.java     |  61 ++
 .../git/internal/RepositoryContext.java         | 131 ++++
 .../GitDeploymentSyncronizerConfiguration.java  |  29 +
 .../synchronizer/git/util/Utilities.java        |  73 ++
 .../modules/event-subscriber/pom.xml            |  13 +-
 .../src/main/bin/event-subscriber.sh            |   2 +-
 .../event/subscriber/ArtifactListener.java      |  90 ++-
 .../cartridge/agent/event/subscriber/Main.java  |   1 +
 .../src/main/bin/health-publisher.sh            |   2 +-
 .../agent/health/publisher/HealthPublisher.java |  23 +-
 .../health/publisher/HealthPublisherClient.java |  54 +-
 .../cartridge/agent/health/publisher/Main.java  |  26 +-
 products/cartridge-agent/pom.xml                |   1 +
 30 files changed, 1610 insertions(+), 592 deletions(-)
----------------------------------------------------------------------