9 require_once( dirname( __FILE__ ) . '/Maintenance.php' );
11 class DatabaseLag extends Maintenance {
12 public function __construct() {
13 parent::__construct();
14 $this->mDescription = "Shows database lag";
15 $this->addOption( 'r', "Don't exit immediately, but show the lag every 5 seconds" );
18 public function execute() {
19 if ( $this->hasOption( 'r' ) ) {
22 for ( $i = 1; $i < $lb->getServerCount(); $i++ ) {
23 $hostname = $lb->getServerName( $i );
24 printf( "%-12s ", $hostname );
29 $lb->clearLagTimeCache();
30 $lags = $lb->getLagTimes();
32 echo gmdate( 'H:i:s' ) . ' ';
33 foreach ( $lags as $lag ) {
34 printf( "%-12s " , $lag === false ? 'false' : $lag );
41 $lags = $lb->getLagTimes();
42 foreach ( $lags as $i => $lag ) {
43 $name = $lb->getServerName( $i );
44 $this->output( sprintf( "%-20s %s\n" , $name, $lag === false ? 'false' : $lag ) );
50 $maintClass = "DatabaseLag";
51 require_once( RUN_MAINTENANCE_IF_MAIN );