J’utilise très bien le profileur rack mini dans les rails, mais au cours de certaines sessions de codage, en particulier lorsque je travaille sur beaucoup de codes côté client différents, cela fait obstacle. (principalement dans mes outils de débogage des graphiques de réseau, etc.)
J’essaie de l’éteindre avec un filtre avant, qui sert également à voir si l’utilisateur est autorisé à voir le profil de toute façon, mais “deauthorize” ne semble rien faire pour moi. Voici mon code appelé comme filtre avant:
def miniprofiler off = true if off || !current_user Rack::MiniProfiler.deauthorize_request return elsif current_user.role_symbols.include?(:view_page_profiles) Rack::MiniProfiler.authorize_request return end Rack::MiniProfiler.deauthorize_request end
Je sais aussi qu’il y a un paramètre “Rack :: MiniProfiler.config.authorization_mode” mais je ne trouve pas de document sur les parameters possibles, et ne pas le voir utilisé dans le code? En ce moment, il me dit: allow_all, mais: allow_none ne fait rien non plus.
Même si je peux simplement définir temporairement une valeur dans le fichier d’environnement de développement et redémarrer le serveur, cela servirait mes objectives.
Obtenez les dernières informations et tapez:
http://mysite.com?pp=disable
Lorsque vous avez fini de taper
http://mysite.com?pp=enable
Voir ?pp=help
pour toutes les options:
Ajoutez ce qui suit à votre chaîne de requête: pp = help: affiche cet écran pp = env: affiche l'environnement du rack pp = sauter: sauter le mini profileur pour cette requête pp = no-backtrace: ne collecte pas les traces de stack de tous les SQL exécutés (collant, utilisez pp = normal-backtrace pour l'activer) pp = normal-backtrace (*): collecte les traces de stack de tous les SQL exécutés et filtre normalement pp = full-backtrace: active les backtraces complètes pour SQL exécuté (utilisez pp = normal-backtrace pour le désactiver) pp = sample: exemple de traces de stack et retour d'un rapport isolant un usage intensif (le test fonctionne mieux avec le gem de stacktrace) pp = disable: désactive le profilage pour cette session pp = activer: active le profilage pour cette session (si précédemment désactivé) pp = profile-gc: effectue le profilage gc sur cette requête, parsing ObjectSpace généré par la requête (ruby 1.9.3 uniquement) pp = profile-gc-time: effectue un profilage gc intégré sur cette requête (ruby 1.9.3 uniquement)
Vous pouvez également utiliser Alt+p
pour basculer.
Si vous souhaitez que l’éditeur de profil soit désactivé initialement, puis que vous l’activiez à la demande, ajoutez un rappel préautorisé dans un fichier d’initialisation tel que:
Rack::MiniProfiler.config.pre_authorize_cb = lambda {|env| ENV['RACK_MINI_PROFILER'] == 'on'}
puis dans votre contrôleur d’application, ajoutez un before_filter qui recherche le paramètre pp
before_filter :activate_profiler def activate_profiler ENV['RACK_MINI_PROFILER'] = 'on' if params['pp'] ENV['RACK_MINI_PROFILER'] = 'off' if params['pp'] == 'disabled' end
RACK_MINI_PROFILER ne sera pas défini initialement dans votre environnement, mais si vous souhaitez l’activer, vous pouvez utiliser l’option? pp = activé sur votre URL. Ensuite, vous pouvez désactiver à nouveau plus tard (le pp = désactivé ne le désactivera que pour la session en cours, mais si vous désactivez la variable ENV, elle sera complètement supprimée jusqu’à ce que vous la réactiviez).