[bcn-pm] Proceso de estadisticas avanzando
Xavier Noria
fxnahashref.com
Dil Maig 16 14:29:39 PDT 2005
On May 16, 2005, at 12:40, Jose Pedro Andres wrote:
> Buenas:
> Estoy programando un demonio para procesar las estadisticas web de
> una maquina con unos 500 dominios.
> El tema esta en que me gustaria borrar unicamente los logs de
> aquellas lineas que se hayan procesado ( para no sobrecargar la
> maquina
> las voy procesando de mil en mil lineas ).
> He probado con el modulo Tie::File, para usar el archivo de log
> como
> si de un array se tratara, pero con archivos grandes ( tengo logs de
> hasta 270 megas ), la maquina se pone a mil de carga en unos segundos.
No se si lo interpreto bien: Tienes archivos de log de 270MB y
quieres procesarlos por linea para enviarle datos a un proceso que
saca estadisticas. Para no cargar la maquina dices que los procesas
de 1000 en 1000.
Esto ultimo como lo haces? Invocas espaciadamente al script? Quieres
entonces cepillarte las primeras 1000 lineas? Que inconveniente tiene
la aproximacion mas simple
my $filename = shift;
open my $log, $filename or die $!;
my $i = 0;
while (my $line = <$log>) {
my @data = extract_data($line);
send_data_to_daemon(@data);
sleep 5 unless ++$i % 1000;
}
unlink $filename;
?
-- fxn
Més informació de la llista de correu Barcelona-pm