Hola estoy intentando, poner una marca de tiempo distinta a Time.now ,
en cada invocacion del logger, para ello he hecho un metodo, lo pongo
mas abajo por si le sirve a alguien.
el caso es que podria ponerlo en un controller, para tenerlo accesible,
pero asi tendria que estar replicando el codigo en cada uno de los
controller, ¿me recomendais algun sitio? he pensado en abrir el logger y
añadirle el metodo, pero donde podria hacer eso? en los initializers?.
Gracias!!!
def time_mark
t = Time.now
result = Time.now.strftime(Time.now.strftime("%Y/%m/%d-%H:%M:%S %Z "))
if t.utc_offset >= 0
result += '+'
else
result += ' -'
end
if (t.utc_offset / 3600) < 10
result += '0'
end
result += (t.utc_offset / 3600).to_s + ':'
if (t.utc_offset % 3600) < 10
result += '0'
end
result += (t.utc_offset % 3600).to_s
return result
end
# un ejemplo de uso seria
logger.debug "#{time_marking}"
2009/06/24-09:59:56 CEST +02:00
on 2009-06-24 23:03
on 2009-06-24 23:08
Tal vez este railscasts es lo que andas buscando. http://railscasts.com/episodes/56-the-logger Suerte, - Juan 2009/6/24 Asaf Asaf <ruby-forum-incoming@andreas-s.net>
on 2009-06-24 23:58
2009/6/24 Asaf Asaf <ruby-forum-incoming@andreas-s.net>: >  end >  result += (t.utc_offset / 3600).to_s + ':' >  if (t.utc_offset % 3600) < 10 >   result += '0' >  end >  result += (t.utc_offset % 3600).to_s >  return result > end > No está realmente relaciónado con tu pregunta, pero una cosa, al copiar has puesto dos invocaciones a Time.now.strftime, que supongo que no es correcto. Por otro lado, un poco de limpieza: def time_mark now = Time.now date_hour = now.strftime("%Y/%m/%d-%H:%M:%S %Z") sprintf("#{date_hour} %+03d:%02d", now.utc_offset / 3600, now.utc_offset % 3600) end (Cosa curiosa: en el caso de las horas, tiene que ser un 3 porque parece que el signo cuenta para el "ancho" del campo. No se es un peculiaridad de Ruby o viene de la función original del C, pero desde luego era algo que no esperaba).
on 2009-06-25 01:47
Digo yo, no puedes meter el método en el application_controller.rb y con un before_filter en este mismo llamarlo siempre? 2009/6/24 Daniel Rodriguez Troitiño <notzcoolx@yahoo.es>:
on 2009-06-25 07:47
> > No está realmente relaciónado con tu pregunta, pero una cosa, al > copiar has puesto dos invocaciones a Time.now.strftime, que supongo > que no es correcto. > cierto, se me paso, gracias por la corrección. > Por otro lado, un poco de limpieza: > > def time_mark > now = Time.now > date_hour = now.strftime("%Y/%m/%d-%H:%M:%S %Z") > sprintf("#{date_hour} %+03d:%02d", now.utc_offset / 3600, > now.utc_offset % 3600) > end > > (Cosa curiosa: en el caso de las horas, tiene que ser un 3 porque > parece que el signo cuenta para el "ancho" del campo. No se es un > peculiaridad de Ruby o viene de la función original del C, pero desde > luego era algo que no esperaba). mucho más limpio, no conocia sprintf, lo tendre en cuenta. Gracias!!
on 2009-06-25 12:08
Ceritium wrote: > Digo yo, no puedes meter el m�todo en el application_controller.rb y > con un before_filter en este mismo llamarlo siempre? > > 2009/6/24 Daniel Rodriguez Troiti�o <notzcoolx@yahoo.es>: Yo también me inclinaria por esa opcion
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.