mirror of
https://github.com/friendica/friendica
synced 2025-04-24 01:50:17 +00:00
Add Monolog
This commit is contained in:
parent
1d61645a16
commit
fe8f0e0045
15 changed files with 363 additions and 121 deletions
|
@ -181,7 +181,7 @@ function api_login(App $a)
|
|||
var_dump($consumer, $token);
|
||||
die();
|
||||
} catch (Exception $e) {
|
||||
Logger::log($e);
|
||||
$a->getLogger()->warning('API login: error', ['module' => 'api', 'action' => 'login', 'exception' => $e->getMessage()]);
|
||||
}
|
||||
|
||||
// workaround for HTTP-auth in CGI mode
|
||||
|
@ -195,7 +195,7 @@ function api_login(App $a)
|
|||
}
|
||||
|
||||
if (empty($_SERVER['PHP_AUTH_USER'])) {
|
||||
Logger::log('API_login: ' . print_r($_SERVER, true), Logger::DEBUG);
|
||||
$a->getLogger()->debug('API login: failed', ['module' => 'api', 'action' => 'login', 'parameters' => $_SERVER]);
|
||||
header('WWW-Authenticate: Basic realm="Friendica"');
|
||||
throw new UnauthorizedException("This API requires login");
|
||||
}
|
||||
|
@ -236,7 +236,7 @@ function api_login(App $a)
|
|||
}
|
||||
|
||||
if (!DBA::isResult($record)) {
|
||||
Logger::log('API_login failure: ' . print_r($_SERVER, true), Logger::DEBUG);
|
||||
$a->getLogger()->debug('API login: failed', ['module' => 'api', 'action' => 'login', 'parameters' => $_SERVER]);
|
||||
header('WWW-Authenticate: Basic realm="Friendica"');
|
||||
//header('HTTP/1.0 401 Unauthorized');
|
||||
//die('This api requires login');
|
||||
|
@ -309,33 +309,35 @@ function api_call(App $a)
|
|||
api_login($a);
|
||||
}
|
||||
|
||||
Logger::log('API call for ' . $a->user['username'] . ': ' . $a->query_string);
|
||||
Logger::log('API parameters: ' . print_r($_REQUEST, true));
|
||||
$a->getLogger()->info('API call', ['module' => 'api', 'action' => 'call', 'username' => $a->user['username']]);
|
||||
$a->getLogger()->debug('API parameters', ['module' => 'api', 'action' => 'call', 'parameters' => $_REQUEST]);
|
||||
|
||||
$stamp = microtime(true);
|
||||
$return = call_user_func($info['func'], $type);
|
||||
$duration = (float) (microtime(true) - $stamp);
|
||||
Logger::log("API call duration: " . round($duration, 2) . "\t" . $a->query_string, Logger::DEBUG);
|
||||
|
||||
$a->getLogger()->info('API call', ['module' => 'api', 'action' => 'call', 'username' => $a->user['username'], 'duration' => round($duration, 2)]);
|
||||
|
||||
if (Config::get("system", "profiler")) {
|
||||
$duration = microtime(true)-$a->performance["start"];
|
||||
|
||||
/// @TODO round() really everywhere?
|
||||
Logger::log(
|
||||
parse_url($a->query_string, PHP_URL_PATH) . ": " . sprintf(
|
||||
"Database: %s/%s, Cache %s/%s, Network: %s, I/O: %s, Other: %s, Total: %s",
|
||||
round($a->performance["database"] - $a->performance["database_write"], 3),
|
||||
round($a->performance["database_write"], 3),
|
||||
round($a->performance["cache"], 3),
|
||||
round($a->performance["cache_write"], 3),
|
||||
round($a->performance["network"], 2),
|
||||
round($a->performance["file"], 2),
|
||||
round($duration - ($a->performance["database"]
|
||||
+ $a->performance["cache"] + $a->performance["cache_write"]
|
||||
+ $a->performance["network"] + $a->performance["file"]), 2),
|
||||
round($duration, 2)
|
||||
),
|
||||
Logger::DEBUG
|
||||
$a->getLogger()->debug(
|
||||
'API call performance',
|
||||
[
|
||||
'module' => 'api',
|
||||
'action' => 'performance',
|
||||
'database_read' => round($a->performance["database"] - $a->performance["database_write"], 3),
|
||||
'database_write' => round($a->performance["database_write"], 3),
|
||||
'cache_read' => round($a->performance["cache"], 3),
|
||||
'cache_write' => round($a->performance["cache_write"], 3),
|
||||
'network_io' => round($a->performance["network"], 2),
|
||||
'file_io' => round($a->performance["file"], 2),
|
||||
'other_io' => round($duration - ($a->performance["database"]
|
||||
+ $a->performance["cache"] + $a->performance["cache_write"]
|
||||
+ $a->performance["network"] + $a->performance["file"]), 2),
|
||||
'total' => round($duration, 2)
|
||||
]
|
||||
);
|
||||
|
||||
if (Config::get("rendertime", "callstack")) {
|
||||
|
@ -376,7 +378,7 @@ function api_call(App $a)
|
|||
$o .= $func . ": " . $time . "\n";
|
||||
}
|
||||
}
|
||||
Logger::log($o, Logger::DEBUG);
|
||||
$a->getLogger()->debug($o, ['module' => 'api', 'action' => 'performance']);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -413,7 +415,7 @@ function api_call(App $a)
|
|||
}
|
||||
}
|
||||
|
||||
Logger::log('API call not implemented: ' . $a->query_string);
|
||||
$a->getLogger()->warning('API call not implemented');
|
||||
throw new NotImplementedException();
|
||||
} catch (HTTPException $e) {
|
||||
header("HTTP/1.1 {$e->httpcode} {$e->httpdesc}");
|
||||
|
@ -522,7 +524,7 @@ function api_get_user(App $a, $contact_id = null)
|
|||
$extra_query = "";
|
||||
$url = "";
|
||||
|
||||
Logger::log("api_get_user: Fetching user data for user ".$contact_id, Logger::DEBUG);
|
||||
$a->getLogger()->info('api_get_user: Fetching user data', ['module' => 'api', 'action' => 'get_user', 'user' => $contact_id]);
|
||||
|
||||
// Searching for contact URL
|
||||
if (!is_null($contact_id) && (intval($contact_id) == 0)) {
|
||||
|
@ -606,7 +608,7 @@ function api_get_user(App $a, $contact_id = null)
|
|||
}
|
||||
}
|
||||
|
||||
Logger::log("api_get_user: user ".$user, Logger::DEBUG);
|
||||
$a->getLogger()->info('api_get_user: getting user', ['module' => 'api', 'action' => 'get_user', 'user' => $user]);
|
||||
|
||||
if (!$user) {
|
||||
if (api_user() === false) {
|
||||
|
@ -618,7 +620,7 @@ function api_get_user(App $a, $contact_id = null)
|
|||
}
|
||||
}
|
||||
|
||||
Logger::log('api_user: ' . $extra_query . ', user: ' . $user);
|
||||
$a->getLogger()->info('api_get_user: found user', ['module' => 'api', 'action' => 'get_user', 'user' => $user, 'extra_query' => $extra_query]);
|
||||
|
||||
// user info
|
||||
$uinfo = q(
|
||||
|
@ -1937,7 +1939,7 @@ function api_conversation_show($type)
|
|||
$id = intval(defaults($a->argv, 4, 0));
|
||||
}
|
||||
|
||||
Logger::log('API: api_conversation_show: '.$id);
|
||||
$a->getLogger()->info('API: api_conversation_show', ['module' => 'api', 'action' => 'conversation', 'id' => $id]);
|
||||
|
||||
// try to fetch the item for the local user - or the public item, if there is no local one
|
||||
$item = Item::selectFirst(['parent-uri'], ['id' => $id]);
|
||||
|
@ -2331,7 +2333,7 @@ function api_favorites($type)
|
|||
|
||||
// in friendica starred item are private
|
||||
// return favorites only for self
|
||||
Logger::log('api_favorites: self:' . $user_info['self']);
|
||||
$a->getLogger()->info('API: api_favorites', ['module' => 'api', 'action' => 'favorites', 'self' => $user_info['self']]);
|
||||
|
||||
if ($user_info['self'] == 0) {
|
||||
$ret = [];
|
||||
|
@ -3686,6 +3688,7 @@ api_register_func('api/direct_messages/destroy', 'api_direct_messages_destroy',
|
|||
function api_friendships_destroy($type)
|
||||
{
|
||||
$uid = api_user();
|
||||
$a = get_app();
|
||||
|
||||
if ($uid === false) {
|
||||
throw new ForbiddenException();
|
||||
|
@ -3694,7 +3697,7 @@ function api_friendships_destroy($type)
|
|||
$contact_id = defaults($_REQUEST, 'user_id');
|
||||
|
||||
if (empty($contact_id)) {
|
||||
Logger::log("No user_id specified", Logger::DEBUG);
|
||||
$a->getLogger()->notice('No user_id specified', ['module' => 'api', 'action' => 'friendships_destroy']);
|
||||
throw new BadRequestException("no user_id specified");
|
||||
}
|
||||
|
||||
|
@ -3702,7 +3705,7 @@ function api_friendships_destroy($type)
|
|||
$contact = DBA::selectFirst('contact', ['url'], ['id' => $contact_id, 'uid' => 0, 'self' => false]);
|
||||
|
||||
if(!DBA::isResult($contact)) {
|
||||
Logger::log("No contact found for ID" . $contact_id, Logger::DEBUG);
|
||||
$a->getLogger()->notice('No contact found for ID', ['module' => 'api', 'action' => 'friendships_destroy', 'contact' => $contact_id]);
|
||||
throw new NotFoundException("no contact found to given ID");
|
||||
}
|
||||
|
||||
|
@ -3714,12 +3717,12 @@ function api_friendships_destroy($type)
|
|||
$contact = DBA::selectFirst('contact', [], $condition);
|
||||
|
||||
if (!DBA::isResult($contact)) {
|
||||
Logger::log("Not following Contact", Logger::DEBUG);
|
||||
$a->getLogger()->notice('Not following contact', ['module' => 'api', 'action' => 'friendships_destroy']);
|
||||
throw new NotFoundException("Not following Contact");
|
||||
}
|
||||
|
||||
if (!in_array($contact['network'], Protocol::NATIVE_SUPPORT)) {
|
||||
Logger::log("Not supported", Logger::DEBUG);
|
||||
$a->getLogger()->notice('Not supported', ['module' => 'api', 'action' => 'friendships_destroy', 'network' => $contact['network']]);
|
||||
throw new ExpectationFailedException("Not supported");
|
||||
}
|
||||
|
||||
|
@ -3730,7 +3733,7 @@ function api_friendships_destroy($type)
|
|||
Contact::terminateFriendship($owner, $contact, $dissolve);
|
||||
}
|
||||
else {
|
||||
Logger::log("No owner found", Logger::DEBUG);
|
||||
$a->getLogger()->notice('No owner found', ['module' => 'api', 'action' => 'friendships_destroy', 'uid' => $uid]);
|
||||
throw new NotFoundException("Error Processing Request");
|
||||
}
|
||||
|
||||
|
@ -4837,7 +4840,8 @@ function api_friendica_remoteauth()
|
|||
'sec' => $sec, 'expire' => time() + 45];
|
||||
DBA::insert('profile_check', $fields);
|
||||
|
||||
Logger::log($contact['name'] . ' ' . $sec, Logger::DEBUG);
|
||||
$a = get_app();
|
||||
$a->getLogger()->info('API: friendica_remoteauth', ['module' => 'api', 'action' => 'remoteauth', 'contact' => $contact['name'], 'hey' => $sec]);
|
||||
$dest = ($url ? '&destination_url=' . $url : '');
|
||||
|
||||
System::externalRedirect(
|
||||
|
@ -5086,7 +5090,8 @@ function api_in_reply_to($item)
|
|||
// https://github.com/friendica/friendica/issues/1010
|
||||
// This is a bugfix for that.
|
||||
if (intval($in_reply_to['status_id']) == intval($item['id'])) {
|
||||
Logger::log('this message should never appear: id: '.$item['id'].' similar to reply-to: '.$in_reply_to['status_id'], Logger::DEBUG);
|
||||
$a = get_app();
|
||||
$a->getLogger()->warning('ID is similar to reply-to', ['module' => 'api', 'action' => 'in_reply_to', 'id' => $item['id'], 'reply-to' => $in_reply_to['status_id']]);
|
||||
$in_reply_to['status_id'] = null;
|
||||
$in_reply_to['user_id'] = null;
|
||||
$in_reply_to['status_id_str'] = null;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue