Saya mengalami kesulitan mencatat pesan kesalahan yang berarti ke log fungsi saya, yang ingin saya capai adalah kesalahan muncul dengan tingkat log 'kesalahan' seperti di bawah ini:

Gambar log kesalahan yang sebenarnya

Sebaliknya, yang saya dapatkan adalah ini:

Gambar hasil tes

Saya menggunakan fungsi berikut untuk menguji ini:

exports.testError = functions.https.onRequest(async (request, response) =>
{
    console.log('Hi');

    //According to google this won't be logged as error
    console.error('Error');

    //But these will
    console.error(new Error('error'));
    console.error('Error', new Error('error'));

    return response.status(500).send('Test is finished.');
})

Gambar pertama adalah kesalahan acak dan tujuannya adalah untuk menunjukkan apa yang ingin saya capai, yaitu: membuat kesalahan dicatat sebagai kesalahan.

Gambar kedua adalah hasil pengujian saya, itu menunjukkan bahwa bahkan ketika saya mengikuti instruksi dari google(Kesalahan Pelaporan) tidak berfungsi sebagaimana mestinya.

3
Elielson Anjos 19 November 2020, 15:59

2 jawaban

Jawaban Terbaik

Yah saya menemukan jawabannya: Saya menggunakan node 12, saya mengubahnya ke node 10 dan sekarang mencatat kesalahan seperti yang diharapkan.

0
Elielson Anjos 10 Desember 2020, 09:57

Gunakan SDK logger Cloud Functions seperti yang dijelaskan dalam

https://firebase.google.com/docs/functions/writing-and-viewing-logs

const functions = require("firebase-functions")
functions.logger.debug("debug level in web console and gcp")
functions.logger.log("info level in web console and gcp")
functions.logger.info("info level in web console and gcp")
functions.logger.warn("info level but no icon in web console; warn icon in gcp")
functions.logger.error("error level in web console and gcp")

Saya tidak dapat membuat console.error() atau console.info() berfungsi (simpul 10, 12, atau 14) seperti yang diiklankan di https://firebase.google.com/docs/functions/reporting-errors

1
timraybould 7 Februari 2021, 14:31