백그라운드 C 프로그램 모니터링

백그라운드 C 프로그램 모니터링

원격 서버에서 실행되는 C 프로그램을 디버깅하고 있습니다. 이 프로그램은 약 3MB의 데이터 파일을 디렉토리에 저장하고 무한 루프에서 10초마다 문자열을 터미널에 인쇄합니다. 서버에 SSH로 접속하여 프로그램을 실행하면 출력 메시지와 데이터가 합리적으로 보입니다. 그런데 프로그램을 crontab에 넣고 다시 시작하면 프로그램은 백그라운드에서 실행되지만 몇 분 내에 데이터 파일 생성이 중지됩니다. Cron이 프로그램을 성공적으로 실행하는 것 같습니다. htop을 열면 프로그램이 있습니다. 그런데 이상한 점은 프로그램에서 어떤 출력도 얻지 못한다는 것입니다. 불행하게도 cron 로그 파일도 더 이상 업데이트되지 않습니다.

백그라운드에서 C 프로그램을 모니터링하는 방법은 무엇입니까? 백그라운드 프로세스의 stdout, stderr을 실시간으로 볼 수 있나요? 또는 그러한 프로그램을 디버깅하는 널리 사용되는 방법이 있습니까?

답변1

원하는 내용을 올바르게 이해했는지 확실하지 않지만 stderr 및 stdout을 별도의 파일 ./myprogram 2>./stderr 1>./stdout또는 동일한 파일로 리디렉션할 수 있습니다../myprogram > ./logfile 2>&1

관련 정보