Merge branch 'master' of github.com:gebhardtdasense/system

Conflicts:
	sai/modules/saimod_sys_log/saimod_sys_log.php
This commit is contained in:
Ulf Gebhardt 2014-01-19 22:39:56 +01:00
commit fd0828060d
5 changed files with 48 additions and 59 deletions

View File

@ -18,7 +18,7 @@ class log {
set_error_handler ('\SYSTEM\LOG\log::__error_handler');
set_exception_handler ('\SYSTEM\LOG\log::__exception_handler');
register_shutdown_function ( '\SYSTEM\LOG\log::__shutdown_handler' );
register_shutdown_function ('\SYSTEM\LOG\log::__shutdown_handler' );
ob_start ('\SYSTEM\LOG\log::__fatal_error_handler');
}

View File

@ -125,13 +125,6 @@ class saimod_sys_log extends \SYSTEM\SAI\SaiModule {
}
public static function sai_mod__SYSTEM_SAI_saimod_sys_log_action_stats_name_unique_basic($filter){
/*
$children = array();
is_subclass_of
foreach(get_declared_classes() as $class){
if($class instanceof foo) $children[] = $class;
}
*/
$con = new \SYSTEM\DB\Connection(\SYSTEM\system::getSystemDBInfo());
if(\SYSTEM\system::isSystemDbInfoPG()){
$res = $con->query('SELECT to_timestamp(extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int - (extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int % '.$filter.')) as day,'
@ -209,10 +202,10 @@ class saimod_sys_log extends \SYSTEM\SAI\SaiModule {
$con = new \SYSTEM\DB\Connection(\SYSTEM\system::getSystemDBInfo());
if(\SYSTEM\system::isSystemDbInfoPG()){
$res = $con->query('SELECT to_timestamp(extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int - (extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int % '.$filter.')) as day,'
.'count(*) as count,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_FILE.') as file_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_LINE.') as line_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_CLASS.') as class_unique'
.'count(*) as count,'
.'count(distinct "'.\SYSTEM\DBD\system_log::FIELD_USER.'") as user_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_IP.') as ip_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_SERVER_NAME.') as server_name_unique'
.' FROM '.\SYSTEM\DBD\system_log::NAME_PG
.' GROUP BY day'
.' ORDER BY day DESC'
@ -239,11 +232,11 @@ class saimod_sys_log extends \SYSTEM\SAI\SaiModule {
$con = new \SYSTEM\DB\Connection(\SYSTEM\system::getSystemDBInfo());
if(\SYSTEM\system::isSystemDbInfoPG()){
$res = $con->query('SELECT to_timestamp(extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int - (extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int % '.$filter.')) as day,'
.'count(*) as count,'
.'count(distinct "'.\SYSTEM\DBD\system_log::FIELD_USER.'") as user_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_IP.') as ip_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_HTTP_REFERER.') as http_referer_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_HTTP_USER_AGENT.') as http_user_agent_unique'
.'count(*) as count,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_SERVER_NAME.') as server_name_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_SERVER_PORT.') as server_port_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_REQUEST_URI.') as request_uri_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_POST.') as post_unique'
.' FROM '.\SYSTEM\DBD\system_log::NAME_PG
.' GROUP BY day'
.' ORDER BY day DESC'
@ -272,8 +265,9 @@ class saimod_sys_log extends \SYSTEM\SAI\SaiModule {
if(\SYSTEM\system::isSystemDbInfoPG()){
$res = $con->query('SELECT to_timestamp(extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int - (extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int % '.$filter.')) as day,'
.'count(*) as count,'
.'count(distinct "'.\SYSTEM\DBD\system_log::FIELD_USER.'") as user_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_IP.') as ip_unique'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_FILE.') as file_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_LINE.') as line_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_CLASS.') as class_unique'
.' FROM '.\SYSTEM\DBD\system_log::NAME_PG
.' GROUP BY day'
.' ORDER BY day DESC'
@ -299,20 +293,11 @@ class saimod_sys_log extends \SYSTEM\SAI\SaiModule {
$con = new \SYSTEM\DB\Connection(\SYSTEM\system::getSystemDBInfo());
if(\SYSTEM\system::isSystemDbInfoPG()){
$res = $con->query('SELECT to_timestamp(extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int - (extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int % '.$filter.')) as day,'
.'count(*) as count,'
.'sum(case when not '.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'SYSTEM\LOG\COUNTER\' and'
.' not '.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'SYSTEM\LOG\INFO\' and'
.' not '.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'INFO\' and'
.' not '.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'SYSTEM\LOG\DEPRECATED\' and'
.' not '.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'EPRECATED\' '
.'then 1 else 0 end) class_fail,'
.'sum(case when '.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'SYSTEM\LOG\INFO\' or '
.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'SYSTEM\LOG\INFO\' or '
.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'INFO\' or '
.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'SYSTEM\LOG\DEPRECATED\' or '
.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'EPRECATED\' '
.'then 1 else 0 end) class_log,'
.'sum(case when '.\SYSTEM\DBD\system_log::FIELD_CLASS.' = \'SYSTEM\LOG\COUNTER\' then 1 else 0 end) class_sucess'
.'count(*) as count,'
.'count(distinct "'.\SYSTEM\DBD\system_log::FIELD_USER.'") as user_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_IP.') as ip_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_HTTP_REFERER.') as http_referer_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_HTTP_USER_AGENT.') as http_user_agent_unique'
.' FROM '.\SYSTEM\DBD\system_log::NAME_PG
.' GROUP BY day'
.' ORDER BY day DESC'
@ -349,11 +334,9 @@ class saimod_sys_log extends \SYSTEM\SAI\SaiModule {
$con = new \SYSTEM\DB\Connection(\SYSTEM\system::getSystemDBInfo());
if(\SYSTEM\system::isSystemDbInfoPG()){
$res = $con->query('SELECT to_timestamp(extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int - (extract(epoch from '.\SYSTEM\DBD\system_log::FIELD_TIME.')::int % '.$filter.')) as day,'
.'count(*) as count,'
.'avg('.\SYSTEM\DBD\system_log::FIELD_QUERYTIME.') as querytime_avg,'
.'max('.\SYSTEM\DBD\system_log::FIELD_QUERYTIME.') as querytime_max,'
.'min('.\SYSTEM\DBD\system_log::FIELD_QUERYTIME.') as querytime_min,'
.'variance('.\SYSTEM\DBD\system_log::FIELD_QUERYTIME.') as querytime_var'
.'count(*) as count,'
.'count(distinct "'.\SYSTEM\DBD\system_log::FIELD_USER.'") as user_unique,'
.'count(distinct '.\SYSTEM\DBD\system_log::FIELD_IP.') as ip_unique'
.' FROM '.\SYSTEM\DBD\system_log::NAME_PG
.' GROUP BY day'
.' ORDER BY day DESC'
@ -462,17 +445,10 @@ class saimod_sys_log extends \SYSTEM\SAI\SaiModule {
$table='';
while($r = $res->next()){
//print_r($r);
$table .= '<tr class="sai_log_error '.self::tablerow_class($r['class']).'" error="'.$r['ID'].'">'.
'<td>'.self::time_elapsed_string(strtotime($r['time'])).'</td>'.
'<td>'.$r['class'].'</td>'.
'<td style="word-break: break-all;">'.substr($r['message'],0,255).'</td>'.
'<td style="word-break: break-all;">'.$r['file'].'</td>'.
'<td>'.$r['line'].'</td>'.
'<td>'.$r['ip'].'</td>'.
'<td style="word-break: break-all;">'.$r['server_name'].':'.$r['server_port'].$r['request_uri'].'</td>'.
'<td>'.$r['username'].'</td>'.
'<td>'.$r['querytime'].'</td>'.
'</tr>';
$r['class_row'] = self::tablerow_class($r['class']);
$r['time'] = self::time_elapsed_string(strtotime($r['time']));
$r['message'] = substr($r['message'],0,255);
$table .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_log/saimod_sys_log_table_row.tpl'),$r);
}
$vars = array();
$vars['count'] = $count;

View File

@ -0,0 +1,11 @@
<tr class="sai_log_error ${class_row}" error="${ID}">
<td>${time}</td>
<td>${class}</td>
<td style="word-break: break-all;">${message}</td>
<td style="word-break: break-all;">${file}</td>
<td>${line}</td>
<td>${ip}</td>
<td style="word-break: break-all;">${server_name}:${server_port}${request_uri}</td>
<td>${username}</td>
<td>${querytime}</td>
</tr>

View File

@ -1,5 +1,4 @@
<?php
namespace SYSTEM\SAI;
class saimod_sys_sai extends \SYSTEM\SAI\SaiModule {

View File

@ -24,18 +24,21 @@ class saimod_sys_security extends \SYSTEM\SAI\SaiModule {
return $result;
}
public static function html_content_users(){
public static function html_content_users($search = null){
$con = new \SYSTEM\DB\Connection(\SYSTEM\system::getSystemDBInfo());
if(\SYSTEM\system::isSystemDbInfoPG()){
$res = $con->query('SELECT id,username,email,joindate,locale,last_active,account_flag FROM system.user ORDER BY last_active DESC;');
if(\SYSTEM\system::isSystemDbInfoPG()){
$res = $con->query('SELECT id,username,email,joindate,locale,last_active,account_flag FROM system.user ORDER BY last_active DESC LIMIT 100;');
$res2 = $con->query('SELECT count(*) as count FROM system.user;');
} else {
$res = $con->query('SELECT id,username,email,joindate,locale,last_active,account_flag FROM system_user ORDER BY last_active DESC;');
}
$res = $con->query('SELECT id,username,email,joindate,locale,last_active,account_flag FROM system_user ORDER BY last_active DESC LIMIT 100;');
$res2 = $con->query('SELECT count(*) as count FROM system.user;');
}
$now = microtime(true);
$result = '<table class="table table-hover table-condensed" style="overflow: auto;">'.
$pcount = $res2->next();
$count = $pcount['count'];
$result = 'Users: '.$count.
'</br><input type="text" value="Search email or username" size="30"/>'.
'<table class="table table-hover table-condensed" style="overflow: auto;">'.
'<tr>'.'<th>'.'ID'.'</th>'.'<th>'.'Username'.'</th>'.'<th>'.'E-Mail'.'</th>'.'<th>'.'JoinDate'.'</th>'.'<th>'.'Locale'.'</th>'.'<th>'.'Last Active'.'</th>'.'<th>'.'Flag'.'</th>'.'<th style="width: 110px;">'.'Rights'.'</th><th>reset password</th>'.'</tr>';
while($r = $res->next()){
if(\SYSTEM\system::isSystemDbInfoPG()){