前边几篇文章分布介绍了Azure网站中的PHP,包括架构,配置等。今天我们介绍在Azure网站中PHP网站问题排查。

php_errors.log

Microsoft Azure网站自动记录PHP站点的错误日志,包括PHP页面运行过程中产生的异常也包括扩展模块相关的异常信息。这些错误日志记录在/LogFiles/php_errors.log文件中,您可以通过FTP下载该文件或者使用kudu站点在线查看。

下面是php_errors.log中的一些实例:

[09-Jun-2014 14:04:24 America/Los_Angeles] PHP Notice: Undefined index: countrycode in D:\home\site\wwwroot\cp\messenger\longcodes.php on line 127
[09-Jun-2014 14:04:25 America/Los_Angeles] PHP Warning: file_get_contents(http://rest.nexmo.com/number/search?api_key=5b5fd588&api_secret=a1b9abba&features=SMS&country=): failed to open stream: HTTP request failed! HTTP/1.1 420 in D:\home\site\wwwroot\cp\messenger\longcodes.php on line 128
[09-Jun-2014 14:04:25 America/Los_Angeles] PHP Warning: Invalid argument supplied for foreach() in D:\home\site\wwwroot\cp\messenger\longcodes.php on line 142

使用error_log函数

与ASP.NET中的trace功能类似,您可以在您的PHP代码中使用error_log函数将应用程序的信息记录到php_errors.log中。下面的例子记录了进入和离开函数的时间。

function DoYourWork()
{
// Entered DoYourWork
error_log ( "Enter DoYourWork " . date('h:i:s') );

… function body ….

//Leaving DoYourWork
error_log ( “Leaving DoYourWork ” . date(‘h:i:s’) );
}

在php_errors.log中,您会看到类似下面的信息:

[02-Apr-2014 00:42:05 America/Los_Angeles] Enter DoYourWork 12:42:05
[02-Apr-2014 00:43:16 America/Los_Angeles] Leaving DoYourWork 12:43:16

Leave a comment

电子邮件地址不会被公开。 必填项已用*标注