감독자를 통해 실행되는 프로세스가 있습니다. 멀티로그를 사용하여 log/run을 통해 출력을 기록하므로 로그 출력은 log/main/current에서 끝납니다. 또한 버퍼링 후 로그를 AWS CloudWatch Logs로 푸시하는 "aws message push"라는 두 번째 명령으로 출력을 파이프하고 싶습니다.
멀티로그를 통해 즉시 로깅하고 "aws log push"로 파이프하여 궁극적으로 AWS CloudWatch Logs에서 사용할 수 있도록 로그/실행 스크립트를 설정하려면 어떻게 해야 합니까?
내 로그/실행 스크립트는 다음과 같습니다
exec setuidgid <username> multilog ./main
편집하다:
디렉토리 구조:
<project path>/supervise/run <project path>/supervise/log/run <project path>/supervise/log/main/current
이제 잠이 들었으니 내 혼란은 다음과 같이 요약될 수 있을 것 같습니다.
- 감독자를 사용할 때 권장되는 사항은 실행 스크립트에서 프로세스를 "실행"하여 감독자가 보내는 신호를 수신하는 것입니다.
- 감독 로그 프로세스로 전송된 모든 신호를 캡처한 다음 두 프로세스로 보내 두 프로세스가 제대로 종료되는지 확인해야 합니다.
- 스크립트의 stdin에서 두 프로세스를 동시에 읽는 방법이 명확하지 않습니다.