Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Where does console.log info showup for Google Cloud functions

How can I see the console.log prints when I'm running a Google Cloud function? Is there a cloud console?

exports.helloWorld = function helloWorld(req, res) {
  // Example input: {"message": "Hello!"}
  if (req.body.message === undefined) {
    // This is an error case, as "message" is required.
    res.status(400).send('No message defined!');
  } else {
    // Everything is okay.
    console.log(req.body.message);
    res.status(200).send('Success: ' + req.body.message);
  }
};
like image 823
Mark Peterson Avatar asked Jun 14 '17 23:06

Mark Peterson


1 Answers

Viewing Logs

You can view the Cloud Function logs using either:

  • The Stackdriver logging UI in the Cloud Console
  • Using logging API
// By default, the client will authenticate using the service account file
// specified by the GOOGLE_APPLICATION_CREDENTIALS environment variable and use
// the project specified by the GCLOUD_PROJECT environment variable. See
// https://googlecloudplatform.github.io/gcloud-node/#/docs/google-cloud/latest/guides/authentication
const Logging = require('@google-cloud/logging');

function getLogEntries () {
  // Instantiates a client
  const logging = Logging();

  const options = {
    pageSize: 10,
    filter: 'resource.type="cloud_function"'
  };

  // Retrieve the latest Cloud Function log entries
  // See https://googlecloudplatform.github.io/gcloud-node/#/docs/logging
  return logging.getEntries(options)
    .then(([entries]) => {
      console.log('Entries:');
      entries.forEach((entry) => console.log(entry));
      return entries;
    });
}
  • Using gcloud:

To view logs with the gcloud tool, use the logs read command:

gcloud functions logs read

To view the logs for a specific function, provide the function name as an argument:

gcloud functions logs read <FUNCTION_NAME>

You can even view the logs for a specific execution:

gcloud functions logs read <FUNCTION_NAME> --execution-id EXECUTION_ID

For the full range of log viewing options, view the help for logs read:

gcloud functions logs read -h

Writing Logs

You can use console.log() or console.error().

  • console.log() commands have the INFO log level.
  • console.error() commands have the ERROR log level.
  • Internal system messages have the DEBUG log level.

More info about viewing Cloud Function logs is available here.

like image 142
Tuxdude Avatar answered Sep 19 '22 18:09

Tuxdude