diff --git a/functions/helloworld/index.js b/functions/helloworld/index.js index 6847e2b3ed..88240c853c 100644 --- a/functions/helloworld/index.js +++ b/functions/helloworld/index.js @@ -125,47 +125,68 @@ exports.helloGCSGeneric = (event, callback) => { }; // [END functions_helloworld_storage_generic] -// [START functions_helloworld_error] /** * Background Cloud Function that throws an error. * * @param {object} event The Cloud Functions event. * @param {function} callback The callback function. */ + exports.helloError = (event, callback) => { - // This WILL be reported to Stackdriver Error Reporting - throw new Error('I failed you'); + // [START functions_helloworld_error] + // These WILL be reported to Stackdriver Error Reporting + console.error(new Error('I failed you')); + throw new Error('I failed you'); // Will cause a cold start if not caught + + // [END functions_helloworld_error] }; -// [END functions_helloworld_error] -/* eslint-disable */ -// [START functions_helloworld_error_2] /** * Background Cloud Function that throws a value. * * @param {object} event The Cloud Functions event. * @param {function} callback The callback function. */ +/* eslint-disable no-throw-literal */ + exports.helloError2 = (event, callback) => { - // This will NOT be reported to Stackdriver Error Reporting - throw 1; + // [START functions_helloworld_error] + // These will NOT be reported to Stackdriver Error Reporting + console.info(new Error('I failed you')); // Logging an Error object at the info level + console.error('I failed you'); // Logging something other than an Error object + throw 1; // Throwing something other than an Error object + // [END functions_helloworld_error] }; -// [END functions_helloworld_error_2] +/* eslint-enable no-throw-literal */ -// [START functions_helloworld_error_3] /** - * Background Cloud Function that throws an error. + * Background Cloud Function that returns an error. * * @param {object} event The Cloud Functions event. * @param {function} callback The callback function. */ +/* eslint-disable */ exports.helloError3 = (event, callback) => { - // This will NOT be reported to Stackdriver errors + // This will NOT be reported to Stackdriver Error Reporting + // [START functions_helloworld_error] callback('I failed you'); + // [END functions_helloworld_error] }; -// [END functions_helloworld_error_3] /* eslint-enable */ +/** + * HTTP Cloud Function that returns an error. + * + * @param {Object} req Cloud Function request context. + * @param {Object} res Cloud Function response context. + */ +exports.helloError4 = (req, res) => { + // This will NOT be reported to Stackdriver Error Reporting + // [START functions_helloworld_error] + res.status(500).send('I failed you'); + // [END functions_helloworld_error] +}; + // [START functions_helloworld_template] const path = require('path'); const pug = require('pug');