비동기 TCP 서버 (특히 MUD 서버)를 생성하는 데 멋진 AnyEvent을 사용하고 있습니다.Perl의 AnyEvent에서 사용할 로깅 모듈은 무엇입니까?
블로킹/동기 코드를 거의 사용하지 않고 원활하게 실행하기 위해 비동기 모듈과 함께 사용했던 일부 모듈 (예 : AnyEvent::Memcached 및 AnyEvent::Gearman)을 교체했습니다. 이것은 주 프로그램이 아주 빠르다는 것을 가능하게하는데, 이것은 바람직하다. 필자는 이러한 호출 중 일부가 동기화되어야한다는 필요성을 주위에 코딩했습니다.
현재 내가 가지고있는 한 가지 문제점과이 질문의 초점은 로깅입니다.
이 서버 프로그램에 대한 AnyEvent를 사용하기 전에 어떤 모듈이나 서브 루틴을 어떤 수준에서 로그 출력 (화면, 파일 등)을해야하는지 미세 조정할 수 있으므로 Log::Log4perl을 사용하고있었습니다.
Log4perl 작업 (경고, 정보 등)이 현재 동 기적으로 수행되지만 로그 라인이 결국 화면/파일 (및 올바른 순서)).
AnyEvent와 같은 비동기 이벤트 처리기를 사용할 때 Log :: Log4perl이 올바른 선택인지, 아니면 다른 모듈을 봐야합니까? 그렇다면 어떤 것이 좋습니다?
비동기 애플릿이 존재하지 않는 것을 분명히하기 위해 감사드립니다. – mfontani