@Override public Object getValueAndReset() { try { ProcCpu cpu = _sigar.getProcCpu(_pid); long userTotal = cpu.getUser(); long sysTotal = cpu.getSys(); long user = userTotal - _prevUser; long sys = sysTotal - _prevSys; _prevUser = userTotal; _prevSys = sysTotal; HashMap<String, Long> ret = new HashMap<String, Long>(); ret.put("user-ms", user); ret.put("sys-ms", sys); return ret; } catch (Exception e) { throw new RuntimeException(e); } } }
@Override public boolean doMonitor(ServiceEmitter emitter) { // process CPU try { ProcCpu procCpu = sigar.getProcCpu(currentProcessId); final ServiceMetricEvent.Builder builder = builder(); MonitorUtils.addDimensionsToBuilder(builder, dimensions); // delta for total, sys, user Map<String, Long> procDiff = diff.to( "proc/cpu", ImmutableMap.of( "jvm/cpu/total", procCpu.getTotal(), "jvm/cpu/sys", procCpu.getSys(), "jvm/cpu/user", procCpu.getUser() ) ); if (procDiff != null) { for (Map.Entry<String, Long> entry : procDiff.entrySet()) { emitter.emit(builder.build(entry.getKey(), entry.getValue())); } } emitter.emit(builder.build("jvm/cpu/percent", procCpu.getPercent())); } catch (SigarException e) { log.error(e, "Failed to get ProcCpu"); } return true; } }
(short) (procCpu.getPercent() * 100), procCpu.getSys(), procCpu.getUser(), procCpu.getTotal()); } catch (SigarException e) {
@Override public long computeValue() throws SigarException { return sigar.getProcCpu(pid).getUser(); } });
long getProcessCpuTimeRunningUser( long pid ) { try { if( !isFaultyProcess( pid ) ) { return sigar.getProcCpu( pid ).getUser(); } } catch( SigarException se ) { updateFaultyProcessesList( pid ); } return -1; }
public AggregateProcCpu(List<ProcCpu> cpus) { for (ProcCpu cpu : cpus) { if (cpu != null) { sys += cpu.getSys(); user += cpu.getUser(); total += cpu.getTotal(); percent += cpu.getPercent(); // TODO: this looks the same as ProcTime - what's the diff? // TODO: what about percent and the others? } } } }
public AggregateProcCpu(List<ProcCpu> cpus) { for (ProcCpu cpu : cpus) { if (cpu != null) { sys += cpu.getSys(); user += cpu.getUser(); total += cpu.getTotal(); percent += cpu.getPercent(); // TODO: this looks the same as ProcTime - what's the diff? // TODO: what about percent and the others? } } } }
break; case USER: cur = cpu.getUser(); val = prev > 0 ? cur - prev : 0; prev = cur;
break; case USER: cur = cpu.getUser(); val = prev > 0 ? cur - prev : 0; prev = cur;
@Override public boolean doMonitor(ServiceEmitter emitter) { // process CPU try { ProcCpu procCpu = sigar.getProcCpu(currentProcessId); final ServiceMetricEvent.Builder builder = builder(); MonitorUtils.addDimensionsToBuilder(builder, dimensions); // delta for total, sys, user Map<String, Long> procDiff = diff.to( "proc/cpu", ImmutableMap.of( "jvm/cpu/total", procCpu.getTotal(), "jvm/cpu/sys", procCpu.getSys(), "jvm/cpu/user", procCpu.getUser() ) ); if (procDiff != null) { for (Map.Entry<String, Long> entry : procDiff.entrySet()) { emitter.emit(builder.build(entry.getKey(), entry.getValue())); } } emitter.emit(builder.build("jvm/cpu/percent", procCpu.getPercent())); } catch (SigarException e) { log.error(e, "Failed to get ProcCpu"); } return true; } }
@Override public boolean doMonitor(ServiceEmitter emitter) { // process CPU try { ProcCpu procCpu = sigar.getProcCpu(currentProcessId); final ServiceMetricEvent.Builder builder = builder(); MonitorUtils.addDimensionsToBuilder(builder, dimensions); // delta for total, sys, user Map<String, Long> procDiff = diff.to( "proc/cpu", ImmutableMap.of( "jvm/cpu/total", procCpu.getTotal(), "jvm/cpu/sys", procCpu.getSys(), "jvm/cpu/user", procCpu.getUser() ) ); if (procDiff != null) { for (Map.Entry<String, Long> entry : procDiff.entrySet()) { emitter.emit(builder.build(entry.getKey(), entry.getValue())); } } emitter.emit(builder.build("jvm/cpu/percent", procCpu.getPercent())); } catch (SigarException e) { log.error(e, "Failed to get ProcCpu"); } return true; } }
@Override public boolean doMonitor(ServiceEmitter emitter) { // process CPU try { ProcCpu procCpu = sigar.getProcCpu(currentProcessId); final ServiceMetricEvent.Builder builder = builder(); MonitorUtils.addDimensionsToBuilder(builder, dimensions); // delta for total, sys, user Map<String, Long> procDiff = diff.to( "proc/cpu", ImmutableMap.of( "jvm/cpu/total", procCpu.getTotal(), "jvm/cpu/sys", procCpu.getSys(), "jvm/cpu/user", procCpu.getUser() ) ); if (procDiff != null) { for (Map.Entry<String, Long> entry : procDiff.entrySet()) { emitter.emit(builder.build(entry.getKey(), entry.getValue())); } } emitter.emit(builder.build("jvm/cpu/percent", procCpu.getPercent())); } catch (SigarException e) { log.error(e, "Failed to get ProcCpu"); } return true; } }
@Override public boolean doMonitor(ServiceEmitter emitter) { // process CPU try { ProcCpu procCpu = sigar.getProcCpu(currentProcessId); final ServiceMetricEvent.Builder builder = builder(); MonitorUtils.addDimensionsToBuilder(builder, dimensions); // delta for total, sys, user Map<String, Long> procDiff = diff.to( "proc/cpu", ImmutableMap.of( "jvm/cpu/total", procCpu.getTotal(), "jvm/cpu/sys", procCpu.getSys(), "jvm/cpu/user", procCpu.getUser() ) ); if (procDiff != null) { for (Map.Entry<String, Long> entry : procDiff.entrySet()) { emitter.emit(builder.build(entry.getKey(), entry.getValue())); } } emitter.emit(builder.build("jvm/cpu/percent", procCpu.getPercent())); } catch (SigarException e) { log.error(e, "Failed to get ProcCpu"); } return true; } }
@Override public boolean doMonitor(ServiceEmitter emitter) { // process CPU try { ProcCpu procCpu = sigar.getProcCpu(currentProcessId); final ServiceMetricEvent.Builder builder = builder(); MonitorUtils.addDimensionsToBuilder(builder, dimensions); // delta for total, sys, user Map<String, Long> procDiff = diff.to( "proc/cpu", ImmutableMap.of( "jvm/cpu/total", procCpu.getTotal(), "jvm/cpu/sys", procCpu.getSys(), "jvm/cpu/user", procCpu.getUser() ) ); if (procDiff != null) { for (Map.Entry<String, Long> entry : procDiff.entrySet()) { emitter.emit(builder.build(entry.getKey(), entry.getValue())); } } emitter.emit(builder.build("jvm/cpu/percent", procCpu.getPercent())); } catch (SigarException e) { log.error(e, "Failed to get ProcCpu"); } return true; } }
(short) (procCpu.getPercent() * 100), procCpu.getSys(), procCpu.getUser(), procCpu.getTotal()); } catch (SigarException e) {
(short) (procCpu.getPercent() * 100), procCpu.getSys(), procCpu.getUser(), procCpu.getTotal()); } catch (SigarException e) {