summaryrefslogtreecommitdiff
path: root/maintenance/getLagTimes.php
blob: 0f750caf5991509e7b3aaa7900431a129c13dde1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
/**
 * @file
 * @ingroup Maintenance
 */

require 'commandLine.inc';

$lb = wfGetLB();

if( $lb->getServerCount() == 1 ) {
	echo "This script dumps replication lag times, but you don't seem to have\n";
	echo "a multi-host db server configuration.\n";
} else {
	$lags = $lb->getLagTimes();
	foreach( $lags as $n => $lag ) {
		$host = $lb->getServerName( $n );
		if( IP::isValid( $host ) ) {
			$ip = $host;
			$host = gethostbyaddr( $host );
		} else {
			$ip = gethostbyname( $host );
		}
		$starLen = min( intval( $lag ), 40 );
		$stars = str_repeat( '*', $starLen );
		printf( "%10s %20s %3d %s\n", $ip, $host, $lag, $stars );
	}
}