만일 기기 내부에 임시로 로그를 저장하거나, 로그의 양을 조절하기 위한 우선순위 지정등의 추가 기능이 필요할 경우 이를 위한 자체 로깅 API를 작성하거나 혹은 시스템에서 제공하는 syslog()등의 사용을 고려할 수 있다. 하지만 재빌드가 불가능한 3rd party library등에서 printf를 사용하고 있다면 여기에 새 로깅 API를 적용할 수는 없다.
위와 같이 별도의 로깅 시스템이 고려되지 못한 상황에서 표준 출력과 표준 에러에만 의존하는 프로그램을 로깅하기 위해서 아래와 같은 방법을 사용할 수 있다.
# program 2>&1 | tee /tmp/log.txt
- program : 프로그램명
- 2>&1 : 표준 에러를 표준 출력과동일한 곳으로 설정
- | :표준 출력을다음 프로그램의 표준 입력으로전달
- tee : 표준입력을 표준출력으로 보내면서 동시에 인자로 지정 된 경로에 전달
댓글 없음:
댓글 쓰기