Merge "Send the profiler output to the 'profileoutput' log group"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Mon, 31 Mar 2014 16:16:22 +0000 (16:16 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Mon, 31 Mar 2014 16:16:22 +0000 (16:16 +0000)
RELEASE-NOTES-1.23
includes/DefaultSettings.php
includes/GlobalFunctions.php
includes/Setup.php

index ff7b5f9..d99c4fd 100644 (file)
@@ -52,6 +52,8 @@ production.
   wgQueryPages hook.
 * $wgHttpOnlyBlacklist has been removed.
 * $wgLicenseTerms has been removed as it was unused.
+* $wgProfileOnly is now deprecated; set the log file in
+  $wgDebugLogGroups['profileoutput'] to replace it.
 
 === New features in 1.23 ===
 * ResourceLoader can utilize the Web Storage API to cache modules client-side.
index 4326eca..14aec3b 100644 (file)
@@ -5086,6 +5086,9 @@ $wgProfileLimit = 0.0;
 
 /**
  * Don't put non-profiling info into log file
+ *
+ * @deprecated since 1.23, set the log file in
+ *   $wgDebugLogGroups['profileoutput'] instead.
  */
 $wgProfileOnly = false;
 
index 3727f16..5174b32 100644 (file)
@@ -921,7 +921,6 @@ function wfMatchesDomainList( $url, $domains ) {
  *
  * Controlling globals:
  * $wgDebugLogFile - points to the log file
- * $wgProfileOnly - if set, normal debug messages will not be recorded.
  * $wgDebugRawPage - if false, 'action=raw' hits will not result in debug output.
  * $wgDebugComments - if on, some debug items may appear in comments in the HTML output.
  *
@@ -934,7 +933,7 @@ function wfMatchesDomainList( $url, $domains ) {
  *     - false: same as 'log'
  */
 function wfDebug( $text, $dest = 'all' ) {
-       global $wgDebugLogFile, $wgProfileOnly, $wgDebugRawPage, $wgDebugLogPrefix;
+       global $wgDebugLogFile, $wgDebugRawPage, $wgDebugLogPrefix;
 
        if ( !$wgDebugRawPage && wfIsDebugRawPage() ) {
                return;
@@ -956,7 +955,7 @@ function wfDebug( $text, $dest = 'all' ) {
                MWDebug::debugMsg( $text );
        }
 
-       if ( $wgDebugLogFile != '' && !$wgProfileOnly ) {
+       if ( $wgDebugLogFile != '' ) {
                # Strip unprintables; they can switch terminal modes when binary data
                # gets dumped, which is pretty annoying.
                $text = preg_replace( '![\x00-\x08\x0b\x0c\x0e-\x1f]!', ' ', $text );
@@ -1227,8 +1226,8 @@ function wfErrorLog( $text, $file ) {
  * @todo document
  */
 function wfLogProfilingData() {
-       global $wgRequestTime, $wgDebugLogFile, $wgDebugRawPage, $wgRequest;
-       global $wgProfileLimit, $wgUser;
+       global $wgRequestTime, $wgDebugLogFile, $wgDebugLogGroups, $wgDebugRawPage;
+       global $wgProfileLimit, $wgUser, $wgRequest;
 
        StatCounter::singleton()->flush();
 
@@ -1249,7 +1248,17 @@ function wfLogProfilingData() {
        $profiler->logData();
 
        // Check whether this should be logged in the debug file.
-       if ( $wgDebugLogFile == '' || ( !$wgDebugRawPage && wfIsDebugRawPage() ) ) {
+       if ( isset( $wgDebugLogGroups['profileoutput'] )
+               && $wgDebugLogGroups['profileoutput'] === false
+       ) {
+               // Explicitely disabled
+               return;
+       }
+       if ( !isset( $wgDebugLogGroups['profileoutput'] ) && $wgDebugLogFile == '' ) {
+               // Logging not enabled; no point going further
+               return;
+       }
+       if ( !$wgDebugRawPage && wfIsDebugRawPage() ) {
                return;
        }
 
@@ -1284,7 +1293,7 @@ function wfLogProfilingData() {
                gmdate( 'YmdHis' ), $elapsed,
                urldecode( $requestUrl . $forward ) );
 
-       wfErrorLog( $log . $profiler->getOutput(), $wgDebugLogFile );
+       wfDebugLog( 'profileoutput', $log . $profiler->getOutput() );
 }
 
 /**
index 1a7f21e..e1777b1 100644 (file)
@@ -461,6 +461,11 @@ if ( $wgRateLimitLog && ! array_key_exists( 'ratelimit', $wgDebugLogGroups ) ) {
        $wgDebugLogGroups['ratelimit'] = $wgRateLimitLog;
 }
 
+if ( $wgProfileOnly ) {
+       $wgDebugLogGroups['profileoutput'] = $wgDebugLogFile;
+       $wgDebugLogFile = '';
+}
+
 wfProfileOut( $fname . '-defaults2' );
 wfProfileIn( $fname . '-misc1' );