lib/raven/context.rb in sentry-raven-3.0.4 vs lib/raven/context.rb in sentry-raven-3.1.0

- old
+ new

@@ -1,6 +1,7 @@ require 'rbconfig' +require 'etc' module Raven class Context def self.current Thread.current[:sentry_context] ||= new @@ -22,21 +23,25 @@ self.transaction = [] end class << self def os_context - @os_context ||= { - :name => Raven.sys_command("uname -s") || RbConfig::CONFIG["host_os"], - :version => Raven.sys_command("uname -v"), - :build => Raven.sys_command("uname -r"), - :kernel_version => Raven.sys_command("uname -a") || Raven.sys_command("ver") # windows - } + @os_context ||= + begin + uname = Etc.uname + { + name: uname[:sysname] || RbConfig::CONFIG["host_os"], + version: uname[:version], + build: uname[:release], + kernel_version: uname[:version] + } + end end def runtime_context @runtime_context ||= { - :name => RbConfig::CONFIG["ruby_install_name"], - :version => Raven.sys_command("ruby -v") + name: RbConfig::CONFIG["ruby_install_name"], + version: RUBY_DESCRIPTION || Raven.sys_command("ruby -v") } end end end end