Author: jim.ma
Date: 2009-08-21 03:50:28 -0400 (Fri, 21 Aug 2009)
New Revision: 5501
Modified:
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/ProcessDefComponent.java
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/connector/JBPMEngineConnection.java
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/connector/LocalJBPMEngineConnector.java
projects/jopr-integration/trunk/src/main/resources/META-INF/rhq-plugin.xml
Log:
Added component to display the activity average duration
Modified:
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/ProcessDefComponent.java
===================================================================
---
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/ProcessDefComponent.java 2009-08-20
20:32:10 UTC (rev 5500)
+++
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/ProcessDefComponent.java 2009-08-21
07:50:28 UTC (rev 5501)
@@ -107,6 +107,10 @@
return report;
}
+ public String getResourceKey() {
+ return this.resourceContext.getResourceKey();
+ }
+
}
Modified:
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/connector/JBPMEngineConnection.java
===================================================================
---
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/connector/JBPMEngineConnection.java 2009-08-20
20:32:10 UTC (rev 5500)
+++
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/connector/JBPMEngineConnection.java 2009-08-21
07:50:28 UTC (rev 5501)
@@ -23,6 +23,7 @@
import java.io.File;
import java.util.List;
+import java.util.Map;
import org.jbpm.api.Deployment;
import org.jbpm.api.ProcessDefinition;
@@ -46,4 +47,5 @@
Deployment getDeployment(String deploymentId);
public List<Job> queryJob(boolean timerOnly , boolean messageOnly, boolean
exception, String processInstanceId);
Job getJob(String jobId);
+ Map<String, Long> avgDurationPerActivity(String processDefinitionId);
}
Modified:
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/connector/LocalJBPMEngineConnector.java
===================================================================
---
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/connector/LocalJBPMEngineConnector.java 2009-08-20
20:32:10 UTC (rev 5500)
+++
projects/jopr-integration/trunk/src/main/java/org/rhq/plugins/jbpm4/connector/LocalJBPMEngineConnector.java 2009-08-21
07:50:28 UTC (rev 5501)
@@ -26,6 +26,7 @@
import java.io.FileNotFoundException;
import java.net.URL;
import java.util.List;
+import java.util.Map;
import java.util.zip.ZipInputStream;
import javax.naming.InitialContext;
@@ -167,5 +168,9 @@
public ProcessInstance startProcessInstance(String defId) {
return processEngine.getExecutionService().startProcessInstanceById(defId);
}
+
+ public Map<String, Long> avgDurationPerActivity(String processDefinitionId) {
+ return processEngine.getHistoryService().avgDurationPerActivity(processDefinitionId);
+ }
}
Modified: projects/jopr-integration/trunk/src/main/resources/META-INF/rhq-plugin.xml
===================================================================
--- projects/jopr-integration/trunk/src/main/resources/META-INF/rhq-plugin.xml 2009-08-20
20:32:10 UTC (rev 5500)
+++ projects/jopr-integration/trunk/src/main/resources/META-INF/rhq-plugin.xml 2009-08-21
07:50:28 UTC (rev 5501)
@@ -1,188 +1,177 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<plugin name="JBPM4-Plugin" displayName="JBPM4-Plugin"
- package="org.rhq.plugins.jbpm4" description="Provides monitoring of JBoss
JBPM"
- version="2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="urn:xmlns:rhq-plugin"
xmlns:c="urn:xmlns:rhq-configuration">
+<plugin name="JBPM4-Plugin" displayName="JBPM4-Plugin"
package="org.rhq.plugins.jbpm4"
+ description="Provides monitoring of JBoss JBPM" version="2.0"
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:xmlns:rhq-plugin"
+ xmlns:c="urn:xmlns:rhq-configuration">
<depends plugin="JMX" />
<depends plugin="JBossAS5" useClasses="true" />
- <service name="JBPM4 Engine"
- discovery="ProcessEngineDiscoveryComponent"
- class="ProcessEngineComponent"
- description="JBPM4" singleton="true">
+ <service name="JBPM4 Engine"
discovery="ProcessEngineDiscoveryComponent"
+ class="ProcessEngineComponent" description="JBPM4"
singleton="true">
<runs-inside>
<parent-resource-type name="JBossAS Server"
plugin="JBossAS5" />
</runs-inside>
- <subcategories>
- <subcategory name="Jobs"
- description="The jbos without exception">
- </subcategory>
- </subcategories>
+ <subcategories>
+ <subcategory name="Jobs" description="The jbos without
exception">
+ </subcategory>
+ </subcategories>
<plugin-configuration>
- <c:simple-property name="objectName" readOnly="true"
default="org.jbpm:service=ServerConfig" />
- <c:simple-property name="nameTemplate" default="JBPM4
Engine"/>
+ <c:simple-property name="objectName" readOnly="true"
+ default="org.jbpm:service=ServerConfig" />
+ <c:simple-property name="nameTemplate" default="JBPM4 Engine"
/>
<c:simple-property name="DescriptionTemplate"
- default="JBPM4 Engine"/>
+ default="JBPM4 Engine" />
</plugin-configuration>
-
- <metric property="deployedProcessNumber" dataType="measurement"
displayType="summary" defaultOn="true"
- description="Deployed process number" />
- <metric property="processInstancNumber" dataType="measurement"
displayType="summary" defaultOn="true"
- description="Process instances number includes started and suspended"
/>
- <metric property="jobsNumber" dataType="measurement"
displayType="summary" defaultOn="true"
- description="the number of normal jobs" />
- <metric property="exceptionalJobsNumber" dataType="measurement"
displayType="summary" defaultOn="true"
- description="the number of exceptional jobs" />
-
-
- <service name="Timer"
- discovery="TimerDiscoveryComponent"
- class="JobComponent"
- subCategory="Jobs"
- description="JBPM timers jobs">
- <metric property="id" displayName="id"
dataType="trait" displayType="summary" defaultOn="true"
- description="job id" />
- <metric property="duedate" displayName="duedate"
dataType="trait" displayType="summary" defaultOn="true"
- description="job duedate" />
- <metric property="lockExpirationTime"
displayName="lockExpirationTime" dataType="trait"
displayType="summary" defaultOn="true"
- description="job lockExpirationTime" />
- <metric property="lockOwner" displayName="lockOwner"
dataType="trait" displayType="summary" defaultOn="true"
- description="job lockOwner" />
- <metric property="isExclusive" displayName="isExclusive"
dataType="trait" displayType="summary" defaultOn="true"
- description="job isExclusive" />
- <metric property="exception" displayName="exception"
dataType="trait" displayType="summary" defaultOn="true"
- description="job exception" />
+ <metric property="deployedProcessNumber" dataType="measurement"
+ displayType="summary" defaultOn="true" description="Deployed
process number" />
+ <metric property="processInstancNumber" dataType="measurement"
+ displayType="summary" defaultOn="true"
+ description="Process instances number includes started and suspended" />
+
+ <metric property="jobsNumber" dataType="measurement"
+ displayType="summary" defaultOn="true" description="the
number of normal jobs" />
+ <metric property="exceptionalJobsNumber" dataType="measurement"
+ displayType="summary" defaultOn="true" description="the
number of exceptional jobs" />
+
+
+ <service name="Timer" discovery="TimerDiscoveryComponent"
+ class="JobComponent" subCategory="Jobs" description="JBPM
timers jobs">
+ <metric property="id" displayName="id"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
id" />
+ <metric property="duedate" displayName="duedate"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
duedate" />
+ <metric property="lockExpirationTime"
displayName="lockExpirationTime"
+ dataType="trait" displayType="summary"
defaultOn="true"
+ description="job lockExpirationTime" />
+ <metric property="lockOwner" displayName="lockOwner"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
lockOwner" />
+ <metric property="isExclusive" displayName="isExclusive"
+ dataType="trait" displayType="summary" defaultOn="true"
description="job isExclusive" />
+ <metric property="exception" displayName="exception"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
exception" />
</service>
-
- <service name="Message"
- discovery="MessageDiscoveryComponent"
- class="JobComponent"
- subCategory="Jobs"
- description="JBPM message jobs">
- <metric property="id" displayName="id"
dataType="trait" displayType="summary" defaultOn="true"
- description="job id" />
- <metric property="duedate" displayName="duedate"
dataType="trait" displayType="summary" defaultOn="true"
- description="job duedate" />
- <metric property="lockExpirationTime"
displayName="lockExpirationTime" dataType="trait"
displayType="summary" defaultOn="true"
- description="job lockExpirationTime" />
- <metric property="lockOwner" displayName="lockOwner"
dataType="trait" displayType="summary" defaultOn="true"
- description="job lockOwner" />
- <metric property="isExclusive" displayName="isExclusive"
dataType="trait" displayType="summary" defaultOn="true"
- description="job isExclusive" />
- <metric property="exception" displayName="exception"
dataType="trait" displayType="summary" defaultOn="true"
- description="job exception" />
+
+ <service name="Message" discovery="MessageDiscoveryComponent"
+ class="JobComponent" subCategory="Jobs" description="JBPM
message jobs">
+ <metric property="id" displayName="id"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
id" />
+ <metric property="duedate" displayName="duedate"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
duedate" />
+ <metric property="lockExpirationTime"
displayName="lockExpirationTime"
+ dataType="trait" displayType="summary"
defaultOn="true"
+ description="job lockExpirationTime" />
+ <metric property="lockOwner" displayName="lockOwner"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
lockOwner" />
+ <metric property="isExclusive" displayName="isExclusive"
+ dataType="trait" displayType="summary" defaultOn="true"
description="job isExclusive" />
+ <metric property="exception" displayName="exception"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
exception" />
</service>
-
- <service name="Exceptional Jobs"
- discovery="ExceptionJobDiscoveryComponent"
- class="JobComponent"
- subCategory="Jobs"
- description="JBPM exceptional jobs">
- <metric property="id" displayName="id"
dataType="trait" displayType="summary" defaultOn="true"
- description="job id" />
- <metric property="duedate" displayName="duedate"
dataType="trait" displayType="summary" defaultOn="true"
- description="job duedate" />
- <metric property="lockExpirationTime"
displayName="lockExpirationTime" dataType="trait"
displayType="summary" defaultOn="true"
- description="job lockExpirationTime" />
- <metric property="lockOwner" displayName="lockOwner"
dataType="trait" displayType="summary" defaultOn="true"
- description="job lockOwner" />
- <metric property="isExclusive" displayName="isExclusive"
dataType="trait" displayType="summary" defaultOn="true"
- description="job isExclusive" />
- <metric property="exception" displayName="exception"
dataType="trait" displayType="summary" defaultOn="true"
- description="job exception" />
+
+ <service name="Exceptional Jobs"
discovery="ExceptionJobDiscoveryComponent"
+ class="JobComponent" subCategory="Jobs" description="JBPM
exceptional jobs">
+ <metric property="id" displayName="id"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
id" />
+ <metric property="duedate" displayName="duedate"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
duedate" />
+ <metric property="lockExpirationTime"
displayName="lockExpirationTime"
+ dataType="trait" displayType="summary"
defaultOn="true"
+ description="job lockExpirationTime" />
+ <metric property="lockOwner" displayName="lockOwner"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
lockOwner" />
+ <metric property="isExclusive" displayName="isExclusive"
+ dataType="trait" displayType="summary" defaultOn="true"
description="job isExclusive" />
+ <metric property="exception" displayName="exception"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
exception" />
</service>
-
-
-
-
-
- <service name="Process Deployments"
- discovery="ProcessDeploymentDiscoveryComponent"
- class="ProcessDeploymentComponent"
- createDeletePolicy="both"
- creationDataType="content"
- description="JBPM Process Deployment">
- <metric property="id" displayName="id"
dataType="trait" displayType="summary" defaultOn="true"
- description="deployment id" />
- <metric property="name" displayName="name"
dataType="trait" displayType="summary" defaultOn="true"
- description="deployment name" />
- <metric property="timestamp" displayName="timestamp"
dataType="trait" displayType="summary" defaultOn="true"
- description="deployment timestamp" />
- <metric property="state" displayName="state"
dataType="trait" displayType="summary" defaultOn="true"
- description="deployment state" />
-
- <content name="file" displayName="jBPM Process File"
+
+ <service name="Process Deployments"
discovery="ProcessDeploymentDiscoveryComponent"
+ class="ProcessDeploymentComponent" createDeletePolicy="both"
+ creationDataType="content" description="JBPM Process
Deployment">
+ <metric property="id" displayName="id"
dataType="trait"
+ displayType="summary" defaultOn="true"
description="deployment id" />
+ <metric property="name" displayName="name"
dataType="trait"
+ displayType="summary" defaultOn="true"
description="deployment name" />
+ <metric property="timestamp" displayName="timestamp"
dataType="trait"
+ displayType="summary" defaultOn="true"
description="deployment timestamp" />
+ <metric property="state" displayName="state"
dataType="trait"
+ displayType="summary" defaultOn="true"
description="deployment state" />
+
+ <content name="file" displayName="jBPM Process File"
category="deployable" isCreationType="true">
- </content>
+ </content>
</service>
- <service name="Process Definitions"
- discovery="ProcessDefDiscoveryComponent"
- class="ProcessDefComponent"
- description="JBPM Process Definitions">
- <metric property="version" displayName="version"
dataType="trait" displayType="summary" defaultOn="true"
- description="Process definition version" />
- <metric property="id" displayName="id"
dataType="trait" displayType="summary" defaultOn="true"
+ <service name="Process Definitions"
discovery="ProcessDefDiscoveryComponent"
+ class="ProcessDefComponent" description="JBPM Process
Definitions">
+ <metric property="version" displayName="version"
dataType="trait"
+ displayType="summary" defaultOn="true" description="Process
definition version" />
+ <metric property="id" displayName="id"
dataType="trait"
+ displayType="summary" defaultOn="true" description="Process
definition id" />
+ <metric property="description" displayName="description"
+ dataType="trait" displayType="summary"
defaultOn="true"
description="Process definition id" />
- <metric property="description" displayName="description"
dataType="trait" displayType="summary" defaultOn="true"
- description="Process definition id" />
-
- <service name="Process Instances"
- discovery="ProcessInstanceDiscoveryComponent"
- class="ProcessInstanceComponent"
- createDeletePolicy="both"
- creationDataType="configuration"
- description="Process Instance">
-
- <metric property="id" displayName="id"
- dataType="trait" displayType="summary"
defaultOn="true"
- description="Process instance id" />
+ <service name="Activies"
discovery="ActivityDiscoveryComponent"
+ class="ActivityComponent" description="Process Activity">
+ <metric property="name" displayName="name"
dataType="trait"
+ displayType="summary" defaultOn="true"
description="ActivityName" />
+
+ <metric property="avgDuration" displayName="avgDuration"
dataType="trait"
+ displayType="summary" defaultOn="true"
description="Activity average duration" />
+ </service>
+
+ <service name="Process Instances"
discovery="ProcessInstanceDiscoveryComponent"
+ class="ProcessInstanceComponent" createDeletePolicy="both"
+ creationDataType="configuration" description="Process
Instance">
+
+ <metric property="id" displayName="id"
dataType="trait"
+ displayType="summary" defaultOn="true" description="Process
instance id" />
+
<metric property="key" displayName="key"
dataType="trait"
- displayType="summary" defaultOn="true"
- description="Process instance key" />
+ displayType="summary" defaultOn="true" description="Process
instance key" />
- <metric property="name" displayName="name"
- dataType="trait" displayType="summary"
defaultOn="true"
- description="Process instance name" />
+ <metric property="name" displayName="name"
dataType="trait"
+ displayType="summary" defaultOn="true" description="Process
instance name" />
- <metric property="priority" displayName="priority"
- dataType="trait" displayType="summary"
defaultOn="true"
- description="Process instance priority" />
+ <metric property="priority" displayName="priority"
dataType="trait"
+ displayType="summary" defaultOn="true" description="Process
instance priority" />
<metric property="definitionId" displayName="definitionId"
dataType="trait" displayType="summary"
defaultOn="true"
description="Process definition id" />
-
- <metric property="status" displayName="status"
- dataType="trait" displayType="summary"
defaultOn="true"
- description="Process instance status" />
- <resource-configuration>
- <c:simple-property name="start instance"
displayName="startInstance" type="boolean" required="true"
- default="true">
- </c:simple-property>
- </resource-configuration>
- <service name="Jobs"
- discovery="InstanceJobDiscoveryComponent"
- class="JobComponent"
- description="JBPM jobs">
- <metric property="id" displayName="id"
dataType="trait" displayType="summary" defaultOn="true"
- description="job id" />
- <metric property="duedate" displayName="duedate"
dataType="trait" displayType="summary" defaultOn="true"
- description="job duedate" />
- <metric property="lockExpirationTime"
displayName="lockExpirationTime" dataType="trait"
displayType="summary" defaultOn="true"
- description="job lockExpirationTime" />
- <metric property="lockOwner" displayName="lockOwner"
dataType="trait" displayType="summary" defaultOn="true"
- description="job lockOwner" />
- <metric property="isExclusive" displayName="isExclusive"
dataType="trait" displayType="summary" defaultOn="true"
- description="job isExclusive" />
- <metric property="exception" displayName="exception"
dataType="trait" displayType="summary" defaultOn="true"
- description="job exception" />
- </service>
+
+ <metric property="status" displayName="status"
dataType="trait"
+ displayType="summary" defaultOn="true" description="Process
instance status" />
+ <resource-configuration>
+ <c:simple-property name="start instance"
+ displayName="startInstance" type="boolean"
required="true"
+ default="true">
+ </c:simple-property>
+ </resource-configuration>
+ <service name="Jobs"
discovery="InstanceJobDiscoveryComponent"
+ class="JobComponent" description="JBPM jobs">
+ <metric property="id" displayName="id"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
id" />
+ <metric property="duedate" displayName="duedate"
dataType="trait"
+ displayType="summary" defaultOn="true" description="job
duedate" />
+ <metric property="lockExpirationTime"
displayName="lockExpirationTime"
+ dataType="trait" displayType="summary"
defaultOn="true"
+ description="job lockExpirationTime" />
+ <metric property="lockOwner" displayName="lockOwner"
+ dataType="trait" displayType="summary"
defaultOn="true"
+ description="job lockOwner" />
+ <metric property="isExclusive" displayName="isExclusive"
+ dataType="trait" displayType="summary"
defaultOn="true"
+ description="job isExclusive" />
+ <metric property="exception" displayName="exception"
+ dataType="trait" displayType="summary"
defaultOn="true"
+ description="job exception" />
+ </service>
</service>
- </service>
+ </service>
</service>
</plugin>