Esecuzione di tail -f

Salve a tutti,
Avrei un piccolo problema…
In un programma eseguo il seguente codice per collegarmi a un server ftp
e ricavare le sue linee del file di log (che poi andranno parsate…).

Il codice è il seguente:

require ‘rubygems’
require ‘net/ssh’

Net::SSH.start(“192.168.2.76”, “alessandro”, :password => “metal4ever”)
do |ssh|
ssh.exec “tail -f -n0 /var/log/vsftpd.log” do |ch, success|
exit 3 unless success
ch.on_data do |ch, data|
data.each("\n") do |line|
f = File.open(“tail.txt”, “a”)
f.puts line
f.puts “----------------------------------------”
end #FINE BLOCCO EACH sui dati
end #FINE BLOCCO ON_DATA
end
end #FINE BLOCCO CONNESSIONE SSH

al posto delle istruzioni per salvare su file verrà richiamato il metodo
per eseguire il parsing delle linee…
Il problema è che andando ad aprire il file di testo noto che alcune
righe vengono spezzate in due. E questo non è un buon segno in quanto
poi il parser non riconoscerà alcune righe e registrerà poi in futuro
cose errate.

Qualcuno ha già riscontrato questo problema?
Oppure saprebbe dirmi come risolverlo?

Grazie

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs