사용자 지정 모니터링 도구의 경우 Jenkins 빌드의 콘솔 로그를 청크로 가져 오는 API (REST)가 필요합니다.청크에서 빌드 로그를 검색하는 Jenkins API
/consoleText 및/logText/progressive {Text | HTML} API에 대해 알고 있지만이 문제는 가끔씩 빌드 로그가 매우 커질 수 있습니다 (최대 몇 GB). 전체 로그를 한 조각으로 가져 오거나 전송하지 않도록 기존 API를 사용하는 방법을 찾지 못했습니다. 그러면 일반적으로 Jenkins 마스터가 정상적으로 작동하지 않습니다.
파일에서 청크를 효율적으로 가져 오는 Java 코드가 이미 있으며, 올바르게로드 된 기본 Jenkins 플러그인이 있습니다. 그게 내가 시도
http://.../jenkins/myPlugin/logChunk?start=1000&size=1000&job=<jobName>&build=<buildNr>
쉽게 만약 내가, 또한
http://.../jenkins/job/<jobname>/<buildnr>/myPlugin/logChunk?start=1000&size=1000
또는 같은 예를 들어, REST를 통해 내 플러그인을 호출 할 수 있도록
올바른 확장 점은 내가 부족 무엇입니까 내 플러그인을 다음과 같이 등록하십시오 (아래 코드는 작동하지 않습니다!)
@Extension
public class JobLogReaderAPI extends TransientActionFactory<T> implements Action {
public void doLogChunk(StaplerRequest req, StaplerResponse rsp) throws IOException {
LOGGER.log(Level.INFO, "## doLogFragment req: {}", req);
LOGGER.log(Level.INFO, "## doLogFragment rsp: {}", rsp);
}
내 플러그인 동작을 등록 할 수있는 올바른 위치를 찾지 못했습니다.
등록 방법을 확인할 수있는 기존 플러그인에 대한 팁이나 조언이 있습니까?
논리를 실행합니다.이에 대한 매우 간단한 예가 될 수 있습니다 내가 뭘하는거야? 노력, 나는 그것을 줄 것이다. – jammann