Nell'ambiente development
, il registratore delle rotaie registra tutti gli eventi ActionCable che a volte sono fastidiosi (per il mio progetto, ogni tanto trasmette messaggi e la coda del registro è in esecuzione come un cavallo selvaggio). Qual è un modo efficace per sopprimere tutti i registri eventi da ActionCable? Inoltre, come posso sopprimere alcuni eventi specifici di ActionCable?Disabilita il log delle rotaie per gli eventi ActionCable
8
A
risposta
3
Stesso discorso, finalmente ho trovato una soluzione. Si dovrebbe ignorare un codice in /app/channels/application_cable/channel.rb come segue
module ApplicationCable
class Channel < ActionCable::Channel::Base
def dispatch_action(action, data)
#logger.info action_signature(action, data)
if method(action).arity == 1
public_send action, data
else
public_send action
end
end
end
end
È possibile simulare il comportamento originale decommentando fuori #logger.info action_signature(action, data)
linea.
Grazie.
5
Per disattivare completamente la registrazione da ActionCable si dovrebbe configurare ActionCable da usare logger che non fanno altro
ActionCable.server.config.logger = Logger.new(nil)
+3
Per chiarire, questa riga va in config/environments/development.rb – corpico
Questo non ha aiutato ... Ho cercato il codice sorgente e ha scoperto che il cavo d'azione sono molte funzioni che utilizzano registrazione ... non solo dispatch_action ... –