2012-01-27 15 views
10

Me gustaría enviar un trabajo con Platform LSF y tener la salida colocada en un archivo (bsub -o), sin un informe de trabajo al final de la misma. El uso de bsub -N elimina el informe de trabajo del archivo, pero en su lugar envía el informe por correo electrónico. ¿Hay alguna manera de suprimirlo por completo?¿Puedo suprimir un informe de trabajo LSF sin enviar correo?

Respuesta

5

¿Qué hay de redirigir la salida del comando a un archivo y enviar el informe a/dev/null:

bsub -o /dev/null "ls > job.\$LSB_JOBID.out" 
+0

Esta puede ser la única forma de hacerlo. Sin embargo, tener que agregar otra capa de envoltura es torpe. –

0

Se me ocurren dos formas de hacerlo. Uno es un enfoque un poco "martillo", pero tal vez funcione para usted.

Primero, podría configurar un alias de correo electrónico que sea el equivalente de correo electrónico de/dev/null, y luego usar la opción -u a bsub para enviar el informe de correo electrónico a ese usuario.

En segundo lugar (la almádena), podría establecer LSB_MAILPROG en la configuración LSF para apuntar a un script envoltorio de sendmail que podría: a) analizar el informe y basarlo en determinadas coincidencias de texto, ob) eliminar todos los correos electrónicos.

De lo contrario, está como pegado con el encabezado en el archivo indicado por -o.

+0

Desafortunadamente, cuando ejecuto miles de trabajos, enviar los correos electrónicos será demasiada carga en el servidor de correo. Tampoco puedo cambiar la configuración de LSF. –

+1

Una queja común con LSF. Quizás valga la pena que el administrador deshabilite los informes de correo electrónico utilizando el truco LSB_MAILPROG. :-) –

0

uso de una combinación de "-o", "-e", "N" y "-u/dev/null" en la línea de comandos BSUB a suprimir por completo informe de trabajo y dirección de correo, por ejemplo:

$ bsub -N -u /dev/null -o command.stdout -e command.stderr command options 

Desafortunadamente, esto también desactivar completamente los informes de errores de trabajos.

+0

¿No hará esto que el correo sea enviado a '/ dev/null @ localdomain'? Mi administrador de sistemas realmente no le gusta eso. –

1

logré hacer este trabajo usando la opción -N como sugerido a BSUB y la supresión de entrega de correo electrónico mediante el uso de la variable de entorno:

para (t) usuarios CSH:

setenv LSB_JOB_REPORT_MAIL N 

Para Bourne Shell y sus variantes:

export LSB_JOB_REPORT_MAIL=N 

Es un poco complicado, pero hace el trabajo.

Cuestiones relacionadas