I'm not sure how I'm messing this up since it seems so simple. According to the app engine standard documentation:
console.error('message');
Should have the ERROR log level in the Stackdriver Logs Viewer. However, I see the log level set to "Any log level." What does seem correct is it's logging to stderr
as seen from the logName
.
logName: "projects/my-project-name/logs/stderr"
To quote:
To emit a log item from your Node.js app, you can use the
console.log()
orconsole.error()
functions, which have the following log levels:
- Items emitted with
console.log()
have the INFO log level.- Items emitted with
console.error()
have the ERROR log level.- Internal system messages have the DEBUG log level.
I was originally trying to get winston
to work with Stackdriver (using @google-cloud/logging-winston) to get more granular logging levels, but right now I can't even get it to log at INFO or ERROR with basic console.log()
and console.error()
.
Hope I don't have to write a crazy custom transport just to use plain console.error()
.
error() function from console class of Node. js is used to display an error messages on the console. It prints to stderr with newline. Parameter: This function can contains multiple parameters.
The built-in console module in Node. js lets you write log messages to standard output (stdout) and standard error (stderr)using the log and error functions, respectively. This module is most definitely the simplest method for getting started, since it doesn't require importing or configuring any third-party packages.
log() function from console class of Node. js is used to display the messages on the console. It prints to stdout with newline. Parameter: This function contains multiple parameters which are to be printed.
To enable this logger, you have run your application with a special environment variable, called DEBUG . Once you do that, the debug module will come to life and will start producing log events for stdout. Luckily, this module is widespread in the Node.
After trying for hours, I got it working. I used Winston as per the docs https://cloud.google.com/logging/docs/setup/nodejs#using_winston.
Then in stackdriver logs viewer, I selected the winston_log
from the dropdown like this -
And its showing error logs now.
This works with Bunyan too. You have to select bunyan_log
for the Bunyan.
Hope this helps someone:)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With