Sha256: 7b850c8a7c1f85567672bca471f60ca200cadc969b43a290ba8219eb406964f0

Contents?: true

Size: 753 Bytes

Versions: 1

Compression:

Stored size: 753 Bytes

Contents

module God
  module Conditions
    
    class DiskUsage < PollCondition
      attr_accessor :above, :mount_point
      
      def initialize
        super
        self.above = nil
        self.mount_point = nil
      end
      
      def valid?
        valid = true
        valid &= complain("Attribute 'mount_point' must be specified", self) if self.mount_point.nil?
        valid &= complain("Attribute 'above' must be specified", self) if self.above.nil?
        valid
      end
      
      def test
        usage = `df | grep -i " #{self.mount_point}$" | awk '{print $5}' | sed 's/%//'`
        self.info = "Disk usage is #{usage.to_i} percent, which is above #{self.above} percent"
        usage.to_i > self.above
      end
    end
    
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
jreynolds-god-0.7.13 lib/god/conditions/disk_usage.rb