php日志只记录堆栈信息怎么设置

不及物动词 其他 95

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    要让PHP日志只记录堆栈信息,可以通过设置PHP的错误报告级别和错误日志输出来实现。下面是具体的设置步骤:

    1. 打开PHP配置文件 php.ini。该文件通常位于php安装目录下的`php.ini`或`php.ini-development`(开发环境)或`php.ini-production`(生产环境)。

    2. 搜索并找到`error_reporting`项。该项用于设置PHP错误报告级别。默认情况下,该项的值为`E_ALL & ~E_NOTICE`,即报告所有错误,但忽略通知级别的错误。你需要将该值修改为`E_ERROR | E_WARNING`,这样只会报告错误和警告级别的错误。改动后的设置应该是`error_reporting = E_ERROR | E_WARNING`。

    3. 搜索并找到`error_log`项。该项用于设置PHP错误日志的输出路径。你可以将该值设置为指定的日志文件路径,如`/var/log/php_errors.log`。如果你不想将错误日志输出到文件中,可以将该值设置为`syslog`,这将把错误日志发送到系统日志。

    4. 保存php.ini文件并关闭。

    5. 重启web服务器,以使配置生效。

    设置完成后,PHP将只记录错误和警告级别的错误信息到指定的日志文件中(或发送到系统日志)。其他级别的错误信息,如通知、警告等将不会被记录。

    需要注意的是,这样设置可能会导致某些重要的错误信息被忽略,因此在开发过程中建议将`error_reporting`设置为`E_ALL`,以便及时发现和修复所有类型的错误。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在PHP中,可以通过修改php.ini文件或在代码中使用内置函数来设置日志记录的级别和格式。如果您只想记录堆栈信息,可以按照以下步骤进行设置:

    1. 编辑php.ini文件:
    找到并打开php.ini文件,该文件通常位于PHP安装目录下的”conf”文件夹中。

    2. 设置日志级别:
    定位到”Error handling and logging”(错误处理和日志记录)部分,找到并修改以下配置项:
    “`
    error_reporting = E_ALL
    “`
    将”E_ALL”改为”0″,表示关闭所有错误报告。
    “`
    display_errors = Off
    “`
    将”Off”改为”0″,表示禁用错误显示。
    “`
    log_errors = On
    “`
    将”On”改为”1″,表示开启错误日志记录。
    “`
    error_log = /path/to/error/logfile.log
    “`
    将”/path/to/error/logfile.log”改为您希望保存错误日志的文件路径。

    3. 只记录堆栈信息:
    添加以下配置项以仅记录堆栈信息:
    “`
    log_errors_max_len = 0
    “`
    这将设置日志文件的最大长度为0,即只记录堆栈信息。

    4. 保存并重启PHP:
    保存php.ini文件并重新启动PHP服务,以使更改生效。

    此外,您还可以在代码中使用内置函数来动态设置日志级别和格式。例如,可以使用error_reporting()函数来设置日志级别,使用ini_set()函数来设置其他相关配置项。以下是一个示例:
    “`php
    error_reporting(0); // 设置日志级别为0,关闭错误报告
    ini_set(“display_errors”, “Off”); // 禁用错误显示
    ini_set(“log_errors”, “On”); // 开启错误日志记录
    ini_set(“error_log”, “/path/to/error/logfile.log”); // 设置错误日志文件路径
    ini_set(“log_errors_max_len”, “0”); // 只记录堆栈信息
    “`
    这样可以在代码中灵活控制日志设置,而无需修改php.ini文件。

    请注意,设置日志只记录堆栈信息可能会隐藏其他有用的错误信息,因此请谨慎使用。最好还是记录完整的错误信息以便于排查和解决问题。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    要设置PHP日志仅记录堆栈信息,可以按照以下步骤进行操作:

    步骤1:打开PHP配置文件
    找到php.ini文件,一般位于PHP安装目录的根目录下。你可以使用文本编辑器打开该文件。

    步骤2:找到错误日志相关配置
    在php.ini文件中,搜索以下配置项:

    “`
    error_reporting
    log_errors
    error_log
    “`

    步骤3:设置错误报告级别
    根据你的需求,使用合适的错误报告级别。以下是一些常见的错误报告级别选项:

    – `E_ALL`:显示所有错误和警告
    – `E_ERROR`:仅显示致命错误
    – `E_ALL & ~E_NOTICE`:显示所有错误和警告,但不包括通知

    例如,将错误报告级别设置为仅显示致命错误,可以将`error_reporting`配置项设置为如下所示:

    “`
    error_reporting = E_ERROR
    “`

    步骤4:启用日志记录
    将`log_errors`配置项设置为`On`,表示启用日志记录:

    “`
    log_errors = On
    “`

    步骤5:指定日志文件位置
    设置`error_log`配置项,指定日志文件的路径和名称。例如,将日志文件保存在PHP安装目录下的logs文件夹中,可以设置如下:

    “`
    error_log = /path/to/php/logs/error.log
    “`

    请确保指定的日志文件路径存在,并且PHP进程有写入权限。

    步骤6:重启Web服务器
    保存php.ini文件,并通过重启Web服务器来使配置生效。

    完成上述步骤后,PHP将仅记录堆栈信息到指定的日志文件中。其他一些错误信息,如警告或通知,将不会记录到日志中。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部