Beste mensen,
ik zit al een tijdje te rommelen om het unix/linux commando "tail -f" (interactief laatste x regels van file bekijken) na te bootsen in PHP.
Ik ben al redelijk op weg al zeg ik et zelf .. ik heb et volgende al:
Maarr, ik kom hier niet voor niets. Zodra ik dit script aanroep in mn browser maakt PHP (apache) maakt een process aan op de server (linux server (2.4.26), apache 2.0, php 5.01). Maar zodra ik ESC druk of mn browser sluit, blijft het proces bestaan (en draaien?).
"pclose($fp);" zou toch de file moeten sluiten en daarmee toch óók de bijbehorende proces moeten killen? Als ik 10x heb zitten testen dan staan er dus 10 van die processen nog te draaien op de server. Dit is dus niet erg netjes
Een andere vraag die gelijk in me opkomt: Is deze manier erg schadelijk voor de resources van de server waar dit script op gaat draaien? (Continue 'tail -f' draaiend dus).
't Idee hierachter is eigenlijk: Ik wil een logfile monitoren, en als er een nieuwe log-entry bijkomt, deze filteren en direct in een mysql database zetten.
Hoop dat jullie mij kunnen helpen met et killen van et proces nadat de et script (de browser) is gesloten, en met het beantwoorden van mijn vraag.
Groetjes,
Luuk.
ik zit al een tijdje te rommelen om het unix/linux commando "tail -f" (interactief laatste x regels van file bekijken) na te bootsen in PHP.
Ik ben al redelijk op weg al zeg ik et zelf .. ik heb et volgende al:
PHP:
1
2
3
4
5
6
7
8
9
| <? $fp = popen("tail -f /path/to/logfile.log", "r") or exit("Cannot open logfile!"); while(!feof($fp)) { print fgets($fp) . '<BR>'; flush(); } pclose($fp); ?> |
Maarr, ik kom hier niet voor niets. Zodra ik dit script aanroep in mn browser maakt PHP (apache) maakt een process aan op de server (linux server (2.4.26), apache 2.0, php 5.01). Maar zodra ik ESC druk of mn browser sluit, blijft het proces bestaan (en draaien?).
"pclose($fp);" zou toch de file moeten sluiten en daarmee toch óók de bijbehorende proces moeten killen? Als ik 10x heb zitten testen dan staan er dus 10 van die processen nog te draaien op de server. Dit is dus niet erg netjes
Een andere vraag die gelijk in me opkomt: Is deze manier erg schadelijk voor de resources van de server waar dit script op gaat draaien? (Continue 'tail -f' draaiend dus).
't Idee hierachter is eigenlijk: Ik wil een logfile monitoren, en als er een nieuwe log-entry bijkomt, deze filteren en direct in een mysql database zetten.
Hoop dat jullie mij kunnen helpen met et killen van et proces nadat de et script (de browser) is gesloten, en met het beantwoorden van mijn vraag.
Groetjes,
Luuk.