결과 - 범위 지정, 전역
Findings API는 검사에서 인스턴스 스캔 결과를 생성하는 방법을 처리하기 위한 메서드를 제공합니다.
이 API는 (com.glide.instance_scan) 플러그인에 인스턴스 스캔 포함되어 있으며 sn_instance_scan 네임스페이스에서 실행됩니다. 자세한 내용은 Instance Scan 단원을 참조하십시오.
Instance Scan에서는 인스턴스 스캔 범위 내의 각 기록에 대해 검사가 실행되어 발견 사항을 생성합니다. 각 발견 사항에는 문제 기록에 대한 정보와 어떤 검사가 위반되었는지 여부가 포함됩니다. 찾기 메서드는 검사에서 인스턴스 스캔 사용자에게 전달되는 엔진 개체의 일부로 사용됩니다. 검사 양식의 스크립트 필드에 코드를 추가합니다.
결과 - increment()
현재 찾기의 개수를 늘립니다.
찾기 횟수는 검사가 검사에서 분석하는 각 기록에 대해 0부터 시작합니다. 호출되면 이 메서드는 찾기 횟수를 증가시킵니다. 개수는 현재 기록에 대한 찾기가 생성되어야 함을 나타냅니다.
이 메서드를 여러 번 호출하여 이 발견 사항에 현재 기록에서 검사 위반이 여러 번 발생했음을 나타낼 수 있습니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 안 함 |
다음 예는 테이블 유형 검사에서 실패한 상태의 기록 수를 계산하는 방법을 보여줍니다. 자세한 내용은 테이블 유형 검사 만들기를 참조하세요.
(function(engine) {
if (current.getValue("state") == "failed") {
engine.finding.increment();
}
})(engine);
결과 - incrementWithNode(객체 노드)
현재 찾기가 린터 검사에서 나온 것이면 이 메서드는 현재 찾기 횟수를 증가시키는 동시에 린터 노드 객체를 찾기에 전달합니다.
린터 검사 양식의 스크립트 필드에 이 방법을 사용합니다. 이 메서드는 지정된 노드에 대한 정보(예: 현재 찾기의 상세 정보 열에 라인 번호)를 저장합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 노드 | 객체 | 린터 검사의 노드 객체입니다. |
| 유형 | 설명 |
|---|---|
| 안 함 |
다음 예제에서는 린터 검사에서 린터 유형 노드를 증가시키는 방법을 보여줍니다. 린터 검사 메서드 사용에 대한 자세한 내용은 LinterCheckAstNode API를 참조하세요.
(function(engine) {
engine.rootNode.visit(function(node) {
if (node.getTypeName() === "NAME" &&
node.getNameIdentifier() === "soughtFunction" &&
node.getParent().getTypeName() === "CALL") {
engine.finding.incrementWithNode(node);
}
});
})(engine);
찾기 - setCurrentSource(GlideRecord 소스)
제공된 GlideRecord를 기반으로 현재 찾기의 소스를 설정합니다.
스크립트만 검사의 스크립트 필드에 이 메서드를 사용합니다. 이 방법은 스캔 중에 소스를 현재 기록으로 자동 설정하기 때문에 다른 검사에는 사용되지 않습니다. 자세한 내용은 스크립트만 검사 만들기를 참조하십시오.
| 이름 | 유형 | 설명 |
|---|---|---|
| 소스 | GlideRecord | 현재 찾기에 대한 소스 기록으로 설정할 기록입니다. 이 값은 스캔 결과 [scan_finding] 테이블의 소스 필드에 참조로 추가됩니다. |
| 유형 | 설명 |
|---|---|
| 안 함 |
다음 예시에서는 스크립트 전용 검사에서 현재 소스를 인시던트 기록으로 설정하는 방법을 보여줍니다. 자세한 내용은 스크립트만 검사 만들기를 참조하십시오.
(function(engine) {
var gr = new GlideRecord('incident');
gr.get('2f99f330730210100a5310c92bf6a798');
engine.finding.setCurrentSource(gr);
engine.finding.increment();
})(engine);