Sha256: 9282ac0e6c97c14d6c52fdf6952e292265ac6f9f51015967621ed08843712abc
Contents?: true
Size: 1.02 KB
Versions: 34
Compression:
Stored size: 1.02 KB
Contents
# encoding: utf-8 module OneApm class Transaction @@java_classes_loaded = false if defined? JRuby begin require 'java' java_import 'java.lang.management.ManagementFactory' java_import 'com.sun.management.OperatingSystemMXBean' @@java_classes_loaded = true rescue end end JRUBY_CPU_TIME_ERROR = "Error calculating JRuby CPU Time".freeze def jruby_cpu_time return nil unless @@java_classes_loaded threadMBean = Java::JavaLangManagement::ManagementFactory.getThreadMXBean() return nil unless threadMBean.isCurrentThreadCpuTimeSupported java_utime = threadMBean.getCurrentThreadUserTime() # ns -1 == java_utime ? 0.0 : java_utime/1e9 rescue => e OneApm::Manager.logger.log_once(:warn, :jruby_cpu_time, JRUBY_CPU_TIME_ERROR, e) OneApm::Manager.logger.debug(JRUBY_CPU_TIME_ERROR, e) nil end def jruby_cpu_burn return unless @jruby_cpu_start jruby_cpu_time - @jruby_cpu_start end end end
Version data entries
34 entries across 34 versions & 1 rubygems