我遇到一个问题,我的控制器操作被调用了两次而且我不知道为什么。
这是我为测试制作的一种简单方法。
$(document).ready(function() {
isSavedColor()
$('.colors').hide();
$('#expandcolors').click(function() {
$('.colors').slideToggle();
$(this).toggleClass('transform');
});
})
这是日志。
/**
* @param Request $request
* @return Response
* @Route("/star-remote-control")
*/
public function starRemoteControlAction(Request $request)
{
$this->container->get('monolog.logger.always')->info('ClientIP:' . $request->getClientIp() . ' ' . $request->getContent());
return new Response("hello");
}
你能帮我解决为什么它被叫两次吗?
提前致谢
答案 0 :(得分:1)
我没有女巫服务正在使用,因为默认情况下访问monolog是使用logger服务,也许您为“monolog.logger”提供服务,并且服务正在将日志记录到文件的两倍。
我正在使用此代码正常工作:
$logger = $this->get('logger');
$logger->info('ClientIP:' . $request->getClientIp() . ' ' . $request->getContent());
我的日志:
[2017-01-23 16:23:59] event.DEBUG: Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelController". [] []
[2017-01-23 16:23:59] app.INFO: ClientIP:127.0.0.1 [] []
[2017-01-23 16:23:59] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse". [] []
[2017-01-23 16:23:59] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\Security\Http\RememberMe\ResponseListener::onKernelResponse". [] []
monolog服务是:
monolog.logger.doctrine Symfony\Bridge\Monolog\Logger
monolog.logger.event Symfony\Bridge\Monolog\Logger
monolog.logger.php Symfony\Bridge\Monolog\Logger
monolog.logger.profiler Symfony\Bridge\Monolog\Logger
monolog.logger.request Symfony\Bridge\Monolog\Logger
monolog.logger.router Symfony\Bridge\Monolog\Logger
monolog.logger.security Symfony\Bridge\Monolog\Logger
monolog.logger.templating Symfony\Bridge\Monolog\Logger
monolog.logger.translation Symfony\Bridge\Monolog\Logger