Skip to content

Commit

Permalink
Change database field names for datacollector lib
Browse files Browse the repository at this point in the history
  • Loading branch information
beque committed Feb 1, 2024
1 parent 580b222 commit 64c9359
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 18 deletions.
18 changes: 7 additions & 11 deletions lib/datacollector/fcollector.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,11 @@ def execute(use_sftp)

devices(use_sftp).each do |device| # rubocop:disable Metrics/BlockLength
@current_collector = nil
method_params = device.profile.data['method_params']
host = method_params['host']
case method_params['authen']
host = device.datacollector_host
case device.datacollector_authentication
when 'keyfile'
user = method_params['user']
kp = key_path(method_params['key_name'])
user = device.datacollector_user
kp = key_path(device.datacollector_key_name)
unless kp.file? && kp.exist?
log_info "No key file found <<< #{device.info}" unless kp.file? && kp.exist?
next
Expand All @@ -38,10 +37,10 @@ def execute(use_sftp)
}
when 'password', nil
credentials = Rails.configuration.datacollectors.sftpusers.find do |user_attr|
user_attr[:user] == method_params['user']
user_attr[:user] == device.datacollector_user
end
unless credentials
log_info("No match user credentials! user: #{method_params['user']} >>> #{device.info}")
log_info("No match user credentials! user: #{device.datacollector_user} >>> #{device.info}")
next
end
user = credentials[:user]
Expand Down Expand Up @@ -77,10 +76,7 @@ def execute(use_sftp)
private

def devices(use_sftp)
sql = <<~SQL.squish
profiles."data"->>'method' = '#{self.class::FCOLL}watcher#{use_sftp ? 'sftp' : 'local'}'
SQL
Device.joins(:profile).where(sql).includes(:profile)
Device.where(datacollector_method: "#{self.class::FCOLL}watcher#{use_sftp ? 'sftp' : 'local'}")
end

def key_path(key_name)
Expand Down
2 changes: 1 addition & 1 deletion lib/datacollector/filecollector.rb
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ class Filecollector < Fcollector
# rubocop:disable Metrics/AbcSize

def inspect_folder(device)
directory = device.profile.data['method_params']['dir']
directory = device.datacollector_dir
new_files(directory).each do |new_file_p| # rubocop:disable Metrics/BlockLength
@current_collector = DatacollectorFile.new(new_file_p, @sftp)
error = CollectorError.find_by error_code: CollectorHelper.hash(
Expand Down
11 changes: 5 additions & 6 deletions lib/datacollector/foldercollector.rb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ def sleep_seconds(device)

def modification_time_diff(device, folder_p)
time_now = Time.zone.now
case device.profile.data['method']
case device.datacollector_method
when 'folderwatcherlocal' then time_now - File.mtime(folder_p)
when 'folderwatchersftp'
time_now - (Time.zone.at @sftp.file.open(folder_p).stat.attributes[:mtime])
Expand All @@ -31,10 +31,9 @@ def modification_time_diff(device, folder_p)
# rubocop:disable Metrics/PerceivedComplexity

def inspect_folder(device)
params = device.profile.data['method_params']
sleep_time = sleep_seconds(device).to_i
new_folders(params['dir']).each do |new_folder_p| # rubocop:disable Metrics/BlockLength
if (params['number_of_files'].blank? || (params['number_of_files']).to_i.zero?) &&
new_folders(device.datacollector_dir).each do |new_folder_p| # rubocop:disable Metrics/BlockLength
if (device.datacollector_number_of_files.blank? || device.datacollector_number_of_files.to_i.zero?) &&
modification_time_diff(device, new_folder_p) < 30
sleep sleep_time
end
Expand All @@ -48,8 +47,8 @@ def inspect_folder(device)
begin
stored = false
if @current_collector.recipient
if params['number_of_files'].present? && params['number_of_files'].to_i != 0 &&
@current_collector.files.length != params['number_of_files'].to_i
if device.datacollector_number_of_files.present? && device.datacollector_number_of_files.to_i != 0 &&
@current_collector.files.length != device.datacollector_number_of_files.to_i
log_info("Wrong number of files! >>> #{device.info}")
next
end
Expand Down

0 comments on commit 64c9359

Please sign in to comment.