ПредишенСледващото

Както е случаят с много други неща, свързани с развитието на WordPress, най-добрият начин да се разбере постоянна WP_DEBUG_LOG - е да го намерите в основния код на WordPress.

Важна част от кода е в WP-включва / load.php файл:

Ако зададете WP_DEBUG да е вярно, да зададете WP_DEBUG_DISPLAY за невярна и WP_DEBUG_LOG вярно, то в този случай, всички грешки се показват в debug.log файл в WP-съдържание папка; в PHP информация за грешката ще липсва.

За да определите тези константи, трябва да добавите следните редове към вашия WP-config.php:

Но защо се направи?

1. За да се крият грешки

Виждате ли грешка в уеб браузъра? наистина сигурни, че показва абсолютно всичко ли сте? Ами, съдържащ DIV, скрит с CSS? Какво ще кажете за Аякс искания?

Интерфейс - не най-безопасното място за улов на грешки. ПаметСъбития PHP показва всичко.

2. За да се изравнят всички грешки.

Може би искате да използвате плъгини като Debug бар или заявките Monitor, за да улови грешки, което ще Ви е достатъчно. Аз не те обвинявам за това. Тези плъгини са наистина готини.

Въпреки това, аз открих, че те липсват някои грешки. Подозирам, че това се дължи на тяхното естество - те са плъгини, както и други плъгини могат да се заредят пред тях. Разбира се, можете да промените реда на зареждане, така че те са заредени в началото, но как да бъде по отношение на грешки в многосайтово и плъгини в ядрото на WordPress? Освен това, както аз открих грешки стриктни стандарти не се включват в тези плъгини.

Тези плъгини са идеални за различни неща, но в случая на PHP-улов на грешки те не трябва да се разчита. Самият PHP - това е надежден източник на отчети за грешки, и че такъв доклад може да бъде намерен в debug.log.

3. За да премахнете от трети страни плъгини грешка.

Всичко това е добре, ако кодът е грешка. Можете да ги поправи.

Но какво да кажем за трета страна на плъгини, които сте активирали? Какво става, ако те издават сигнали и известия за целия си интерфейс? И тъй като сте включили доклади WP_DEBUG, която получавате известия, сигнали, с несъответствия в стандартите и т.н. Overkill. Той може да повлияе и да я направи почти невъзможно да се работи с някои плъгини активирани.

В миналото аз просто ще деактивира такива плъгини. Не е най-доброто решение. Освен това, какво ще стане ако не можете да работите без тези плъгини? Използвах да се намали само на разстояние WP_DEBUG. За срам, знам.

В този момент аз съм просто ще приемем, че сте победи. Вече добави константи над WP-config.php и крив debug.log. Сега можете да следите и да филтрирате debug.log.

Мониторинг и Filtering debug.log

Освен проследяване на грешки debug.log, вие естествено трябва да го премахнете от целия шум, създаден от трети страни плъгини. В противен случай, вашите "коригира" грешки могат да бъдат удавени в този шум.

Разбира се, някои хора използват за прилагането на конзолата в OS X да се чете в лог файл, който има филтър ненужен шум от приставки на трети страни. Това звучи интересно, въпреки че аз не съм опитвал. Аз реших да отида по заобиколен начин.

Написах PHP-скрипт. Той просто следи лог файл за промени и показва уведомление за грешка. Той може също да филтрирате всички Xdebug блокове, на базата на регулярни изрази, така че може да се игнорира предупрежденията и информацията, дадена от трети страни плъгини.

Един debug.log за всички сайтове

Използвах да използвате отделен дневник debug.log за всички сайтове, които аз не съм намерил в авторство среда. Когато се премине към друг сайт, да се работи с него, трябваше да следите различен лог файл. Не е най-доброто решение.

Сега имам един за всяка една от трупите сайт комплект. Направих това с един прост плъгин. Добавих следния код в WP-съдържание / МУ-плъгини / поръчка за отстраняване на грешки-влезете path.php за всеки обект:

Сега аз трябваше само да следват клисура един за всички свои сайтове в процес на разработка.

Това работи добре. Разбира се, има много подобрения, които могат да се направят, но бях достатъчно на доклада за грешка.

Използвате ли подобен доклад за грешка? Какви подобрения може да ви предложи?

Подкрепете проекта - споделете линка, благодаря!