Cron y ruby

Hola a todos,

Necesito largar tareas cada cierta cantidad de tiempo y supongo que cron
es
la alternativa a utilizar, lo que me gustaría es que alguien me de
alguna
idea de como arrancar con esto, como donde poner el archivo ruby, si
tiene
que tener algún formato especial o algo así, es que nunca lo he
utilizado.

desde ya gracias a todos,
saludos,

Puede poner el archivo de cron y el archivo de ruby donde quiera. A
veces hay una archivo de cron del sistema que esta en /etc que puede
usar, pero no necesite usalo.

Por tareas simples, ruby functiona bien, pero si quiere usar sus
objectos de rails, tal vez debria usar rake en vez de ruby. Para usar
ruby, ponga su archive donde quiera y en el archivo de cron escriba el
ubicación completo del archivo de ruby.

Cree un archivo de cron como así:

crontab -e

En el archivo de cron escriba:
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/local/bin/ruby
/home/blythe/cron_tarea.rb
(esa es cada 5 minutos, ruby esta en /usr/local/bin/ruby y mi archivo de
ruby esta en cron_tarea.rb)

Soló pude encontrar información de cron en ingles…
http://www.clickmojo.com/code/cron-tutorial.html

o en Unix use

man cron


From: [email protected]
[mailto:[email protected]] On Behalf Of Juan P.
Sent: Thursday, November 16, 2006 8:17 PM
To: La lista sobre Ruby On Rails (rubyonrails.com) en castellano
Subject: [Ror-es] cron y ruby

Hola a todos,

Necesito largar tareas cada cierta cantidad de tiempo y supongo que cron
es la alternativa a utilizar, lo que me gustaría es que alguien me de
alguna idea de como arrancar con esto, como donde poner el archivo ruby,
si tiene que tener algún formato especial o algo así, es que nunca lo he
utilizado.

desde ya gracias a todos,
saludos,


Juan P. Re.
blog: http://ururails.wordpress.com/

On 11/17/06, Juan P. [email protected] wrote:

Hola a todos,

Necesito largar tareas cada cierta cantidad de tiempo y supongo que cron es
la alternativa a utilizar, lo que me gustaría es que alguien me de alguna
idea de como arrancar con esto, como donde poner el archivo ruby, si tiene
que tener algún formato especial o algo así, es que nunca lo he utilizado.

Si tu aplicación es Rails, puedes usar script/runner, o bien de manera
algo más pedestre lanzar un wget o curl hacia una acción específica de
tu aplicación.

http://wiki.rubyonrails.org/rails/pages/HowToRunBackgroundJobsInRails/

Muchas gracias a todos,

al final me decidi por utilizar script/runner pero hay algo que no esta
andando, y quiero ver si alguien se da cuenta porque.

Cuando yo corro este comando desde la linea de comando ruby
script/runner ’
Notice.cargar_feeds’ -e development >> /home/juanpare/cron.txt anda
bien,
pero cuando se corre desde cron, solamente me crea el archivo cron.txt
como
si corriera pero el codigo ruby no esta andando.

Abajo pongo el codigo que tengo en crontab.

MAILTO=“”
*/5 * * * * /usr/bin/ruby script/runner ‘Notice.cargar_feeds’ -e
development

/home/juanpare/cron.txt

hay algun log que genere el cron para ver que esta pasando?

muchas gracias,
Juan P.

2006/11/17, Iñaki [email protected]:

El Viernes, 17 de Noviembre de 2006 02:44, Blythe Dunham escribió:

En el archivo de cron escriba:
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/local/bin/ruby
/home/blythe/cron_tarea.rb (esa es cada 5 minutos, ruby esta en
/usr/local/bin/ruby y mi archivo de ruby esta en cron_tarea.rb)

Más “bonito”:
*/5 * * * * /usr/local/bin/ruby /home/blythe/cron_tarea.rb

Y mejor aún, le das permiso de ejecución al programilla en Ruby:
chmod +x /home/blythe/cron_tarea.rb

y en su primera línea pones:
#!/usr/bin/ruby

Luego: crontab -e
*/5 * * * * /home/blythe/cron_tarea.rb

Si no quieres que cron envíe un correo cada vez que se ejecuta puedes
añadir
en “crontab -e”:
MAIL=""

Toda la info y más aquí:
man 5 crontab

woah lo del runner no lo sabía, cada día flipo mas con rails

gracias!!

El 17/11/2006, a las 8:44, Juan Lupión escribió:

utilizado.
http://sobrerailes.com


Ror-es mailing list
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es

marze
[email protected]

El Viernes, 17 de Noviembre de 2006 21:55, Juan P. escribió:

Abajo pongo el codigo que tengo en crontab.

MAILTO=""
*/5 * * * * /usr/bin/ruby script/runner ‘Notice.cargar_feeds’ -e
development >> /home/juanpare/cron.txt

Aquí hay un fallo:
/usr/bin/ruby script/runner

¿Dónde está el directorio “script”? Tú sí lo sabes y seguramente lanzas
el
comando a mano desde el directorio padre, pero Cron no lo sabe. Prueba a
poner el path completo, en plan:
/usr/bin/ruby /home/usuario/proyecto_rails/script/runner

hay algun log que genere el cron para ver que esta pasando?

El mejor log es el correo que envía Cron pero que tú has anulado al
fijar
MAIL="".

Pon “MAIL=tu_usuario” y recibirás el correo en /var/lib/mail/tu_usuario.
Es un
buzón mboz que puedes manejar concualquier cliente de correo.

Suerte.

Ahora si anda! muchas gracias.

El día 17/11/06, Iñaki [email protected] escribió: