error handler: do not log last query, truncate error message to a smaller length
This commit is contained in:
parent
1003f71e04
commit
cc43e19b44
4 changed files with 10 additions and 10 deletions
|
@ -24,10 +24,6 @@ class Db_Mysqli implements IDb {
|
||||||
}
|
}
|
||||||
|
|
||||||
function query($query, $die_on_error = true) {
|
function query($query, $die_on_error = true) {
|
||||||
global $last_query;
|
|
||||||
|
|
||||||
if (strpos($query, "ttrss_error_log") === FALSE) $last_query = $query;
|
|
||||||
|
|
||||||
$result = @mysqli_query($this->link, $query);
|
$result = @mysqli_query($this->link, $query);
|
||||||
if (!$result) {
|
if (!$result) {
|
||||||
$error = @mysqli_error($this->link);
|
$error = @mysqli_error($this->link);
|
||||||
|
|
|
@ -35,10 +35,6 @@ class Db_Pgsql implements IDb {
|
||||||
}
|
}
|
||||||
|
|
||||||
function query($query, $die_on_error = true) {
|
function query($query, $die_on_error = true) {
|
||||||
global $last_query;
|
|
||||||
|
|
||||||
if (strpos($query, "ttrss_error_log") === FALSE) $last_query = $query;
|
|
||||||
|
|
||||||
$result = @pg_query($this->link, $query);
|
$result = @pg_query($this->link, $query);
|
||||||
|
|
||||||
if (!$result) {
|
if (!$result) {
|
||||||
|
|
|
@ -33,14 +33,13 @@ function format_backtrace($trace) {
|
||||||
|
|
||||||
function ttrss_error_handler($errno, $errstr, $file, $line, $context) {
|
function ttrss_error_handler($errno, $errstr, $file, $line, $context) {
|
||||||
global $logger;
|
global $logger;
|
||||||
global $last_query;
|
|
||||||
|
|
||||||
if (error_reporting() == 0 || !$errno) return false;
|
if (error_reporting() == 0 || !$errno) return false;
|
||||||
|
|
||||||
$file = substr(str_replace(dirname(dirname(__FILE__)), "", $file), 1);
|
$file = substr(str_replace(dirname(dirname(__FILE__)), "", $file), 1);
|
||||||
|
|
||||||
if ($last_query) $errstr .= " [Last query: $last_query]";
|
|
||||||
$context = format_backtrace(debug_backtrace());
|
$context = format_backtrace(debug_backtrace());
|
||||||
|
$errstr = truncate_middle($errstr, 16384, " (...) ");
|
||||||
|
|
||||||
if (class_exists("Logger"))
|
if (class_exists("Logger"))
|
||||||
return Logger::get()->log_error($errno, $errstr, $file, $line, $context);
|
return Logger::get()->log_error($errno, $errstr, $file, $line, $context);
|
||||||
|
|
|
@ -878,6 +878,15 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// is not utf8 clean
|
||||||
|
function truncate_middle($str, $max_len, $suffix = '…') {
|
||||||
|
if (strlen($str) > $max_len) {
|
||||||
|
return substr_replace($str, $suffix, $max_len / 2, mb_strlen($str) - $max_len);
|
||||||
|
} else {
|
||||||
|
return $str;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function convert_timestamp($timestamp, $source_tz, $dest_tz) {
|
function convert_timestamp($timestamp, $source_tz, $dest_tz) {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
Loading…
Reference in a new issue