Node.js 系统错误:系统遇到意外错误。函数被杀死。云功能

Node.js 系统错误:系统遇到意外错误。函数被杀死。云功能,node.js,firebase,google-cloud-functions,Node.js,Firebase,Google Cloud Functions,当我查看Firebase云函数的日志时,我注意到一些函数在日志中有一个错误,描述为“SYSTEM_error:SYSTEM遇到意外错误。Function killed.”,直到昨天,这种行为还没有发生,下面是其中一个函数。我怎样才能修好它 const functions = require('firebase-functions'); const admin = require('firebase-admin'); module.exports = functions.database.ref

当我查看Firebase云函数的日志时,我注意到一些函数在日志中有一个错误,描述为“SYSTEM_error:SYSTEM遇到意外错误。Function killed.”,直到昨天,这种行为还没有发生,下面是其中一个函数。我怎样才能修好它

const functions = require('firebase-functions');
const admin = require('firebase-admin');

module.exports = functions.database.ref('/cards/{cardID}/interestedUsers').onWrite(event => {
    const cardID = event.params.cardID;

    console.log("interestedUsers", event.data.val(), cardID);

    var currentInterestedUsers = [];
    currentInterestedUsers = event.data.val();
    var previousInterestedUsers = [];
    previousInterestedUsers = event.data.previous.val();

    if (event.data.previous.val() && currentInterestedUsers) {
        var isNewPendingRequest = false;
        if (currentInterestedUsers.length < previousInterestedUsers.length) {
            currentInterestedUsers.forEach((interestedUser, index) => {
                const interestedUserVal = interestedUser.val();
                const isApproved = interestedUser["isApproved"];
                console.log("result", interestedUser.val(), interestedUserVal);
                if (isApproved == false) {
                    isNewPendingRequest = true;
                }
            });
        }

        if (isNewPendingRequest == false) {
            const cardRef = admin.database().ref("cards").child(cardID);
            const setupIsNewPendingRequestPromise = cardRef.update({
                "isNewPendingRequest": false
            });
            return Promise.all([setupIsNewPendingRequestPromise]);
        };

        return console.log("interestedUsers deleting");
    };

    if (event.data.val() == null) {
        console.log("event.data.val() == null");
        const cardRef = admin.database().ref("cards").child(cardID);
        // check card
        const cardCheckPromise = cardRef.once("value", function(cardCheckPromiseSnap, error){
            if (error) {
                return console.log("cardCheckPromise", error);
            };

            if (cardCheckPromiseSnap.val()) {
                const checkCardID = cardCheckPromiseSnap.val()["id"];
                if (checkCardID)  {
                    console.log("checkCardID", checkCardID);
                    const setupIsNewPendingRequestPromise = cardRef.update({
                        "isNewPendingRequest": false
                    });
                    return Promise.all([setupIsNewPendingRequestPromise]);
                } else {
                    return console.log("checkCardID == null");
                }
            } else {
                return console.log("cardCheckPromiseSnap.val() == null");
            };
        });
        return Promise.all([cardCheckPromise]).catch(function(cardCheckPromiseError){
            console.log("cardCheckPromise error", cardCheckPromiseError.message, cardCheckPromiseError.messageId)
        });
    }


    return console.log("just update or adding a new interested user");
});
const functions=require('firebase-functions');
const admin=require('firebase-admin');
module.exports=functions.database.ref('/cards/{cardd}/interestedUsers').onWrite(事件=>{
const cardd=event.params.cardd;
log(“感兴趣的用户”,event.data.val(),cardd);
var currentInterestedUsers=[];
currentInterestedUsers=event.data.val();
var previousInterestedUsers=[];
previousInterestedUsers=event.data.previous.val();
if(event.data.previous.val()&¤tInterestedUsers){
var isNewPendingRequest=false;
if(currentInterestedUsers.length{
const interestedUserVal=interestedUser.val();
const isApproved=感兴趣的用户[“isApproved”];
log(“result”,interestedUser.val(),interestedUserVal);
如果(已批准==错误){
isNewPendingRequest=true;
}
});
}
if(isNewPendingRequest==false){
const cardRef=admin.database().ref(“cards”).child(cardd);
const setupIsNewPendingRequestPromise=cardRef.update({
“isNewPendingRequest”:false
});
返回承诺。全部([setupIsNewPendingRequestPromise]);
};
返回console.log(“感兴趣的用户删除”);
};
if(event.data.val()==null){
console.log(“event.data.val()==null”);
const cardRef=admin.database().ref(“cards”).child(cardd);
//支票卡
const cardCheckPromise=cardRef.once(“值”,函数(cardCheckPromiseSnap,错误){
如果(错误){
返回console.log(“cardCheckPromise”,错误);
};
if(cardCheckPromiseSnap.val()){
const checkcardd=cardCheckPromiseSnap.val()[“id”];
如果(检查卡){
console.log(“checkcardd”,checkcardd);
const setupIsNewPendingRequestPromise=cardRef.update({
“isNewPendingRequest”:false
});
返回承诺。全部([setupIsNewPendingRequestPromise]);
}否则{
返回console.log(“checkcardd==null”);
}
}否则{
返回console.log(“cardCheckPromiseSnap.val()==null”);
};
});
返回Promise.all([cardCheckPromise]).catch(函数(cardCheckPromiseError){
log(“cardCheckPromiseError”、cardCheckPromiseError.message、cardCheckPromiseError.messageId)
});
}
return console.log(“只是更新或添加一个新的感兴趣的用户”);
});

您可以尝试重新部署应用程序。

可能是GCF停机。有一个和一个。这些错误是在停机期间抛出的

解决方案
休息一下,等待乌云愈合。如果您购买了支持,请与GCP支持部门联系。

我可以这样做,我也会这样做,但当我部署时,终端上有一条消息,说一切都很顺利。今天的云功能出现了一些问题。再见。@BobSnyder谢谢!