미스터리 프로세스를 포착하는 가장 좋은 전략은 무엇입니까?

미스터리 프로세스를 포착하는 가장 좋은 전략은 무엇입니까?

내 서버에는 매일 밤 자정에 종료되는 프로세스가 실행 중입니다. 직장에 있는데 그 일이 일어날 때 나는 주변에 없고 원격 액세스도 할 수 없습니다.

살인은 매일 밤 23시 59분에 매우 예측적으로 발생합니다. 나는 다음 날 도착했을 때 다음과 같은 사실을 알고 있습니다.

  • 접수는 23시 59분까지입니다
  • 프로세스 로그에는 마지막으로 수정된 시간이 23:59로 표시됩니다(그리고 그 직후에 새로운 날짜의 로그가 시작됩니다).

살해가 같은 시간에 일어나기 때문에 배치 작업이 강하게 의심되었습니다. 나는 crontab모든 기계를 조사했지만 아무것도 찾을 수 없었습니다. 분명히 나는 ​​뭔가를 놓치고 있습니다.

ps간헐적으로 출력을 보고하고 몇 분 전에 시작되어 at잠시 동안 반복되는 감시 스크립트를 배치할 생각입니다 . 이 아이디어는 약하고 오류가 발생하기 쉬우므로 더 나은 아이디어가 있는 사람이 있는지 궁금합니다.

자세한 내용은:

  • 우주는 매우 크고 오래된 레거시 시스템입니다. 내 팀의 어느 누구도 그러한 프로세스를 인식하지 못하는 것 같습니다(누군가가 알고 있다면 그녀는 우리 팀에 속해 있을 것입니다). 더 큰 조직은 수천 명의 직원으로 구성되어 있지만 이론적으로는 많은 직원이 이에 액세스할 수 있습니다. 왜 그럴까요). 즉, 보안이 그다지 엄격하지 않습니다.

  • 환경은 Solaris 10을 실행하는 여러 시스템으로 구성됩니다.

  • 프로덕션 환경이 아니므로 시간 초과나 가동 중지 시간은 중요하지 않습니다.

  • 나는 살인이 배치 작업으로 인한 것이 아닐 가능성을 배제하지 않습니다. 비록 타이밍이 얼마나 정확하기 때문에 가능성은 낮습니다.

  • 분명히 우리 장부에 결함이 있으므로 상상할 수 있는 모든 것이 가능합니다.

제 질문은 채택할 수 있는 최선의 전략이 무엇인지입니다. 이는 "레거시 시스템에서 작업하는 즐거움"이라는 더 큰 범위에 속합니다. 나는 피드백을 위해 곧 여기에 게시할 스크립트 작업을 시작하고 있습니다. 그동안 더 좋은 아이디어가 있는 사람이 있으면 알려주시기 바랍니다.

답변1

로그를 주기적으로 교체하는 것이 일반적이며 자정에 교체하는 것이 일반적입니다. 많은 응용 프로그램이 이 작업을 자동으로 수행합니다.

logrotate그렇지 않은 경우에는 회전을 수행하는 것과 같은 도구가 있습니다 . 많은 프로그램은 HUP 신호가 전송되면 로그를 다시 열도록 구성되어 있으며 이는 logrotate.

확인해야 할 사항:

  • 모든 PID를 변경하십시오. 그렇지 않은 경우 프로그램이 자체 로그를 회전하거나 로그 회전에 적절하게 응답할 수 있습니다.
  • PID를 변경하는 프로그램의 경우 자정에 다시 시작되었습니까? 그렇지 않은 경우 부모가 무엇을 하는지 확인하세요.
  • 하루가 끝날 때 어떤 프로세스가 실행되는지 보려면 루트의 crontab을 확인하세요.
  • 하루가 끝날 때 어떤 프로세스가 실행되는지 확인하려면 프로세스 userid에 대한 crontab을 확인하세요.
  • 로그 파일이 직접 기록되고 있는지, 아니면 로그를 순환시키는 로그 기록기에 의해 기록되고 있는지 확인하세요.

관련 정보