2012-05-08 6 views
0

매번 작업을 마친 후 최신 원시 작업 기록을 가져 와서 내 형식으로 저장하고 싶습니다. 저장 프로 시저를 작성하여 sp_help_jobhistory으로 기록을 가져온 다음 결과의 서식을 지정한 다음 새 테이블에 저장합니다.SQL Server 작업이 끝난 후 이벤트가 있습니까?

그러나이 저장 프로 시저를 호출 할 때?

작업이 완료되면 일부 이벤트가 실행됩니까?

어쩌면 다른 해결책이있을 수 있습니다.

답/의견을 보내 주셔서 감사합니다.

+2

작업의 마지막 단계로 저장 프로 시저를 실행하는 것이 좋습니다. 이렇게하면 성공하면 SP가 호출됩니다. – Akhil

+0

예, 이것을 고려했습니다. 그리고이 솔루션은 현재 실행중인 작업의 기록을 가져올 수 없습니다. 감사. – zclmoon

답변

0

나는 해결책을 시도하고 잘 작동한다. 1 단계 : sp BeginHistoryLog를 호출합니다.이 sp는 작업 이름별로 [msdb]. [dbo]. [sysjobs] 테이블에서 작업 정보를 가져옵니다. 그리고이 SP는 HistoryHistory에 초기 데이터를 기록하여 기록 메시지를 기록합니다.

2 단계 : 실제 작업을 수행하는 sp를 호출합니다.

3 단계 : SP EndHistoryLog를 호출하면이 SP는 msdb.dbo.sysjobhistory 및 INNER JOIN [msdb]. [sysjobs]. 작업 ID 및 단계 ID로 step2 실행 정보를 가져옵니다. 그리고이 sp는 JobHistory 테이블에 실행 정보를 씁니다.

0

Akhil이 말했듯이 단순히 작업에 단계를 추가하고 올바르게 연결되어 있는지 확인하십시오 (성공을 기반으로 한 작업 체인 단계, 최종 단계 성공, 저장된 proc 실행).

+0

이 메서드는 현재 실행중인 작업의 기록을 가져올 수 없습니다. 감사. – zclmoon

관련 문제