에서 필드를 추출 (here을 발견) :내가 자바 스크립트 SDK 인 Splunk를 사용하여 코드의 주어진 조각에서 필드를 사용하기 위해 노력하고있어이 스크립트
이// Search everything and return the first 100 results
var searchQuery = "search * | head 100";
// Set the search parameters
var searchParams = {
exec_mode: "normal",
earliest_time: "2012-06-20T16:27:43.000-07:00"
};
// Run a normal search that immediately returns the job's SID
service.search(
searchQuery,
searchParams,
function(err, job) {
// Display the job's search ID
console.log("Job SID: ", job.sid);
// Poll the status of the search job
job.track({period: 200}, {
done: function(job) {
console.log("Done!");
// Get the results and print them
job.results({}, function(err, results, job) {
var rows = results.rows;
//I want the 'rows' array
});
},
failed: function(job) {
console.log("Job failed")
},
error: function(err) {
done(err);
}
});
}
);
아이디어는 배열 가변적이고 '행을 얻을 수 있습니다 '이 스 니펫이 실행 된 후에 console.log (행)를 실행할 수 있습니다.
회선 아래에 회신을 추가하는 것은 저에게 효과적이지 않습니다.
도움 주셔서 감사합니다. 콜백 내에 'console.log (행)'을 추가하는 방법은 무엇입니까? 함수의 어느 부분이 비동기이고 그 이유는 확실하지 않습니다. –
나는 분명히해야한다, 나의 의도는 app.get() {[splunk api call];을 통해 배열 'rows'를 보낸다. resynch(); res.send (rows);},하지만 비동기 함수가 실행을 마친 후에 만 같아진다. –
최종 콜백 함수는 호출 된 익명 함수 인'function (err, results, job) {...}'이다. 모든 비동기 작업의 끝. 'var rows = ...; 뒤에'res.send (rows);를 삽입하면된다. 'res' 변수는 둘러싸는 코드로부터 "캡쳐"됩니다 – qxz