首页 > 解决方案 > 我们必须在 Firebase Cloud Functions 中手动记录错误还是它们会自动记录?

问题描述

我目前部署了这个云功能。它根据 Firebase 的要求返回一个终止函数的承诺。

exports.userDidSignOut = functions.https.onCall((data) => {
    const userId = data.userId;
    const settingsUpdate = {
        "fcmToken": null,
    };
    const promise = admin.firestore().collection("user-settings").doc(userId).update(settingsUpdate);

    return promise
});

但是,这会自动在控制台上记录错误吗?或者我必须手动记录它们(如下所示)?

exports.userDidSignOut = functions.https.onCall((data) => {
    const userId = data.userId;
    const settingsUpdate = {
        "fcmToken": null,
    };
    const promise = admin.firestore().collection("user-settings").doc(userId).update(settingsUpdate);

    promise.then(() => {
        return null;
    }, (reason) => {
        console.log(reason);
        return null;
    });
});

是否有必要null在失败功能中返回以终止云功能或打印到控制台就足够了?

标签: javascriptfirebasegoogle-cloud-functions

解决方案


在 Cloud Functions 中有一个关于处理错误的完整文档页面。从那里:

您的函数产生的未捕获异常将出现在Error Reporting中。

因此,您不必自己执行此操作,尽管您当然可以始终这样做以围绕错误添加额外的上下文。


推荐阅读