Here’s a small usefull PHP script that gets data from an url, checks if it’s what you expect it to be, and logs the result (the current time, and the retrieved content if there’s an error). Best used with a cron job.
<?php
function ping($url) {
//don't wait for too long - there'll be a next ping
set_time_limit(5);
$tstart = microtime(true);
$data = file_get_contents($url);
$tend = microtime(true);
//compare the retrieved contents with what we expect
if ($data == '{"result":"SUCCESS"}') {
$resultInfo = " ok";
} else {
$resultInfo = " error " . $data . " ";
}
return (round((($tend - $tstart) * 1000), 0)." ms") . $resultInfo;
}
date_default_timezone_set("Europe/Paris");
$dateForLog = (date("ymd_His"));
$dateForFilename = (date("ym"));//one log file covers one month
file_put_contents("yourpathhere/pingresult" . $dateForFilename . ".txt", $dateForLog . ' ' . ping("http://yoururlhere.com"). "|\r\n", FILE_APPEND);
?>
First of all there are a few bugs, do you have test your code ?? seems like you forget some $ in the last row. and Second there are 2 times tstart i suggest you change that to tend 🙂
Yep, you’re right. I did some cleanup before posting without retesting 😉 Fixed these issues, thanks