You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2016/11/08 18:40:11 UTC

[8/9] airavata git commit: Implementing cluster status monitoring

Implementing cluster status monitoring


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/914799c1
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/914799c1
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/914799c1

Branch: refs/heads/develop
Commit: 914799c13c228342908cb542f2d0ed109ad918d2
Parents: b5d7796
Author: scnakandala <su...@gmail.com>
Authored: Tue Nov 8 13:32:19 2016 -0500
Committer: scnakandala <su...@gmail.com>
Committed: Tue Nov 8 13:32:19 2016 -0500

----------------------------------------------------------------------
 .../server/handler/AiravataServerHandler.java   |    14 +
 .../java/org/apache/airavata/api/Airavata.java  | 41301 +++++++++--------
 .../main/resources/lib/airavata/Airavata.cpp    |  1010 +-
 .../src/main/resources/lib/airavata/Airavata.h  |   152 +
 .../lib/airavata/Airavata_server.skeleton.cpp   |     5 +
 .../airavata/compute_resource_model_types.cpp   |   257 +-
 .../lib/airavata/compute_resource_model_types.h |    10 +-
 .../lib/airavata/status_models_types.cpp        |   201 +
 .../lib/airavata/status_models_types.h          |    67 +
 .../resources/lib/Airavata/API/Airavata.php     |   465 +-
 .../Model/AppCatalog/ComputeResource/Types.php  |    45 +-
 .../lib/Airavata/Model/Status/Types.php         |   190 +
 .../lib/apache/airavata/api/Airavata-remote     |     7 +
 .../lib/apache/airavata/api/Airavata.py         |   347 +-
 .../model/appcatalog/computeresource/ttypes.py  |    42 +-
 .../lib/apache/airavata/model/status/ttypes.py  |   142 +
 .../computeresource/CloudJobSubmission.java     |   145 +-
 .../computeresource/ResourceJobManagerType.java |     5 +-
 modules/cluster-monitoring/pom.xml              |    31 +-
 .../monitoring/ClusterHealthMonitor.java        |   265 -
 .../monitoring/ClusterStatusMonitorJob.java     |   279 +
 .../ClusterStatusMonitorJobScheduler.java       |    70 +
 .../src/main/resources/cluster-properties.json  |    53 -
 .../src/main/resources/id_rsa                   |    30 -
 .../src/main/resources/id_rsa.pub               |     1 -
 .../common/utils/ApplicationSettings.java       |     8 +
 .../src/main/resources/CLOUD_Groovy.template    |     7 -
 .../main/resources/airavata-server.properties   |     5 +
 .../server/src/main/resources/gfac-config.yaml  |     2 -
 .../store/cpi/CredentialStoreService.java       |     2 +-
 .../store/datamodel/CertificateCredential.java  |    27 +-
 .../store/datamodel/CommunityUser.java          |    26 +-
 .../store/datamodel/PasswordCredential.java     |    27 +-
 .../store/datamodel/SSHCredential.java          |    27 +-
 .../store/datamodel/SSHCredentialSummary.java   |    27 +-
 .../exception/CredentialStoreException.java     |     2 +-
 .../src/main/assembly/bin-assembly.xml          |     1 -
 .../apache/airavata/gfac/cpi/GfacService.java   |     2 +-
 .../apache/airavata/gfac/core/GFacUtils.java    |   301 +-
 .../apache/airavata/gfac/core/GroovyMap.java    |     9 -
 .../org/apache/airavata/gfac/impl/Factory.java  |    13 +-
 .../gfac/impl/task/AuroraJobSubmission.java     |   148 +
 .../gfac/impl/task/AuroraJobSubmissionTask.java |   147 -
 .../impl/task/DefaultJobSubmissionTask.java     |    14 +-
 .../orchestrator/cpi/OrchestratorService.java   |    30 +-
 .../orchestrator/orchestrator-service/pom.xml   |     5 +
 .../orchestrator/server/OrchestratorServer.java |    17 +-
 .../core/experiment/catalog/ResourceType.java   |     3 +-
 .../catalog/impl/ExperimentCatalogImpl.java     |    20 +-
 .../catalog/impl/ExperimentRegistry.java        |    33 +
 .../experiment/catalog/model/QueueStatus.java   |    99 +
 .../experiment/catalog/model/QueueStatusPK.java |    88 +
 .../catalog/resources/QueueStatusResource.java  |   208 +
 .../src/main/resources/META-INF/persistence.xml |     1 +
 .../src/main/resources/expcatalog-derby.sql     |    10 +
 .../src/main/resources/expcatalog-mysql.sql     |     9 +
 .../catalog/QueueStatusResourceTest.java        |    76 +
 .../registry/cpi/ExpCatParentDataType.java      |     3 +-
 .../cpi/ExperimentCatalogModelType.java         |     3 +-
 .../service/handler/RegistryServerHandler.java  |    42 +-
 .../airavata/registry/api/RegistryService.java  |  5531 ++-
 .../api/exception/RegistryServiceException.java |     2 +-
 modules/sharing-registry/pom.xml                |    12 +-
 .../sharing-data-migrator/pom.xml               |     7 +-
 .../sharing-registry-distribution/pom.xml       |    14 +-
 .../sharing-registry-server/pom.xml             |    11 +-
 .../sharing-registry-stubs/pom.xml              |     5 +-
 .../airavata-apis/airavata_api.thrift           |     5 +
 .../component-cpis/registry-api.thrift          |     8 +
 .../status_models.thrift                        |     9 +
 .../compute_resource_model.thrift               |    12 +-
 71 files changed, 28902 insertions(+), 23290 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/914799c1/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index 6c6c07f..0f56747 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
@@ -73,6 +73,7 @@ import org.apache.airavata.model.security.AuthzToken;
 import org.apache.airavata.model.status.ExperimentState;
 import org.apache.airavata.model.status.ExperimentStatus;
 import org.apache.airavata.model.status.JobStatus;
+import org.apache.airavata.model.status.QueueStatusModel;
 import org.apache.airavata.model.workspace.Gateway;
 import org.apache.airavata.model.workspace.Notification;
 import org.apache.airavata.model.workspace.Project;
@@ -3684,6 +3685,19 @@ public class AiravataServerHandler implements Airavata.Iface {
     }
 
     @Override
+    public List<QueueStatusModel> getLatestQueueStatuses(AuthzToken authzToken) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
+        try {
+            return getRegistryServiceClient().getLatestQueueStatuses();
+        } catch (ApplicationSettingsException | RegistryServiceException e) {
+            String msg = "Error in retrieving queue statuses";
+            logger.error(msg, e);
+            AiravataSystemException exception = new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR);
+            exception.setMessage(msg+" More info : " + e.getMessage());
+            throw exception;
+        }
+    }
+
+    @Override
     @SecurityCheck
     public WorkflowModel getWorkflow(AuthzToken authzToken, String workflowTemplateId)
             throws InvalidRequestException, AiravataClientException, AuthorizationException, AiravataSystemException, TException {