如何在symfony debug上显示自定义事件

时间:2016-10-18 06:22:20

标签: php symfony debugging events

我正在尝试调试一个事件,并找到this documentation from symfony,但显示的所有事件都是:

console.command
console.terminate
fos_elastica.post_transform
kernel.controller
kernel.exception
kernel.finish_request
kernel.request
kernel.response
kernel.terminate
kernel.view
security.interactive_login

没有任何自定义事件显示,而且,我们正在定义。 但是我看到除了内核之外,还有FOS。

我通过以下方式注册了我的听众:

company.domain.listener.service_pro_listener:
   class: Company\Domain\Listener\Customer\CustomerListener
   arguments:
     - '@company.command.executor'
   tags:
     - name: werkspot.domain.synchronized_event_listener
       event: 'Company\Domain\Event\Customer\RegisteredEvent'
       method: 'onRegisterPushToSalesforce'

活动正在进行,网站上的手动测试我可以验证一切都按预期工作。如果我只是通过该命令确认所有内容都已正确设置,那将会更容易。所以必须有一种方式在命令列表中显示我们的事件。

无论如何要实现这个目标吗?

1 个答案:

答案 0 :(得分:2)

您似乎正在使用自定义事件调度程序(我通过侦听器服务定义上的标记看到),而Symfony bin/console debug:event-dispatcher命令将显示其自己的调度程序的侦听器。

为了做你想做的事,你必须实现自己的命令来调试你自己的调度程序,或者改变用于使用Symfony中的调度程序的调度程序。