J'ai un site de production CakePHP où j'ai besoin de dépanner une requête SQL lente. Je veux accéder à cette grande table créée par CakePHP avec la requête SQL, l'heure d'exécution, etc., mais je ne peux pas définir le niveau DEBUG sur 3 sur un site de production. J'imagine que c'est un simple mais je n'arrive pas à comprendre comment je peux obtenir cette information pour un script spécifique et faire quelque chose avec, comme l'enregistrer dans un fichier journal.Comment capturer les requêtes SQL s'exécutant dans une page CakePHP?
2
A
Répondre
4
This article va vous aider.
Si vous avez accès au fichier de configuration MySQL, vous pouvez enregistrer des requêtes lentes par enabling log-slow-queries setting.
2
Pour gâteau 1.3 (pas sûr si cela fonctionne en 1.2), un coup d'oeil à /cake/libs/view/elements/sql_dump.ctp
et l'adapter à vos besoins:
$sources = ConnectionManager::sourceList();
foreach ($sources as $source) {
$db =& ConnectionManager::getDataSource($source);
if (!$db->isInterfaceSupported('getLog')) {
continue;
}
$log = $db->getLog();
// examine $log...
}
+0
Merci, je suis sur 1.2 en ce moment mais finira par bouger. – Justin
0
DebugKit est votre ami. Il devrait y avoir des versions appropriées pour Cake 1.3, 2.x et 3.x. Il a une belle barre d'outils qui affiche toutes vos requêtes SQL et le temps nécessaire pour les exécuter.
Questions connexes
- 1. Comment bloquer les injections SQL dans CakePHP
- 2. CakePHP répète les mêmes requêtes
- 3. Requêtes CakePHP impliquant DateTime
- 4. Comment capturer des requêtes XMLHTTP dans un contrôle Webbrowser?
- 5. Comment capturer SQL avec les paramètres substitués dans? (.NET, SqlCommand)
- 6. Comment exécuter une trace dans Oracle qui peut capturer les lectures, les écritures, le processeur et la durée des requêtes
- 7. Comment utiliser les variables dans les requêtes SQL Access
- 8. cakePHP: comment combiner deux vues d'application ou plus sur une page de mise en page cakePHP?
- 9. Utilisation dans les sous-requêtes SQL
- 10. SQL Server: comment optimiser les requêtes "like"?
- 11. 2 requêtes SQL en une ligne - comment?
- 12. Comment capturer la page avec google map?
- 13. Signification de (+) dans les requêtes SQL
- 14. SQL: les sous-requêtes sélectives
- 15. Non modèle SQL dans CakePHP
- 16. SQL, requêtes imbriquées, sous-requêtes, requêtes corrélées
- 17. Comment capturer/consigner les événements "Attention" de SQL Server 2005?
- 18. Comment savoir quel index est utilisé dans les requêtes SQL?
- 19. CakePHP Model utilise les mauvais champs dans les instructions SQL!
- 20. Comment afficher les requêtes SQL exécutées dans la console Rails?
- 21. Comment capturer une clé dans X?
- 22. Comment inclure une vue dans une autre vue dans CakePHP
- 23. Comment capturer une clé dans WPF?
- 24. Comment les données disponibles dans une 4ème colonne dans cakephp?
- 25. Comment combiner deux requêtes sql?
- 26. Comment capturer une variable (C#)
- 27. Comment désactiver les requêtes GET à la page JSP?
- 28. Nombre de requêtes dans SQL
- 29. citations dans les requêtes
- 30. stubs, page d'accueil dynamique dans cakePHP
Bon article. Je voulais éviter le journal des requêtes lent, mais bon. – Justin