diff options
author | Jesse Wolfe <jes5199@gmail.com> | 2011-03-01 11:38:02 -0800 |
---|---|---|
committer | Jesse Wolfe <jes5199@gmail.com> | 2011-03-01 11:44:33 -0800 |
commit | 026eba3a7b568e6ef7c8ea8032ea49c65dfd8295 (patch) | |
tree | 979af558cf94f7bf2f66a7a553a18de130c4ea83 /lib/puppet/util | |
parent | 448a439f5abc3d51accececb678e9c5f547f7615 (diff) | |
download | puppet-026eba3a7b568e6ef7c8ea8032ea49c65dfd8295.tar.gz puppet-026eba3a7b568e6ef7c8ea8032ea49c65dfd8295.tar.xz puppet-026eba3a7b568e6ef7c8ea8032ea49c65dfd8295.zip |
Revert #5691 "Merge remote branch 'brice/feature/process-instrumentation' into next"
This reverts commit 448a439f5abc3d51accececb678e9c5f547f7615, reversing
changes made to 06939c51a3f675137b53fac8a521132a4c9cfcbe.
As per discussion in http://projects.puppetlabs.com/issues/5691#note-5
Diffstat (limited to 'lib/puppet/util')
-rw-r--r-- | lib/puppet/util/instrumentation.rb | 12 | ||||
-rw-r--r-- | lib/puppet/util/instrumentation/process_name.rb | 129 |
2 files changed, 0 insertions, 141 deletions
diff --git a/lib/puppet/util/instrumentation.rb b/lib/puppet/util/instrumentation.rb deleted file mode 100644 index 5981bea59..000000000 --- a/lib/puppet/util/instrumentation.rb +++ /dev/null @@ -1,12 +0,0 @@ -require 'puppet/util/instrumentation/process_name' - -module Puppet::Util::Instrumentation - - def instrument(title) - Puppet::Util::Instrumentation::ProcessName.instrument(title) do - yield - end - end - module_function :instrument - -end
\ No newline at end of file diff --git a/lib/puppet/util/instrumentation/process_name.rb b/lib/puppet/util/instrumentation/process_name.rb deleted file mode 100644 index 370d29e2e..000000000 --- a/lib/puppet/util/instrumentation/process_name.rb +++ /dev/null @@ -1,129 +0,0 @@ -require 'puppet' -require 'puppet/util/instrumentation' - -module Puppet::Util::Instrumentation - class ProcessName - - # start scrolling when process name is longer than - SCROLL_LENGTH = 50 - - @active = false - class << self - attr_accessor :active, :reason - end - - trap(:QUIT) do - active? ? disable : enable - end - - def self.active? - !! @active - end - - def self.enable - mutex.synchronize do - Puppet.info("Process Name instrumentation is enabled") - @active = true - @x = 0 - setproctitle - end - end - - def self.disable - mutex.synchronize do - Puppet.info("Process Name instrumentation is disabled") - @active = false - $0 = @oldname - end - end - - def self.instrument(activity) - # inconditionnally start the scroller thread here - # because it doesn't seem possible to start a new thrad - # from the USR2 signal handler - @scroller ||= Thread.new do - loop do - scroll if active? - sleep 1 - end - end - - push_activity(Thread.current, activity) - yield - ensure - pop_activity(Thread.current) - end - - def self.setproctitle - @oldname ||= $0 - $0 = "#{base}: " + rotate(process_name,@x) if active? - end - - def self.push_activity(thread, activity) - mutex.synchronize do - @reason ||= {} - @reason[thread] ||= [] - @reason[thread].push(activity) - setproctitle - end - end - - def self.pop_activity(thread) - mutex.synchronize do - @reason[thread].pop - if @reason[thread].empty? - @reason.delete(thread) - end - setproctitle - end - end - - def self.process_name - out = (@reason || {}).inject([]) do |out, reason| - out << "#{thread_id(reason[0])} #{reason[1].join(',')}" - end - out.join(' | ') - end - - # certainly non-portable - def self.thread_id(thread) - thread.inspect.gsub(/^#<.*:0x([a-f0-9]+) .*>$/, '\1') - end - - def self.rotate(string, steps) - steps ||= 0 - if string.length > 0 && steps > 0 - steps = steps % string.length - return string[steps..string.length].concat " -- #{string[0..(steps-1)]}" - end - string - end - - def self.base - basename = case Puppet.run_mode.name - when :master - "master" - when :agent - "agent" - else - "puppet" - end - end - - def self.mutex - #Thread.exclusive { - @mutex ||= Sync.new - #} - @mutex - end - - def self.scroll - return if process_name.length < SCROLL_LENGTH - mutex.synchronize do - setproctitle - @x += 1 - end - end - - end -end
\ No newline at end of file |