File

src/client/stackdriver/debug.ts

Extends

Service

Index

Properties

Constructor

constructor(options: DebugOptions, packageJson: literal type)

**This is an experimental release of Stackdriver Debug.** This API is not covered by any SLA of deprecation policy and may be subject to backwards incompatible changes.

This module provides Stackdriver Debugger support for Node.js applications. Stackdriver Debugger is a feature of Google Cloud Platform that lets you debug your applications in production without stopping or pausing your application.

This module provides an agent that lets you automatically enable debugging without changes to your application.

https://cloud.google.com/debug/}

Parameters :
Name Type Optional Description
options DebugOptions No
packageJson literal type No

Properties

options
Type : DebugOptions
packageInfo
Type : PackageInfo
import {GoogleAuthOptions, Service} from '@google-cloud/common';

export interface PackageInfo {
  name: string;
  version: string;
}

export interface DebugOptions extends GoogleAuthOptions {
  /**
   * The API endpoint of the service used to make requests.
   * Defaults to `clouddebugger.googleapis.com`.
   */
  apiEndpoint?: string;
}

export class Debug extends Service {
  options!: DebugOptions;
  packageInfo!: PackageInfo;

  /**
   * <p class="notice">
   *   **This is an experimental release of Stackdriver Debug.** This API is not
   *   covered by any SLA of deprecation policy and may be subject to backwards
   *   incompatible changes.
   * </p>
   *
   * This module provides Stackdriver Debugger support for Node.js applications.
   * [Stackdriver Debugger](https://cloud.google.com/debug/) is a feature of
   * [Google Cloud Platform](https://cloud.google.com/) that lets you debug your
   * applications in production without stopping or pausing your application.
   *
   * This module provides an agent that lets you automatically enable debugging
   * without changes to your application.
   *
   * @constructor
   * @alias module:debug
   *
   * @resource [What is Stackdriver Debug]{@link
   * https://cloud.google.com/debug/}
   *
   * @param options - [Authentication options](#/docs)
   */
  constructor(
    options: DebugOptions = {},
    packageJson: {
      name: string;
      version: string;
    }
  ) {
    if (new.target !== Debug) {
      return new Debug(options, packageJson);
    }
    options.apiEndpoint = options.apiEndpoint || 'clouddebugger.googleapis.com';
    const config = {
      projectIdRequired: false,
      apiEndpoint: options.apiEndpoint,
      baseUrl: `https://${options.apiEndpoint}/v2`,
      scopes: ['https://www.googleapis.com/auth/cloud_debugger'],
      packageJson,
    };

    // TODO: Update Service to provide types
    // TODO: Determine if we should check if `options` is `undefined` or
    //       `null` here and, if so, provide a default value.
    super(config, options);

    // FIXME(ofrobots): We need our own copy of options because Service may
    // default to '{{projectId}}' when options doesn't contain the `projectId`.
    // property. This breaks the SSOT principle. Remove this when
    // https://github.com/googleapis/google-cloud-node/issues/1891
    // is resolved.
    this.options = options;

    this.packageInfo = {name: packageJson.name, version: packageJson.version};
  }
}

results matching ""

    No results matching ""