Netlify Lambda 函数日志永远挂起
Netlify Lambda function log hangs forever
功能日志似乎永远都有旋转斜杠。
这是我的代码:
const {getSubscriptions, getResponse} = require('./utils/utils.js');
module.exports.handler = async function(event, context) {
const allItems = await getSubscriptions();
if (!allItems) {
return getResponse(204, "");
}
console.log('showCache is called', allItems);
const subscriptions = allItems.map(item => item.data);
const result = JSON.stringify(subscriptions);
console.log('-------------result----------', result);
return getResponse(200, result);
}
const getSubscriptions = async () => {
try {
const response = await client.query(
q.Paginate(q.Match(q.Ref("indexes/all_subs")))
);
console.log("---response---", response);
const subsRefs = response.data;
if (!subsRefs) {
return null;
}
console.log(`${subsRefs.length} subscription found`);
const getAllSubsQuery = subsRefs.map((ref) => q.Get(ref));
const allSubscriptions = await client.query(getAllSubsQuery);
console.log("---------getSubsFinal-------", allSubscriptions);
return allSubscriptions;
} catch (faunaDBError) {
console.log("----getSubscriptions error----", faunaDBError);
return null;
}
};
const faunadb = require("faunadb");
const q = faunadb.query;
const client = new faunadb.Client({
secret: process.env.FAUNADB_SERVER_SECRET,
});
const headers = {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Headers': 'Content-Type',
'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE'
};
function getResponse(statusCode, body) {
return {
statusCode: statusCode,
headers,
body: body,
};
}
我搜索了一会儿,发现了类似的问题,但它们是由不等待异步功能引起的。从我的代码来看,我想我已经在需要的地方等待了。
我的理解是一旦我打开一个功能日志页面,我就可以看到自当前部署以来的日志。
但是我打开Function Log页面后,好像至少要调用一次api才能看到日志,不直观。
不确定这是否是解决方法,但至少我现在开始看到日志了。
功能日志似乎永远都有旋转斜杠。
这是我的代码:
const {getSubscriptions, getResponse} = require('./utils/utils.js');
module.exports.handler = async function(event, context) {
const allItems = await getSubscriptions();
if (!allItems) {
return getResponse(204, "");
}
console.log('showCache is called', allItems);
const subscriptions = allItems.map(item => item.data);
const result = JSON.stringify(subscriptions);
console.log('-------------result----------', result);
return getResponse(200, result);
}
const getSubscriptions = async () => {
try {
const response = await client.query(
q.Paginate(q.Match(q.Ref("indexes/all_subs")))
);
console.log("---response---", response);
const subsRefs = response.data;
if (!subsRefs) {
return null;
}
console.log(`${subsRefs.length} subscription found`);
const getAllSubsQuery = subsRefs.map((ref) => q.Get(ref));
const allSubscriptions = await client.query(getAllSubsQuery);
console.log("---------getSubsFinal-------", allSubscriptions);
return allSubscriptions;
} catch (faunaDBError) {
console.log("----getSubscriptions error----", faunaDBError);
return null;
}
};
const faunadb = require("faunadb");
const q = faunadb.query;
const client = new faunadb.Client({
secret: process.env.FAUNADB_SERVER_SECRET,
});
const headers = {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Headers': 'Content-Type',
'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE'
};
function getResponse(statusCode, body) {
return {
statusCode: statusCode,
headers,
body: body,
};
}
我搜索了一会儿,发现了类似的问题,但它们是由不等待异步功能引起的。从我的代码来看,我想我已经在需要的地方等待了。
我的理解是一旦我打开一个功能日志页面,我就可以看到自当前部署以来的日志。
但是我打开Function Log页面后,好像至少要调用一次api才能看到日志,不直观。
不确定这是否是解决方法,但至少我现在开始看到日志了。