exolnet / wp-graylog
添加一个mu插件,用于注册Monolog处理器,将异常发送到Graylog通道。
v2.0.1
2022-10-20 15:33 UTC
Requires
- php: ^7.4|^8.0
- graylog2/gelf-php: ^1.6
- monolog/monolog: ^2.3
- myclabs/php-enum: ^1.8.1
Requires (Dev)
- exolnet/phpcs-config: ^1.0
- mockery/mockery: ^1.5
- phpunit/phpunit: ^9.3.3
- squizlabs/php_codesniffer: ^3.6
README
添加一个mu插件,用于注册Monolog处理器,将异常发送到Graylog通道。
需求
- Bedrock
- Composer
- PHP 7.3或更高版本
- Wordpress
安装
使用Composer安装此包
composer require exolnet/wp-graylog
在您的config/application.php
文件中定义以下PHP常量
/** * wp-graylog * * Here you may configure the Graylog channel for your application. Behind the * scene, it uses the Monolog PHP logging library. */ Config::define('GRAYLOG_TRANSPORT', env('GRAYLOG_TRANSPORT')); Config::define('GRAYLOG_HOST', env('GRAYLOG_HOST')); Config::define('GRAYLOG_PORT', env('GRAYLOG_PORT')); Config::define('GRAYLOG_LEVEL', env('GRAYLOG_LEVEL'));
然后,更新您的.env
文件以添加GRAYLOG_HOST
环境变量
GRAYLOG_HOST=localhost
用法
安装后,您的代码中级别高于或等于GRAYLOG_LEVEL
的错误将被发送到指定的Graylog实例。您然后将能够将所有日志集中在一个地方。
支持的传输方式
以下传输方式得到支持:UDP
、TCP
、SSL
、HTTP
和HTTPS
。根据您的Graylog设置选择相应的传输方式,使用GRAYLOG_TRANSPORT
配置。默认情况下,使用UDP
传输。
HTTP
和HTTPS
传输的默认路径是/gelf
。此值可以使用GRAYLOG_PATH
配置进行设置。
Config::define('GRAYLOG_PATH', env('GRAYLOG_PATH', '/gelf'));
应用程序名称
默认情况下,使用博客名称作为应用程序名称,但您可以使用变量GRAYLOG_APP
来覆盖它
Config::define('GRAYLOG_APP', 'custom-app-name');
禁用默认错误处理器
默认情况下,如果配置了GRAYLOG_HOST
,则会配置PHP错误处理器,将所有错误发送到Graylog。此行为可以通过配置以下环境变量来禁用
Config::define('GRAYLOG_INITIALIZE_ERROR_HANDLER', false);
捕获错误
您可以捕获捕获的异常或捕获最后错误
try { $this->functionFailsForSure(); } catch (\Throwable $exception) { \Exolnet\Wordpress\Graylog\WpGraylog::captureException($exception); } // OR \Exolnet\Wordpress\Graylog\WpGraylog::captureLastError();
测试
要运行PHPUnit测试,请使用
composer test
贡献
请参阅CONTRIBUTING和行为准则以获取详细信息。
安全
如果您发现任何与安全相关的问题,请通过电子邮件security@exolnet.com而不是使用问题跟踪器。