Zadejte hledaný výraz...

Jak logujete mnoho událostí ?

Martin
verified
rating uzivatele
(62 hodnocení)
20. 3. 2011 19:30:47
Ahoj všichni.
Prosím o radu od lidí co mají zkušenost s projekty s větší návštěvností. Potřebuju u jednoho webu logovat určité události do databáze.
Zatím to ještě není nasazený a mám to připravený ve stylu, že mi to uloží username uživatele a textový řetězec s kodovým popisem činnosti. Ale mám obavy, zda to nebude nějak moc brzdit databázi, popř. dělat jiné problémy. Těch záznamů bude 10 k - 30 k denně a databáze za chvíli asi pěkně naroste.
Jak to děláte vy? Nějak ty logy časem archivujete? Jak ?
Díky za pomoc.
20. 3. 2011 19:30:47
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620802
Co to jsou ony "urcite udalosti"? Jak mas velkou navstevnost? 30k zapisu denne je pomerne dost, neslo by to zoptimalizovat? Potrebujes ty data mit k dispozici napr dele nez tyden zpetne?
20. 3. 2011 20:23:38
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620801
Záleží co loguješ, co z toho a jak dlouho potřebuješ
20. 3. 2011 20:34:44
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620800
Martin
verified
rating uzivatele
(62 hodnocení)
20. 3. 2011 21:18:36
Navštěvnost max 10k denně. Jsou to události které jsou náročnější na výkon (např. generování PDF ) nebo odesílání emailů(uživatelé odesílájí přes moje SMTP emaily s přílohami). Chci to logovat kvůli případnému zneužívání emailu nebo přetěžování robotama apod. Abych mohl případně blokovat IP adresy atd. A taky kvůli statistikám. Myslím, že data týden zpátky bych chtěl mít online přímo z administrace, ale v případě potřeby se mrknou i nějak do minulosti. Máte nějaké řešení. Abych se s tím nepáral a za pár měsíců přišel na to, že by to šlo udělat mnohem jednodušeji a efektivněji. Dík
20. 3. 2011 21:18:36
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620799
P-ierre
verified
rating uzivatele
(43 hodnocení)
20. 3. 2011 21:57:38
Můžeš cronem nastavit, aby se každý týden přepsaly data (starší než 7 dní - tím pádem budeš mít vždy v administraci info za poslední týden až dva) z tabulky do nějakýho textovýho souboru. Tím nebudeš tolik zahlcovat DB a textové soubory můžeš zakládat třeba každý týden jeden.
Roboti většinou pošlou velkou hromadu příkazů během krátký chvíle. Takže si zapiš jen první výskyt události (např. odeslání mailu) od té IP a pak jen inkrementuj číslo, které počítá počet těch událostí. Je rozhodně lepší jeden řádek, který říká že IP 12.34.56.78 odeslala 1 000 mailů, než 1000 řádků s tvrzením že ta IP odeslala jeden mail... Sice v tuhle chvíli nebudeš mít přehled o přesných časech odeslání, ale skutečně je potřebuješ když máš ten celkový počet?
20. 3. 2011 21:57:38
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620798
Petyk
verified
rating uzivatele
(3 hodnocení)
20. 3. 2011 23:09:16
Napsal P-ierre;638363
Můžeš cronem nastavit, aby se každý týden přepsaly data (starší než 7 dní - tím pádem budeš mít vždy v administraci info za poslední týden až dva) z tabulky do nějakýho textovýho souboru. Tím nebudeš tolik zahlcovat DB a textové soubory můžeš zakládat třeba každý týden jeden.
Nebylo by rozumější jednou za čas přesypat neaktuální data do jiné tabulky? Řešení se soubory je dost nešikovné z hlediska obsluhy i budoucí práce s daty.
Napsal P-ierre;638363
Roboti většinou pošlou velkou hromadu příkazů během krátký chvíle. Takže si zapiš jen první výskyt události (např. odeslání mailu) od té IP a pak jen inkrementuj číslo, které počítá počet těch událostí. Je rozhodně lepší jeden řádek, který říká že IP 12.34.56.78 odeslala 1 000 mailů, než 1000 řádků s tvrzením že ta IP odeslala jeden mail... Sice v tuhle chvíli nebudeš mít přehled o přesných časech odeslání, ale skutečně je potřebuješ když máš ten celkový počet?
Myslím, že SELECT, kterej zjistí jestli ta událost není v krátkém časovém sledu opakovaná, je rozhodně náročnější než jeden INSERT.
PS: Pro kvalitní databázi, s optimalizovanými dotazy, není 10M záznamů žádné číslo.
20. 3. 2011 23:09:16
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620797
Ondra Kněžour
verified
rating uzivatele
21. 3. 2011 00:13:46
Pokud chci řešit problémy s mail serverem, hledám v logu mail serveru. Odesílají-li uživatelé maily z aplikace na serveru, můžeš si tam snadno přidat vlastní hlavičky s údaji o IP adrese klienta a podobně a ty pak na mail serveru logovat.
Obecně statisíce záznamů v DB nejsou problém, od toho databáze jsou. Pokud tě v průběhu času nezajímá přesně každá položka, ale trendy, špičky, srovnání mezi jednotlivými uživateli, zvážil bych i použití RRD a k tomu nějaké kreslítko jako MRTG.
Důležité je přesně vědět, co chceš sledovat, jak na to budeš chtít reagovat a jaké podklady pro reakci nebo rozhodnutí o ní budeš potřebovat. Z tvého popisu to zatím spíš vypadá, že máš obavu z toho, že ti něco zatíží server a měl bys tak mít nějakou statistiku po ruce. Chce se to hlouběji zamyslet co a jak, co budeš dělat, když někdo bude generovat moc PDF například, zakážeš mu platit ti za aplikaci s tím, že jí moc používá? :) Je potřeba na začátku si jasně rozmyslet co má být cílem a podle toho už se pak vhodné nářadí vybere poměrně snadno.
21. 3. 2011 00:13:46
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620796
Myslím si, že by mělo stačit udržovat standardní maillogy potřebnou dobu (logrotate). Je to jen o diskové kapacitě.
My jsme třeba v DB (údaje z netflow) a syslogách (firewall, mail, squid) běžně drželi 6-10 měsíců a s PČR jsme vždy vycházeli OK.
Obecně ze zákona provider by měl držet historii 6 měsíců - víc v zákoně.
21. 3. 2011 00:35:57
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620795
Boris Jaroščák
verified
rating uzivatele
21. 3. 2011 10:28:33
Na logovanie na mojich weboch používam svoj vlastný logovací systém. Keď moja logovacia DB moc narastie – mnoho miliónov záznamov – tak dáta exportnem a uložím na môj offline záložný HDD (keby som sa chcel k tomu vrátiť v budúcnosti, resp. napr. štatisticky offline spracovávať tie dáta, či pod.)
+ tabuľky v online verzii DB vyprázdnim a logujem znova od začiatku.
A tak dookola. (Raz za mesiac, či dva. Podľa návštevnosti ...)
21. 3. 2011 10:28:33
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620794
Taky osobne vyuzivam logy na mailserveru... po 100dnech se automaticky promazavaji. Vzhledem k tomu ze mas vlastni SMTP tak urco odesilani opatrit loginem/heslem a osetrit formy na localhostu (tim by ses mel setrepat pripadnych spambotu)
21. 3. 2011 16:29:00
https://webtrh.cz/diskuse/jak-logujete-mnoho-udalosti/#reply620793
Pro odpověď se přihlašte.
Přihlásit