Fixed log file issues on a freshly installed Friendica.
* Check to see if log file exists. * After trying to open it, check to see if it went ok. * So, check to see if the file size != 0 (fread error with size = 0)
This commit is contained in:
parent
5734d5f357
commit
dedfc300a0
|
@ -635,23 +635,36 @@ function admin_page_logs(&$a){
|
||||||
$t = get_markup_template("admin_logs.tpl");
|
$t = get_markup_template("admin_logs.tpl");
|
||||||
|
|
||||||
$f = get_config('system','logfile');
|
$f = get_config('system','logfile');
|
||||||
$size = filesize($f);
|
|
||||||
if($size > 5000000 || $size < 0)
|
|
||||||
$size = 5000000;
|
|
||||||
|
|
||||||
$data = '';
|
$data = '';
|
||||||
$fp = fopen($f,'r');
|
|
||||||
if($fp) {
|
|
||||||
$seek = fseek($fp,0-$size,SEEK_END);
|
|
||||||
if($seek === 0) {
|
|
||||||
fgets($fp); // throw away the first partial line
|
|
||||||
$data = escape_tags(fread($fp,$size));
|
|
||||||
while(! feof($fp))
|
|
||||||
$data .= escape_tags(fread($fp,4096));
|
|
||||||
}
|
|
||||||
fclose($fp);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
if(!file_exists($f)) {
|
||||||
|
$data = t("Error trying to open <strong>$f</strong> log file.\r\n<br/>Check to see if file $f exist and is
|
||||||
|
readable.");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$fp = fopen($f, 'r');
|
||||||
|
if(!$fp) {
|
||||||
|
$data = t("Couldn't open <strong>$f</strong> log file.\r\n<br/>Check to see if file $f is readable.");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$fstat = fstat($fp);
|
||||||
|
$size = $fstat['size'];
|
||||||
|
if($size != 0)
|
||||||
|
{
|
||||||
|
if($size > 5000000 || $size < 0)
|
||||||
|
$size = 5000000;
|
||||||
|
$seek = fseek($fp,0-$size,SEEK_END);
|
||||||
|
if($seek === 0) {
|
||||||
|
fgets($fp); // throw away the first partial line
|
||||||
|
$data = escape_tags(fread($fp,$size));
|
||||||
|
while(! feof($fp))
|
||||||
|
$data .= escape_tags(fread($fp,4096));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fclose($fp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return replace_macros($t, array(
|
return replace_macros($t, array(
|
||||||
'$title' => t('Administration'),
|
'$title' => t('Administration'),
|
||||||
|
|
Loading…
Reference in a new issue