Quiero un método que se ejecutará cada 5 minutos, cada vez que he implementado para Ruby (cron). Pero no funciona. Creo que mi método no es accesible. El método que quiero ejecutar se encuentra en una clase. Creo que tengo que hacer ese método estático para poder acceder a él con MyClass.MyMethod
. Pero no puedo encontrar la sintaxis correcta o tal vez estoy buscando en el lugar equivocado.Ruby on Rails - Método estático
Schedule.rb
every 5.minutes do
runner "Ping.checkPings"
end
Ping.rb
def checkPings
gate = Net::Ping::External.new("10.10.1.1")
@monitor_ping = Ping.new()
if gate.ping?
MonitorPing.WAN = true
else
MonitorPing.WAN = false
end
@monitor_ping.save
end
I no se puede reproducir el último ejemplo, 'def checkPings extends self'. ¿Es esta sintaxis válida? –
Tu clase tiene que ampliarse para hacer que todos los métodos estén estáticos dentro de la clase. – Ashish