iscool_e.pynba este un Middleware WSGI pentru Pinba. & Nbsp; permite monitorizarea în timp real / statistici server folosind MySQL ca o interfață read-only.
Se acumulează și prelucrează date trimise peste UDP prin procedee PHP multiple și statistici afișează într-o formă de lecturat frumos de "rapoarte" simpli, oferind, de asemenea, read-only interfață pentru datele brute, în scopul de a face posibilă generarea de rapoarte mai sofisticate și statistici .
Utilizatorii de asemenea, poate măsura anumite părți ale codului folosind cronometre cu tag-uri arbitrare.
De ce un alt manager statistici?
Deoarece roci Pinba!
La IsCool Divertisment, vom folosi deja Pinba pentru monitorizarea aplicatiile noastre PHP bazate pe.
Cerințe
Această bibliotecă se bazează pe Pinba, Protobuf și Werkzeug. Va trebui să instalați pachetele teze inainte de a folosi Pynba.
Procesul de instalare presupune setuptools urmează să fie instalate. Dacă nu este, vă rugăm să consultați instalarea acestui pachet.
Configurare
& Nbsp; git clona https://github.com/IsCoolEntertainment/pynba.git
& Nbsp; piton setup.py instalare
Utilizare
Spune că cererea dumneavoastră WSGI principal este:
def app (mediului, start_response):
& Nbsp; ...
Importul decorator pynba, și decora aplicația principal cu aceasta:
de la monitor import iscool_e.pynba
monitor (("127.0.0.1", 30002))
def app (mediului, start_response):
& Nbsp; ...
De fiecare dată când aplicația va fi procesată, un nou flux de UPD va fi trimis.
Eventualy, puteți utiliza cronometre pentru a măsura anumite părți ale codului. Pentru aceasta, importa doar proxy pynba, și să-l utilizați pentru a crea noi cronometre:
de la iscool_e.pynba pynba import
timer = pynba.timer (foo = "bar")
timer.start ()
...
timer.stop ()
Unele cazuri de utilizare sunt disponibile pe src / exemple /
Diferențe cu extensia PHP
Despre datele trimise:
- Ru_utime și ru_stime reprezintă utilizarea de resurse pentru procesul actual, nu resursele partajate.
- Document_size nu pot fi procesate automat cu caietul de sarcini WSGI curent. Aveți posibilitatea de a seta manual această valoare ca aceasta:
- Pynba.document_size = [valoarea ta]
- Memory_peak de asemenea, nu este în prezent pusă în aplicare. Ca și datele anterioare, puteți seta manual această valoare ca aceasta:
- Pynba.memory_peak = [valoarea ta]
Despre cronometre:
- Versiunea Python permites mai multe valori pentru fiecare timer tag-uri. Doar declare orice secvențe, cartografiere sau nevărsat. Acest exemplu:
& Nbsp; pynba.timer (foo = 'bar', Baz = ['seq1 "," seq2 "], QUX = {' map1": "VAL1"})
& Nbsp; Va populează 4 valori pentru 3 tag-uri în baza de date Pinba:
& Nbsp; ("foo", "bar"),
& Nbsp; ("Baz," seq1 "),
& Nbsp; ("Baz," seq2 "),
& Nbsp; ("qux.map1", "VAL1")
Ce este nou în această versiune:
- Adăugat util pentru script-uri de monitorizare
Ce este nou în versiunea 0.3.2:
- șiruri goale fixe
Cerințe :
- Python
Comentariile nu a fost găsit