在Symfony的beforeSend函数中获取rootDir来拦截Sentry事件

问题描述 投票:0回答:1

我有一名服务员来拦截哨兵事件。我正在使用一个称为beforeSend的函数。

我将加载一个包含要清理或保留的数据的json文件。这是一项服务,我以与其他人相似的方式构建构造函数,但是当我进入此功能的调试器时,“ $ this”上下文不存在。

内核位于Global变量中,但是我认为这不是一个好主意。我只想获取root目录就可以了,但是我没有找到如何在此类中进行此操作的。构造函数似乎没用。

有人可以为我提供类似的经验吗?

非常感谢。

symfony sentry
1个回答
0
投票

您可以在服务构造函数中使用命名参数注入kernel.project_dir参数:

在您的services.yml文件中:

    bind:
        string $kernelProjectDir: '%kernel.project_dir%'

然后为您服务:

public function myFunction(string $kernelProjectDir)
{
© www.soinside.com 2019 - 2024. All rights reserved.