프로그램 시작 및 종료 시간 로그

프로그램 시작 및 종료 시간 로그

개인 로깅을 위해 프로그램이 실행되는 하루 총 시간(백그라운드에 있더라도 처음부터 닫힐 때까지)을 얻고 싶습니다. 예: Firefox 브라우저.

  • 개장 및 폐장 시간을 추적하는 시스템 로그가 있습니까?
  • 사용할 수 있는 사전 구축된 유틸리티가 있습니까?

그렇지 않다면 스크립트 작성에 대한 제안 사항이 있습니까?

답변1

회계 유틸리티(예를 들어 GNU 구현) 사용자 활동을 추적하고 사용자 활동을 보고하는 다양한 도구를 제공합니다.

lastcomm

마지막으로 실행된 명령을 나열하고

sa

(다음으로 실행 root)은 활동 요약을 제공합니다.

특정 프로세스가 실행된 시간을 표시하려면 다음을 수행하십시오.

sudo sa | grep chromium

그러면 다음과 같은 많은 값이 출력됩니다.

   5    6781.67re       3.78cp         0avio    265418k   chromium
   4    4521.35re       0.00cp         0avio    176024k   chromium*

첫 번째 열은 특정 프로세스가 실행된 횟수이고, 두 번째 열은 프로세스가 실행된 총 시간(분)입니다(아마도 동시에). *다른 바이너리를 실행하지 않고 분기된 요약 프로세스 로 끝나는 줄입니다 . 브라우저는 여러 프로세스를 동시에 실행하는 경향이 있으므로 별표로 표시된 인스턴스는 이 경우 사용된 추가 프로세스를 나타내므로 이 값을 빼면 실제로 얼마나 많은 시간이 소요되었는지 알 수 있습니다.

이 값은 모든 사용자에 걸쳐 집계되므로 귀하가 시스템의 유일한 사용자인 경우에만 귀하의 목적에 매우 유용합니다.

답변2

결국 다음 스크립트를 사용하여 프로그램을 시작하고 이를 응용 프로그램에 대한 기본 포인터로 바꿨습니다.

#!/bin/bash
echo -n "$(date +%s)" >> ~/myapplog.log
/application_path/
echo ",$(date +%s)" >> ~/myapplog.log

기본적으로 애플리케이션의 시작 및 중지 시간을 새 줄에 쉼표로 구분하여 각 세션의 타임스탬프로 기록합니다. 예: 1452663495,1452663502

(날짜 +%S)를 원하는 형식으로 변경할 수 있습니다(날짜는 매뉴얼 페이지 참조).

관련 정보