chteuchteu / symfony-exceptions-2-gitlab-issues-bundle
从 Symfony2 异常创建和更新 GitLab 仓库中的问题
Requires
- php: ^5.4|^7.0
- m4tthumphrey/php-gitlab-api: ^7.15
- symfony/symfony: >=2.1.0
This package is auto-updated.
Last update: 2024-09-08 07:02:33 UTC
README
这个名字很长,但至少我们知道它是什么。
安装后,当抛出异常时,此包将打开/更新您的 GitLab 仓库中的问题
- 我们从异常文件、行和消息构建问题标题
- 如果存在具有此标题的问题,我们将更新它
- 我们在问题正文中放入一些相关信息(请求方法(GET、POST、...)& URI、已登录用户、堆栈跟踪)
- 我们添加/更新一条评论:"已抛出 3 次,最后一次是 2016/07/14 09:37:47"
安装
-
将此包添加到您的项目中
composer require chteuchteu/symfony-exceptions-2-gitlab-issues-bundle
-
在 symfony 的内核中注册此包
// app/AppKernel.php public function registerBundles() { $bundles = array( // ... new Chteuchteu\SymExc2GtlbIsuBndle\SymfonyExceptions2GitLabIssuesBundle(), ); }
-
生成 GitLab API 令牌。导航到 https://gitlab.com/profile(如有必要,请将 URL 替换为您的实例的,但不要遗漏
/profile
部分),然后是 "Personal Access Tokens"。您可以取任何名字,但 "SymfonyExceptions2GitLabIssuesBundle" 看起来是一个很好的名字。
注意:您可以在多个项目中共享此令牌。
-
在您的项目中配置此包
# config.yml sym_exc_2_gtlb_isu_bndle: gitlab_api_url: https://gitlab.com/api/v3/ gitlab_token: (put your token here) project: your_project_name excluded_exceptions: - Symfony\Component\HttpKernel\Exception\NotFoundHttpException
注意:如果您使用 https://gitlab.com,您实际上可以跳过
gitlab_api_url
。如果不是,请记住/api/v3/
部分。 -
在生产中部署您的应用程序,并触发异常。一个问题应该已经在您的 GitLab 仓库中等待您了。
-
(可选) 自定义
excluded_exceptions
节来包括/排除由此包处理的异常。默认情况下(如果没有指定excluded_exceptions
),处理所有异常。
配置
这里有一些您可以配置的更多内容。只需将这些项目添加到您的 config.yml
中,在 sym_exc_2_gtlb_isu_bndle
节下。
-
reopen_closed_issues
- 布尔值,默认true
当设置为
true
时,任何关闭的问题在捕获到匹配的异常时都会被重新打开。 -
excluded_environments
- 数组,默认['dev', 'test']
当在这些环境中遇到异常时,我们不会将这些内容报告到您的 GitLab 仓库。
提示:包括回开发环境(
excluded_environments: []
)来测试此包,而无需部署到生产! -
excluded_exceptions
- 数组,默认[]
要忽略的异常的完全限定类名(FQCN)数组。
提示:将
Symfony\Component\HttpKernel\Exception\NotFoundHttpException
添加到忽略 404 异常。 -
mentions
- 数组,默认[]
在问题正文中提及的 GitLab 用户。示例:
['user1', 'user2', 'user3']
将在消息末尾附加 "提及: @user1 @user2 @user3"。
TODO
- 使更多内容可配置
- 问题正文模板
- 评论日期时间格式?
- 在查找问题时处理分页
- 测试模式
- 帮助诊断问题(monolog 日志)