You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by cw...@apache.org on 2016/10/26 17:15:37 UTC
svn commit: r1766707 -
/uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java
Author: cwiklik
Date: Wed Oct 26 17:15:36 2016
New Revision: 1766707
URL: http://svn.apache.org/viewvc?rev=1766707&view=rev
Log:
UIMA-5047 Fixed NPE when computing CPU Usage while a process state=Initializing
Modified:
uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java
Modified: uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java?rev=1766707&r1=1766706&r2=1766707&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/processors/LinuxProcessMetricsProcessor.java Wed Oct 26 17:15:36 2016
@@ -320,8 +320,16 @@ public class LinuxProcessMetricsProcesso
.equals(ProcessState.Initializing)
) {
if (agent.useCgroups && totalCpuUsageInMillis != -1) {
+
+ long timeRunning = 1;
+ if ( process.getTimeWindowInit() != null ) {
+ timeRunning = process.getTimeWindowInit().getElapsedMillis();
+ }
+ if ( process.getTimeWindowRun() != null ) {
+ timeRunning += process.getTimeWindowRun().getElapsedMillis();
+ }
// normalize time in running state into seconds
- percentCPU = Math.round(100*( (totalCpuUsageInMillis*1.0)/ (process.getTimeWindowRun().getElapsedMillis()*1.0)));
+ percentCPU = Math.round(100*( (totalCpuUsageInMillis*1.0)/ (timeRunning*1.0)));
process.setCpuTime( percentCPU );
} else {
process.setCpuTime(-1); // -1 stands for N/A