2014-03-04 2 views
0

Zend Framework 2로 로그 파일을 만들려고합니다. Zend \ Log \ Logger 및 Zend \ Log \ Writer \ Stream을 사용하여 해결책을 찾았습니다. 실제로, 그것은 잘 작동합니다. 그러나 문제는 모든 액션 메소드와 모든 컨트롤러 클래스에서 해당 코드를 사용해야한다는 것입니다.Zend Framework 2 Zend/Log Logger

누구나 모든 작업 방법과 모든 컨트롤러 클래스에서 동일한 코드를 작성하지 않고 전체 웹 사이트의 로그 파일을 만드는 방법을 알고 있습니까? 답변 주셔서 감사합니다!

답변

2

이러한 종류의 기능에는 EventManager을 사용합니다. 언제든지 오류가 발생하면 정의한 특정 오류 이벤트가 트리거됩니다. 그런 다음 로그하려는 각 이벤트에 연결하는 LogingModule이 있습니다.

이벤트에 Exception/ErrorMessage를 전달해야합니다.

TL/DR EventManager는 사용자가 찾고자하는 것입니다.

+0

이것은 내가 한 방법입니다. $ eventManager = $ e-> getApplication() -> getEventManager(); $ eventManager-> attach ('dispatch.error', function ($ e) { $ 예외 - $ e-> getResult() -> 예외, if ($ 예외) { $ sm = $ e-> getApplication $ service- $ sm-> get ('ApplicationServiceErrorHandling'); $ service-> logException ($ exception); } }); 그게 무슨 뜻이야? –

+0

대략, 당신은 "dispatch.error"에 붙이지 않을 것입니다, 당신은 오히려 당신의 모듈들이 제공하는 이벤트들에 매달릴 것입니다. – Sam