This module provides support for streaming your Bunyan logs to Stackdriver Logging.


new LoggingBunyan(optionsopt)

Name Type Attributes Description
options object <optional>
Name Type Attributes Default Description
logName string <optional>

The name of the log that will receive messages written to this bunyan stream. Default: bunyan_Log.

resource object <optional>

The monitored resource that the log stream corresponds to. On Google Cloud Platform, this is detected automatically, but you may optionally specify a specific monitored resource. For more information, see the official documentation

serviceContext object <optional>

For logged errors, we provide this as the service context. For more information see this guide and the official documentation.

Name Type Attributes Description
service string <optional>

An identifier of the service, such as the name of the executable, job, or Google App Engine service name.

version string <optional>

Represents the version of the service.

projectId string <optional>

The project ID from the Google Cloud Console, e.g. 'grape-spaceship-123'. We will also check the environment variable GCLOUD_PROJECT for your project ID. If your app is running in an environment which supports Application Default Credentials, your project ID will be detected automatically.

keyFilename string <optional>

Full path to the a .json, .pem, or .p12 key downloaded from the Google Cloud Console. If you provide a path to a JSON file, the projectId option above is not necessary. NOTE: .pem and .p12 require you to specify the email option as well.

email string <optional>

Account email address. Required when using a .pem or .p12 keyFilename.

credentials object <optional>

Credentials object.

Name Type Attributes Description
client_email string <optional>
private_key string <optional>
autoRetry boolean <optional>

Automatically retry requests if the response is related to rate limits or certain intermittent server errors. We will exponentially backoff subsequent requests by default.

maxRetries number <optional>

Maximum number of automatic retries attempted before returning the error.

promise constructor <optional>

Custom promise module to use instead of native Promises.


Import the client library

const {LoggingBunyan} = require('@google-cloud/logging-bunyan');
<caption>Create a client that uses <a
Default Credentials (ADC)</a>:</caption> const loggingBunyan = new
<caption>Create a client with <a
credentials</a>:</caption> const loggingBunyan = new LoggingBunyan({
  projectId: 'your-project-id',
  keyFilename: '/path/to/keyfile.json'

Full quickstart example:

const bunyan = require('bunyan');

// Imports the Google Cloud client library for Bunyan
const {LoggingBunyan} = require('@google-cloud/logging-bunyan');

// Creates a Bunyan Stackdriver Logging client
const loggingBunyan = new LoggingBunyan();

// Create a Bunyan logger that streams to Stackdriver Logging
// Logs will be written to: "projects/YOUR_PROJECT_ID/logs/bunyan_log"
const logger = bunyan.createLogger({
  // The JSON payload of the log as it appears in Stackdriver Logging
  // will contain "name": "my-service"
  name: 'my-service',
  streams: [
    // Log to the console at 'info' and above
    {stream: process.stdout, level: 'info'},
    // And log to Stackdriver Logging, logging at 'info' and above

// Writes some log entries
logger.error('warp nacelles offline');
logger.info('shields at 99%');


(static) LOGGING_TRACE_KEY :string

Value: logging.googleapis.com/trace




Relay a log entry to the logging agent. This is called by bunyan through Writable#write.



Relay an array of log entries to the logging agent. This is called by bunyan through Writable#write.



Format a bunyan record into a Stackdriver log entry.



Convenience method that Builds a bunyan stream object that you can put in the bunyan streams list.