J'utilise ce code pour activer la journalisation dans mon application SINATRA:
logger.debug("Starting call. Params = #{params.inspect}")
3 Réponses :
Je suppose qu'il pourrait y avoir une meilleure façon, mais vous pouvez toujours faire quelque chose comme définir le niveau de journal dans un avant code> filtre:
Je pensais à la même chose, mais j'espère qu'il y a une meilleure façon que cela.
Si vous utilisez Rackup, je suppose que vous pouvez modifier votre enregistreur dans votre fichier .ru code>, comme l'enregistreur de SINATRA est en fait celui du rack.
Je n'ai pas pu trouver une meilleure solution, d'où accepter cette réponse.
Je cherche un moyen de définir ceci dans un bloc de configuration
@Davesag: Qu'en est-il de l'autre réponse, il semble prometteur pour votre cas?
Ok j'ai adapté la réponse de @ David-Faber et ça fonctionne. Postera ci-dessous.
Vous pouvez définir le niveau de journal à l'aide de
def setup_custom_logger(builder) if logging.respond_to? :to_int builder.use Rack::Logger, logging else builder.use Rack::Logger end end
Dans ma situation La seule façon dont je pouvais obtenir la journalisation de travailler de manière fiable était la suivante: (Exemple simplifié)
Tout d'abord, j'ai configuré le dossier de l'enregistreur et du journal comme suit: P>
configure :test do set :logging, Logger::ERROR end configure :development do set :logging, Logger::DEBUG end configure :production do set :logging, Logger::INFO end