The docs on requestQueue.getInfo().
After some unsuccessful tries I could have managed to get the requestQueue info output. Note, we run the function inside the Apify runtime environment:
Apify.main(async () => { ... }
Solution 1
We make the function async and add await to the getInfo()
Promise call:
async function printRequestQueue (requestQueue){
var { totalRequestCount, handledRequestCount, pendingRequestCount } = await requestQueue.getInfo();
console.log(`Request Queue info:` );
console.log(' - handled :', handledRequestCount);
console.log(' - pending :', pendingRequestCount);
console.log(' - total:' , totalRequestCount);
}
with the following result:
Request Queue info:
- handled : 479
- pending : 312
- total: 791
Solution 2, using then/catch
In this case we do not need to make our function async since we catch the the getInfo()
promise result thru .then(response)
.
function printRequestQueue (requestQueue){
requestQueue.getInfo().then((response)=> {
console.log('total:', response.totalRequestCount);
console.log('handled:', response.handledRequestCount);
console.log('pending:', response.pendingRequestCount);
console.log('\nFull response:\n', response); })
.catch( (error) => console.log(error));
}
with the following result:
total: 791
handled: 479
pending: 312
Full response:
{ id: 'queue-name',
name: 'queue-name',
userId: null,
createdAt: 2021-02-26T11:57:00.453Z,
modifiedAt: 2021-02-26T11:58:47.988Z,
accessedAt: 2021-02-26T11:58:47.989Z,
totalRequestCount: 791,
handledRequestCount: 479,
pendingRequestCount: 312
}