본문 바로가기
이것저것(독후감같은거)

jenkins rest-api 로 job health-check

by 혜룐 2015. 11. 10.

젠킨스로 거의 모든 배치성 일들을 수행하고 있다.
젠킨스 rest-api 로 job을 모니터링하고 , health-check를 하는게 좋을것 같아서
뜨든!
http://jenkins_server_name.com" target="_blank">http://jenkins_server_name.com:port/api/json?tree=jobs[displayName,lastBuild[number,result,timestamp,id],url,inQueue,queueItem,nextBuildNumber]&exclude=hudson/job[lastBuild[result=SUCCESS]]
http://jenkins_server_name.com" target="_blank">http://jenkins_server_name.com:port//api/json?tree=jobs[lastStableBuild[number],firstBuild[number],buildable,displayName,lastBuild[number,result,timestamp,id],url,inQueue,queueItem,nextBuildNumber]
api/json은 결과를 json으로 받게 되고, api/xml은 결과를 xml형식으로 받게 된다.jobs[...blabla..] 는 잡에 대한 정보를 리스트로 표현할수 있게 되고, 무엇보다 큐에대한 정보를 얻을수 있어서 좋다!관리하는 잡큐의 max 가 10개인것 같다. 큐가 그이상이 되면 그 잡을 build-now해도 빌드가 안된다는.. 그래서 큐의 개수와 상태만 가지고도 그 잡이 잘 있는지 체크하기에 좋을것 같다buildable 은 현재 프로젝트가 활성이면 true / 비활성이거나 중지면 false 상태result가 success인것만
참고
http://www.javacodegeeks.com/2014/04/using-jenkins-hudson-remote-api-to-check-jobs-status.html
http://stackoverflow.com/questions/14843874/from-jenkins-how-do-i-get-a-list-of-the-currently-running-jobs-in-json