Portál AbcLinuxu, 2. června 2025 00:11
auto_prepend_file = auto_append_file =Sem dať PHP skripty, ktoré zalogujú začiatok a koniec.
top
. To by asi bolo najlepšie, ale aj bez toho sa dá poradiť - stačí večer pustiť top s presmerovaním do súboru, a ráno si to pozrieť... Nejak takto to bude logovať každých 10 sekúnd po dobu 16 hodín od spustenia, a ešte to bude aj priebežne pakovať:
top -d 10 -n 5760 | gzip > top.log.gz
man top
Až teraz som si všimol, že v nadpise spomínaš Apache, ale v tele príspevku nie. Znamená to, že cron spúšťa tie úlohy cez wget na ten istý stroj? V tom prípade nepomôže ani time
, a ani top
...
Nám sa pred časom stávalo, že apači sa množili a zväčšovali, až začali dobývať krajinu zvanú Swap a potom ich produktivita (ako aj produktivita ďalších obyvateľov servera) išla do pá-pá. Nakoniec sme zistili, že príčinou bolo opustené phpBB fórum, na ktoré chodili už iba spamboti. Bolo tam asi tak kadžilión tém a k ním badžilión spamových príspevkov. Apači, ktorí sa to pokúšali zobraziť sa razom nafúkli na 50 a viac mega a efektívne utlačovali všetko ostatné na tom serveri. Fórum sme nakoniec identifikovali a poslali do /dev/null kde malo sídliť už dávno.
/opt/php5time/bina v nem vytvoril soubor php, ktery vypada nasledovne
#!/bin/bash /usr/bin/time -a -o /var/tmp/log/time.log -f "Name: %C, Realtime: %E,jenze to nefunguje :(, presneji, funguje to napul. Kdyz vytvorim soubor skript.php, ktery vypada nasledovne (otazniky sem odstranil, pac se mi nedarilo to sem vlozit)
Perc_CPU: %P, CPU_sys: %S, CPU_user: %U, Swapped_times: %W, Exit_stat: %X" /opt/php5/bin/php $@
< echo "ahoj\n"; >a dam
/opt/php5time/bin/php skript.phptak je to ok, napise to ahoj a zaloguje to ale kdyz vytvorim skript2.php
#!/opt/php5time/bin/php < echo "ahoj\n"; >a dam ./skript2.php tak mi to da
/var/tmp/sktipt.php: line 2: ?: No such file or directory ahoj\n /var/tmp/sktipt.php: line 4: syntax error near unexpected token `newline' /var/tmp/sktipt.php: line 4: `>'
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.