Dans le passé, je pensais être juste fou. Je peux être, mais mon journal de production ne répond pas à certaines demandes. Je pose des images sur My Rails App à partir d'un client mobile, puis d'obtenir une vue actualisée dans un navigateur Web. L'enregistrement modifié est clairement visible. Aucune de ces informations ci-dessus ne se présente dans mon journal de production, mais des demandes similaires ont été enregistrées il y a une heure. Je n'ai pas changé de fichiers de configuration. Je n'ai pas redémarré mon serveur. Toute suggestion quant à la raison pour laquelle cela se produit? P>
7 Réponses :
Vérifiez quelle valeur est définie sur dans votre p> fyi p> Les niveaux de journalisation disponibles sont :: Débogage,
: info ,: avertir ,: error,: fatal. p>
blockQuote> Donc, si vous définissez le niveau sur fatal, seules les erreurs sérieuses seront enregistrées. Si vous le définissez à déboguer, presque tout sera enregistré. Par défaut dans la production, il est prêt à avertir. C'est avec une bonne raison. Comme vous ne voulez pas que les fichiers journaux énormes s'accumulent sur votre serveur de production sans raison. P> P>
config.Consider_all_requests_local = true config.action_controller.perform_caching = false config.log_level =: débogage (défini il y a cinq jours)
Est-il possible qu'il existe une sorte de couche de cache entre-deux? C'est répondant aux demandes de votre client? Pouvez-vous vérifier que l'application Rails obtient réellement les demandes que vous souhaitez qu'il connecte?
Je ne sais pas ce que l'autre couche de cache serait. J'utilise Cloudflare pour DNS Security / Caching / Analytics, mais il est en "mode de développement" qui ne s'applique qu'aux fichiers statiques de toute façon. Si mes téléchargements d'image sont affichés avec succès dans l'application Rails, je ne vois pas pourquoi ils ne seraient pas enregistrés.
Toujours rien: mon environnement local n'est pas connecté lors de la production de production
Juste pour être approfondi, le log_level pour la production est: info. Pour le développement et le test, c'est: débogage. Guides.RubyonRails.org/v3.2.12/...
La mémoire faible est la cause la plus probable que j'ai pu venir avec. Je posterai ici si je peux le prouver. P>
J'ai résolu le problème en mettant dans mes configuration / initialiseurs /...< p> p>
Méthode non définie 'Sync =' pour Nil: Nilclass (Nométhoderror) Code> Rails 4.1.2
Dans quel fichier avez-vous mis cela?
@Carl Tout fichier se terminant par .rb dans Config / Initialiseurs. Il est courant d'ajouter un nombre quelconque de fichiers que vous voulez là-bas. Par exemple, vous pouvez le mettre dans un fichier appelé config / initialiseurs / setup_logger_sync.rb
Dans mon cas, j'ai d'abord ajouté config.log_level =: débogage code> à
production.rb code> fichier puis je devais créer le
production.log code> Fichier (dans le dossier de journal), puis donnant des autorisations appropriées avec la commande
chmod code>. p>
Quelles sont les autorisations appropriées?
@unclesol, je pense 0644
J'ai eu le même problème lié au journal de production.
de tracer le problème avec le serveur Web: strong> p> Message de l'application: Autorisation refusé - /var/www/application-name/log/invitation.log (errno :: eaux) p> Utilisation de la comman ll Vous obtiendrez des autorisations de journalisation p > solution: strong>
Avoir à modifier le propriétaire de root vers un autre utilisateur: p> utilise maintenant redémarrez votre serveur Web: p> Vérifiez maintenant les journaux de production. p> p> ll code> pour voir les autorisations p>
J'avais le même problème. Essayé tout sur ce site.
Enfin j'ai vérifié la valeur de puis j'ai crucé avec un autre projet de rails et qui donnait la sortie ci-dessous p> Vous pouvez clairement voir que les deux projets utilisaient des projets différents enregistreurs pour montrer la sortie. Je ne veux pas donner à la connexion à STDOUT, j'ai donc changé mon enregistreur à ActiveSupport en créant un fichier d'initialisateur. P> rails.logger code> dans la console. Il a donné la sortie suivante.
config/initializer/logger.rb
Rails.logger = ActiveSupport::Logger.new('log/production.log')
Dans mon cas, j'ai eu le gemme suivant alors j'ai dû p>
Et sur la prochaine poussée à la production, les journaux ont fonctionné pour moi. FYI: J'utilise des rails 5.2.1, mais l'application Web Rails a commencé dans les rails 3. P> rails_12Factor code> dans mon
gemfile code> pour la production. P>
rails_12Factor code> de mon gemfile li>
GEM Désinstallation Rails_12Factor Code> Li>
bundle installer code> li>
ol>