Google Cloud Platform での Node.js

無料トライアル ドキュメントを見る

クラウド ネイティブなアプリケーションの構築、大規模なデプロイ、データの分析を行う Node.js ツール

  • グローバル規模のウェブアプリを構築
  • ネイティブ ライブラリで Google の機械学習 API をサポート
  • サーバーレス アプリを簡単に作成
  • 新しい言語を学習することなくビッグデータ分析アプリケーションを作成
丹念に作成された npm モジュール

@google-cloud npm モジュールを使用して API とサービスを活用し、コードサンプルをテスト実行してみましょう。

ファイルを Google Cloud Storage にアップロードする
Cloud Speech API で音声を分析する
Winston で Stackdriver Logging に書き込む
Google BigQuery を使用する
ファイルを Google Cloud Storage にアップロードする
1
インストールする
npm install --save @google-cloud/storage
2
Cloud Platform Console プロジェクトを設定する
  1. Google アカウントにログインします。

    Google アカウントをまだお持ちでない場合は、新しいアカウントを登録します。

  2. GCP Console プロジェクトをセットアップします。

    プロジェクトをセットアップする

    クリックして、以下を行います。

    • プロジェクトを作成または選択します。
    • プロジェクトにCloud Storage API を有効にします。
    • サービス アカウントを作成します。
    • JSON として秘密鍵をダウンロードします。

    これらのリソースは、GCP Console でいつでも表示および管理できます。

4
コードを書く
// Imports the Google Cloud client library
const {Storage} = require('@google-cloud/storage');

// Creates a client
const storage = new Storage();

/**
 * TODO(developer): Uncomment the following lines before running the sample.
 */
// const bucketName = 'Name of a bucket, e.g. my-bucket';
// const filename = 'Local file to upload, e.g. ./local/path/to/file.txt';

// Uploads a local file to the bucket
await storage.bucket(bucketName).upload(filename, {
  // Support for HTTP requests made with `Accept-Encoding: gzip`
  gzip: true,
  // By setting the option `destination`, you can change the name of the
  // object you are uploading to a bucket.
  metadata: {
    // Enable long-lived HTTP caching headers
    // Use only if the contents of the file will never change
    // (If the contents will change, use cacheControl: 'no-cache')
    cacheControl: 'public, max-age=31536000',
  },
});

console.log(`${filename} uploaded to ${bucketName}.`);
Cloud Speech API で音声を分析する
1
インストールする
npm install --save @google-cloud/speech
2
Cloud Platform Console プロジェクトを設定する
  1. Google アカウントにログインします。

    Google アカウントをまだお持ちでない場合は、新しいアカウントを登録します。

  2. GCP Console プロジェクトをセットアップします。

    プロジェクトをセットアップする

    クリックして、以下を行います。

    • プロジェクトを作成または選択します。
    • プロジェクトにCloud Speech API を有効にします。
    • サービス アカウントを作成します。
    • JSON として秘密鍵をダウンロードします。

    これらのリソースは、GCP Console でいつでも表示および管理できます。

3
コードを書く
// Imports the Google Cloud client library
const fs = require('fs');
const speech = require('@google-cloud/speech');

// Creates a client
const client = new speech.SpeechClient();

/**
 * TODO(developer): Uncomment the following lines before running the sample.
 */
// const filename = 'Local path to audio file, e.g. /path/to/audio.raw';
// const encoding = 'Encoding of the audio file, e.g. LINEAR16';
// const sampleRateHertz = 16000;
// const languageCode = 'BCP-47 language code, e.g. en-US';

const config = {
  encoding: encoding,
  sampleRateHertz: sampleRateHertz,
  languageCode: languageCode,
};
const audio = {
  content: fs.readFileSync(filename).toString('base64'),
};

const request = {
  config: config,
  audio: audio,
};

// Detects speech in the audio file
const [response] = await client.recognize(request);
const transcription = response.results
  .map(result => result.alternatives[0].transcript)
  .join('\n');
console.log(`Transcription: `, transcription);
Winston で Cloud Logging に書き込む
1
インストールする
npm install --save @google-cloud/logging-winston
2
Cloud Platform Console プロジェクトを設定する
  1. Google アカウントにログインします。

    Google アカウントをまだお持ちでない場合は、新しいアカウントを登録します。

  2. GCP Console プロジェクトをセットアップします。

    プロジェクトをセットアップする

    クリックして、以下を行います。

    • プロジェクトを作成または選択します。
    • プロジェクトにStackdriver Logging API を有効にします。
    • サービス アカウントを作成します。
    • JSON として秘密鍵をダウンロードします。

    これらのリソースは、GCP Console でいつでも表示および管理できます。

3
コードを書く
const winston = require('winston');

// Imports the Google Cloud client library for Winston
const {LoggingWinston} = require('@google-cloud/logging-winston');

const loggingWinston = new LoggingWinston();

// Create a Winston logger that streams to Stackdriver Logging
// Logs will be written to: "projects/YOUR_PROJECT_ID/logs/winston_log"
const logger = winston.createLogger({
  level: 'info',
  transports: [
    new winston.transports.Console(),
    // Add Stackdriver Logging
    loggingWinston,
  ],
});

// Writes some log entries
logger.error('warp nacelles offline');
logger.info('shields at 99%');
Google BigQuery を使用する
1
インストールする
npm install --save @google-cloud/bigquery
2
Cloud Platform Console プロジェクトを設定する
  1. Google アカウントにログインします。

    Google アカウントをまだお持ちでない場合は、新しいアカウントを登録します。

  2. GCP Console プロジェクトをセットアップします。

    プロジェクトをセットアップする

    クリックして、以下を行います。

    • プロジェクトを作成または選択します。
    • プロジェクトにBigQuery API を有効にします。
    • サービス アカウントを作成します。
    • JSON として秘密鍵をダウンロードします。

    これらのリソースは、GCP Console でいつでも表示および管理できます。

3
コードを書く
// Import the Google Cloud client library
const {BigQuery} = require('@google-cloud/bigquery');

async function queryStackOverflow() {
  // Queries a public Stack Overflow dataset.

  // Create a client
  const bigqueryClient = new BigQuery();

  // The SQL query to run
  const sqlQuery = `SELECT
    CONCAT(
      'https://stackoverflow.com/questions/',
      CAST(id as STRING)) as url,
    view_count
    FROM \`bigquery-public-data.stackoverflow.posts_questions\`
    WHERE tags like '%google-bigquery%'
    ORDER BY view_count DESC
    LIMIT 10`;

  const options = {
    query: sqlQuery,
    // Location must match that of the dataset(s) referenced in the query.
    location: 'US',
  };

  // Run the query
  const [rows] = await bigqueryClient.query(options);

  console.log('Query Results:');
  rows.forEach(row => {
    const url = row['url'];
    const viewCount = row['view_count'];
    console.log(`url: ${url}, ${viewCount} views`);
  });
}
queryStackOverflow();
Node JS クイックスタート
問題をすばやく検出してデバッグする

Google Stackdriver は、強力なモニタリング、ロギング、診断機能を提供します。これによって、クラウドで実行されるアプリケーションの健全性やパフォーマンス、可用性を分析し、すばやく問題を検出して修正することができます。

Google Stackdriver
Google Cloud Platform と AWS で実行されるアプリケーションのモニタリング、ロギング、診断を統合したソリューションです。
Stackdriver Error Reporting
エラーアラートの取得方法と、Google Cloud Console でのエラーの調査方法をご説明します。
Stackdriver モニタリング、診断、修正
この動画では、Aja Hammerly が Stackdriver を使用してサンプルアプリ内の微細なエラーを検出し修正しています。独自のプロジェクトで Stackdriver を使用する方法を学習できます。
詳細
コミュニティに参加する

質問やご意見がありましたら、コミュニティに参加して質問するか、Google Cloud Platform と Node.js の構築をサポートする Google の専門家とチャットしましょう。