Diferență între revizuiri ale paginii „Tipuri de loguri”

Sari la navigare Sari la căutare
20 de octeți șterși ,  4 februarie 2019 16:16
fără descrierea modificării
 
(Nu s-a afișat o versiune intermediară efectuată de același utilizator)
Linia 1: Linia 1:
''Dexonline'' folosește mai multe sisteme de logare. Nu este o situație ideală și am ajuns la ea prin mulți ani de peticire a sistemului, :-) dar cel puțin încercăm să documentăm tipurile de informație care se loghează și unde.
''Dexonline'' folosește mai multe sisteme de logare. Nu este o situație ideală și am ajuns la ea prin mulți ani de peticire a sistemului, :-) dar cel puțin încercăm să documentăm tipurile de informație care se loghează și unde.


== phplib/debugInfo.php și debugUser ==
== lib/debugInfo.php și debugUser ==


Biblioteca <tt>phplib/debugInfo.php</tt> oferă un mecanism pentru colectarea timpilor de rulare ai oricărei operații:
Biblioteca <tt>lib/debugInfo.php</tt> oferă un mecanism pentru colectarea timpilor de rulare ai oricărei operații:


* Funcția <tt>debug_init()</tt> este apelată automat din <tt>phplib/util.php</tt>.
* Funcția <tt>debug_init()</tt> este apelată automat din <tt>lib/util.php</tt>.
* Funcția <tt>debug_resetClock()</tt> trebuie apelată la începutul operației pe care doriți să o cronometrați.
* Funcția <tt>debug_resetClock()</tt> trebuie apelată la începutul operației pe care doriți să o cronometrați.
* Funcția <tt>debug_stopClock($message)</tt> trebuie apelată la sfârșitul operației. Ea adaugă mesajul dorit și timpul de rulare la un vector cu informații
* Funcția <tt>debug_stopClock($message)</tt> trebuie apelată la sfârșitul operației. Ea adaugă mesajul dorit și timpul de rulare la un vector cu informații
Linia 18: Linia 18:
0 ms: [SHOW COLUMNS FROM `Source`]
0 ms: [SHOW COLUMNS FROM `Source`]
1 ms: [select * from Source WHERE 1 order by isOfficial desc, displayOrder]
1 ms: [select * from Source WHERE 1 order by isOfficial desc, displayOrder]
3 ms: [select distinct L.* from InflectedForm I, Lexem L where I.lexemId = L.id and I.formNoAccent = 'remuladă' order by L.formNoAccent]
3 ms: [select distinct L.* from InflectedForm I, Lexem L where I.lexemeId = L.id and I.formNoAccent = 'remuladă' order by L.formNoAccent]
72 ms: [SHOW COLUMNS FROM `Lexem`]
72 ms: [SHOW COLUMNS FROM `Lexem`]
</pre>
</pre>
Linia 29: Linia 29:
Idiorm și Paris pot raporta fiecare query SQL pe care îl execută. Această informație poate fi deosebit de utilă în cazul în care aveți o greșeală de sintaxă într-o căutare. În această situație, comportamentul lui Idiorm poate fi misterios.
Idiorm și Paris pot raporta fiecare query SQL pe care îl execută. Această informație poate fi deosebit de utilă în cazul în care aveți o greșeală de sintaxă într-o căutare. În această situație, comportamentul lui Idiorm poate fi misterios.


Informațiile de depanare de la Idiorm sunt implicit dezactivate. Pentru a le activa, decomentați, la începutul fișierului <tt>phplib/db.php</tt>, linia <tt>ORM::configure('logging', true);</tt>. Apoi, puteți executa comenzi ca:
Informațiile de depanare de la Idiorm sunt implicit dezactivate. Pentru a le activa, decomentați, la începutul fișierului <tt>lib/db.php</tt>, linia <tt>ORM::configure('logging', true);</tt>. Apoi, puteți executa comenzi ca:


<syntaxhighlight lang="php">
<syntaxhighlight lang="php">
Linia 45: Linia 45:
* <tt>logSampling</tt> indică ce fracțiune din căutări trebuie logate (0.00 - 1.00). Pe serverul principal, valoarea este 0.10. În mediul de dezvoltare, setați variabila la 1.00 pentru a loga toate căutările.
* <tt>logSampling</tt> indică ce fracțiune din căutări trebuie logate (0.00 - 1.00). Pe serverul principal, valoarea este 0.10. În mediul de dezvoltare, setați variabila la 1.00 pentru a loga toate căutările.


Clasa care se ocupă cu logarea este <tt>phplib/modelObjects.php:Log</tt>, funcția <tt>logData()</tt>. Formatul prezent al logului este o listă de valori delimitate prin <tt>\t</tt>. Acest format nu este perfect și va fi schimbat în viitor, deoarece nu se pretează la modificări.
Clasa care se ocupă cu logarea este <tt>lib/modelObjects.php:Log</tt>, funcția <tt>logData()</tt>. Formatul prezent al logului este o listă de valori delimitate prin <tt>\t</tt>. Acest format nu este perfect și va fi schimbat în viitor, deoarece nu se pretează la modificări.


Informațiile colectate în prezent sunt:
Informațiile colectate în prezent sunt:
Linia 51: Linia 51:
* Cuvântul cu care am răspuns la căutare: ''oprobriu''.
* Cuvântul cu care am răspuns la căutare: ''oprobriu''.
* Cuvântul introdus de utilizator, dacă diferă de primul (dacă a avut loc o redirectare): ''oprobiu''.
* Cuvântul introdus de utilizator, dacă diferă de primul (dacă a avut loc o redirectare): ''oprobiu''.
* Tipul căutării, conform constantelor <tt>SEARCH_*</tt> definite în <tt>phplib/util.php</tt>.
* Tipul căutării, conform constantelor <tt>SEARCH_*</tt> definite în <tt>lib/util.php</tt>.
* Dacă utilizatorul este înregistrat sau anonim.
* Dacă utilizatorul este înregistrat sau anonim.
* Designul (skinul) folosit: ''zepu, polar, mobile'' etc.
* Designul (skinul) folosit: ''zepu, polar, mobile'' etc.
Linia 87: Linia 87:
== Loguri vechi ==
== Loguri vechi ==


Primul sistem de logare al ''dexonline'' a fost scris de la zero și nu prea deștept. Vezi <tt>phplib/logging.php</tt>. El mai este folosit și astăzi.
Primul sistem de logare al ''dexonline'' a fost scris de la zero și nu prea deștept. Vezi <tt>lib/logging.php</tt>. El mai este folosit și astăzi.


* <tt>log/userlog</tt> loghează conectările / deconectările utilizatorilor și editările de definiții și de lexeme.
* <tt>log/userlog</tt> loghează conectările / deconectările utilizatorilor și editările de definiții și de lexeme.

Meniu de navigare