exs/error-bundle

Symfony2 的错误日志包

v2.1.0 2017-07-05 19:02 UTC

This package is auto-updated.

Last update: 2024-08-29 04:14:25 UTC


README

用于在数据库中记录 4xx 和 5xx 错误和异常的错误包。

该包作为服务安装,监听所有 4xx 和 5xx HTTP 异常,并将它们记录在数据库中。当与启用了 crontab 的监控程序一起使用时,我们可以当网站上有异常数量的错误时提醒开发团队,并在必要时快速修复。

在新的 Symfony2 项目中安装 ErrorBundle

因此 ErrorBundle 已经准备好安装了,这是一个好消息,但我们应该如何安装它。安装过程实际上非常简单。使用 Composer 设置一个新的 Symfony2 项目。

直接从命令行要求

composer require 'exs/error-bundle:1.0'

一旦设置好新项目,打开 composer.json 文件,并将 exs/error-bundle 添加为依赖项

//composer.json
//...
"require": {
        //other bundles
        "exs/error-bundle": "~1.0@dev"

保存文件,并通过命令行使用 composer 更新项目

php composer.phar update

Composer 将更新所有依赖项,你应该会看到我们的包在列表中

  - Installing exs/error-bundle (dev-master 0c644b1)
    Cloning 0c644b1315e75cd4ff521eeea0ee3243faad0ce3

现在只需更新 app/AppKernel.php 和 app/config/routing.yml 以包含我们的包,清除缓存并更新模式

//app/AppKernel.php
//...
    public function registerBundles()
    {
        $bundles = array(
            //Other bundles
            new EXS\ErrorBundle\EXSErrorBundle()
        );

添加 routing.yml

#app/config/routing.yml
#...
contact:
    resource: "@EXSErrorBundle/Controller/"
    type:     annotation
    prefix:   /

将包添加到 ORM 配置中

#app/config/config.yml
#...
    orm:
        auto_generate_proxy_classes: "%kernel.debug%"
        default_entity_manager: default
        entity_managers:
            default:
                connection: default
                mappings:
                    AppBundle:  ~
                    EXSErrorBundle: ~

添加废弃的错误参数

# parameters.yml:
    deprecated_errors_logging: false

清除缓存并更新数据库

php app/console cache:clear
php app/console doctrine:schema:update --force

现在就完成了。

您可以通过从您的应用程序中引发 500 和 400 系列错误来测试它是否正常工作。错误(以及有用的调试信息)将记录在以下表中

  • exception4xx

  • exception5xx

如果您想通过包含的控制器测试引发的异常,可以尝试以下路由

如果您想测试控制台异常,请尝试

php app/console _test:command:fatal
php app/console _test:command:notice
php app/console _test:command:exception

贡献

任何人都可以贡献。

如果您有任何问题或建议,请告诉我们