2005-11-10 08:06:07 +00:00
< ? php
2014-09-26 10:31:39 +08:00
/*
2017-09-25 12:37:10 +05:30
@ version v5 . 20.9 21 - Dec - 2016
2015-12-08 11:52:40 +08:00
@ copyright ( c ) 2000 - 2013 John Lim ( jlim #natsoft.com). All rights reserved.
@ copyright ( c ) 2014 Damien Regad , Mark Newnham and the ADOdb community
2014-09-26 10:31:39 +08:00
Released under both BSD license and Lesser GPL library license .
Whenever there is any discrepancy between the two licenses ,
the BSD license will take precedence . See License . txt .
2005-11-10 08:06:07 +00:00
Set tabs to 4 for best viewing .
2014-09-26 10:31:39 +08:00
2005-11-10 08:06:07 +00:00
Latest version is available at http :// adodb . sourceforge . net
2014-09-26 10:31:39 +08:00
Library for basic performance monitoring and tuning
2005-11-10 08:06:07 +00:00
*/
// security - hide paths
if ( ! defined ( 'ADODB_DIR' )) die ();
//
// Thx to Fernando Ortiz, mailto:fortiz#lacorona.com.mx
// With info taken from http://www.oninit.com/oninit/sysmaster/index.html
//
class perf_informix extends adodb_perf {
// Maximum size on varchar upto 9.30 255 chars
// better truncate varchar to 255 than char(4000) ?
var $createTableSQL = " CREATE TABLE adodb_logsql (
created datetime year to second NOT NULL ,
sql0 varchar ( 250 ) NOT NULL ,
sql1 varchar ( 255 ) NOT NULL ,
params varchar ( 255 ) NOT NULL ,
tracer varchar ( 255 ) NOT NULL ,
timer decimal ( 16 , 6 ) NOT NULL
) " ;
2014-09-26 10:31:39 +08:00
2005-11-10 08:06:07 +00:00
var $tablesSQL = " select a.tabname tablename, ti_nptotal*2 size_in_k, ti_nextns extents, ti_nrows records from systables c, sysmaster:systabnames a, sysmaster:systabinfo b where c.tabname not matches 'sys*' and c.partnum = a.partnum and c.partnum = b.ti_partnum " ;
2014-09-26 10:31:39 +08:00
2005-11-10 08:06:07 +00:00
var $settings = array (
'Ratios' ,
'data cache hit ratio' => array ( 'RATIOH' ,
" select round((1-(wt.value / (rd.value + wr.value)))*100,2)
from sysmaster : sysprofile wr , sysmaster : sysprofile rd , sysmaster : sysprofile wt
where rd . name = 'pagreads' and
wr . name = 'pagwrites' and
wt . name = 'buffwts' " ,
'=WarnCacheRatio' ),
'IO' ,
'data reads' => array ( 'IO' ,
" select value from sysmaster:sysprofile where name='pagreads' " ,
'Page reads' ),
2014-09-26 10:31:39 +08:00
2005-11-10 08:06:07 +00:00
'data writes' => array ( 'IO' ,
" select value from sysmaster:sysprofile where name='pagwrites' " ,
'Page writes' ),
2014-09-26 10:31:39 +08:00
2005-11-10 08:06:07 +00:00
'Connections' ,
'current connections' => array ( 'SESS' ,
'select count(*) from sysmaster:syssessions' ,
'Number of sessions' ),
2014-09-26 10:31:39 +08:00
2005-11-10 08:06:07 +00:00
false
2014-09-26 10:31:39 +08:00
2005-11-10 08:06:07 +00:00
);
2014-09-26 10:31:39 +08:00
2015-12-08 11:52:40 +08:00
function __construct ( & $conn )
2005-11-10 08:06:07 +00:00
{
2008-05-02 22:50:22 +00:00
$this -> conn = $conn ;
2005-11-10 08:06:07 +00:00
}
}