LogSync

LogSync

A logSync is a named collection of entries in structured log format. In Cloud Logging, structured logs refer to log entries that use the jsonPayload field to add structure to their payloads. In most GCP environments, like GKE and Cloud Functions, structured logs written to process.stdout are automatically picked up and formatted by logging agents.

Recommended for Serverless environment logging, especially where async log calls made by the Log class can be dropped by the CPU.

Constructor

new LogSync(logging, name, transportopt)

Parameters:
Name Type Attributes Description
logging Logging

Logging instance.

name string

Name of the logSync.

transport Writable <optional>

transport A custom writable transport stream. Default: process.stdout.

See:
Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('mylog');

Methods

alert(entry, optionsopt, nullable)

Write a log entry with a severity of "ALERT".

This is a simple wrapper around LogSync#write. All arguments are the same as documented there.

Parameters:
Name Type Attributes Description
entry Entry | Array.<Entry>

A log entry, or array of entries, to write.

options WriteOptions <optional>
<nullable>

Write options

Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('my-log');

const entry = log.entry('gce_instance', {
  instance: 'my_instance'
});

log.alert(entry);

critical(entry, optionsopt, nullable)

Write a log entry with a severity of "CRITICAL".

This is a simple wrapper around LogSync#write. All arguments are the same as documented there.

Parameters:
Name Type Attributes Description
entry Entry | Array.<Entry>

A log entry, or array of entries, to write.

options WriteOptions <optional>
<nullable>

Write options

Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('my-log');

const entry = log.entry('gce_instance', {
  instance: 'my_instance'
});

log.critical(entry);

debug(entry, optionsopt, nullable)

Write a log entry with a severity of "DEBUG".

This is a simple wrapper around LogSync#write. All arguments are the same as documented there.

Parameters:
Name Type Attributes Description
entry Entry | Array.<Entry>

A log entry, or array of entries, to write.

options WriteOptions <optional>
<nullable>

Write options

Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('my-log');

const entry = log.entry('gce_instance', {
  instance: 'my_instance'
});

log.debug(entry);

emergency(entry, optionsopt, nullable)

Write a log entry with a severity of "EMERGENCY".

This is a simple wrapper around LogSync#write. All arguments are the same as documented there.

Parameters:
Name Type Attributes Description
entry Entry | Array.<Entry>

A log entry, or array of entries, to write.

options WriteOptions <optional>
<nullable>

Write options

Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('my-log');

const entry = log.entry('gce_instance', {
  instance: 'my_instance'
});

log.emergency(entry);

entry(metadatanullable, data) → {Entry}

Create an entry object for this log.

Using this method will not itself do any logging.

Parameters:
Name Type Attributes Description
metadata object <nullable>

See a LogEntry Resource.

data object | string

The data to use as the value for this log entry.

Returns:
Type Description
Entry
See:
Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('my-log');

const metadata = {
  resource: {
    type: 'gce_instance',
    labels: {
      zone: 'global',
      instance_id: '3'
    }
  }
};

const entry = log.entry(metadata, {
  delegate: 'my_username'
});

error(entry, optionsopt, nullable)

Write a log entry with a severity of "ERROR".

This is a simple wrapper around LogSync#write. All arguments are the same as documented there.

Parameters:
Name Type Attributes Description
entry Entry | Array.<Entry>

A log entry, or array of entries, to write.

options WriteOptions <optional>
<nullable>

Write options

Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('my-log');

const entry = log.entry('gce_instance', {
  instance: 'my_instance'
});

log.error(entry);

info(entry, optionsopt, nullable)

Write a log entry with a severity of "INFO".

This is a simple wrapper around LogSync#write. All arguments are the same as documented there.

Parameters:
Name Type Attributes Description
entry Entry | Array.<Entry>

A log entry, or array of entries, to write.

options WriteOptions <optional>
<nullable>

Write options

Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('my-log');

const entry = log.entry('gce_instance', {
  instance: 'my_instance'
});

log.info(entry);

notice(entry, optionsopt, nullable)

Write a log entry with a severity of "NOTICE".

This is a simple wrapper around LogSync#write. All arguments are the same as documented there.

Parameters:
Name Type Attributes Description
entry Entry | Array.<Entry>

A log entry, or array of entries, to write.

options WriteOptions <optional>
<nullable>

Write options

Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('my-log');

const entry = log.entry('gce_instance', {
  instance: 'my_instance'
});

log.notice(entry);

warning(entry, optionsopt, nullable)

Write a log entry with a severity of "WARNING".

This is a simple wrapper around LogSync#write. All arguments are the same as documented there.

Parameters:
Name Type Attributes Description
entry Entry | Array.<Entry>

A log entry, or array of entries, to write.

options WriteOptions <optional>
<nullable>

Write options

Example
const {Logging} = require('@google-cloud/logging');
const logging = new Logging();
const log = logging.logSync('my-log');

const entry = log.entry('gce_instance', {
  instance: 'my_instance'
});

log.warning(entry);

write(entry, optionsopt, nullable)

Write log entries to a custom transport (default: process.stdout).

Parameters:
Name Type Attributes Description
entry Entry | Array.<Entry>

A log entry, or array of entries, to write.

options WriteOptions <optional>
<nullable>

Write options

Example
const entry = log.entry('gce_instance', {
  instance: 'my_instance'
});

log.write(entry);

//-
// You may also pass multiple log entries to write.
//-
const secondEntry = log.entry('compute.googleapis.com', {
  user: 'my_username'
});

log.write([entry, secondEntry]);

//-
// To save some steps, you can also pass in plain values as your entries.
// Note, however, that you must provide a configuration object to specify
// the resource.
//-
const entries = [
  {
    user: 'my_username'
  },
  {
    home: process.env.HOME
  }
];

const options = {
  resource: 'compute.googleapis.com'
};

log.write(entries, options);

log.write(entries);
});