Class: Riemann::Babbler::Plugin::FindFiles
- Inherits:
-
Riemann::Babbler::Plugin
- Object
- Riemann::Babbler::Plugin
- Riemann::Babbler::Plugin::FindFiles
- Defined in:
- lib/riemann/babbler/plugins/find_files.rb
Constant Summary
Constants included from Riemann::Babbler::Plugins::Helpers
Riemann::Babbler::Plugins::Helpers::RIEMANN_RESERVED_FIELDS
Constants included from Errors
Errors::CONNECTION_PROBLEM, Errors::INIT_CONNECT, Errors::RESOLV_RIEMANN_SERVER, Errors::USER_CALL_SHUTDOWN
Instance Attribute Summary
Attributes inherited from Riemann::Babbler::Plugin
#errors, #plugin, #plugin_name, #riemann
Instance Method Summary collapse
Methods inherited from Riemann::Babbler::Plugin
#get_state, inherited, #initialize, #not_minimize_sent_event, #plugin_error!, #plugin_no_error!, registered_plugins, #report, #report_with_diff, #run!, #run_plugin, #set_default, #set_last_event, #tick
Methods included from Riemann::Babbler::Plugins::Helpers
#event_from_hash, #event_from_json, #rest_get, #shell, #unixnow
Methods included from Options
included, #merge_config, #name_to_underscore, #opts, #opts_reset!, #underscore_to_name
Methods included from Logging
#get_logger_speaker, included, #log, #set_logger_speaker
Constructor Details
This class inherits a constructor from Riemann::Babbler::Plugin
Instance Method Details
#collect ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/riemann/babbler/plugins/find_files.rb', line 14 def collect return [] unless File.directory?(plugin.dir) count_files = 0 file_mask = Regexp.new(plugin.file_mask) Find.find(plugin.dir).each do |file| next unless File.file? file next unless file_mask.match file next unless Time.now.to_i - (plugin.age * 60) > File.new(file).mtime.to_i count_files += 1 end { :service => plugin.service, :metric => count_files, :description => "Count files in #{plugin.dir}" } end |
#init ⇒ Object
5 6 7 8 9 10 11 12 |
# File 'lib/riemann/babbler/plugins/find_files.rb', line 5 def init plugin.set_default(:service, 'find files') plugin.set_default(:interval, 60) plugin.set_default(:file_mask, '.*') # file search mask plugin.set_default(:dir, '/tmp/directory') # search in dir plugin.set_default(:age, 1440) # in minute plugin.states.set_default(:warning, 5) end |