This page shows how to get started with the Cloud Client Libraries for the Cloud Monitoring API. Read more about the client libraries for Cloud APIs, including the older Google APIs Client Libraries, in Client Libraries Explained.
The samples on this page use custom, or user-defined, metrics to illustrate the use of the client libraries. The system-defined metrics described in the Metrics list are collected for you. You don't need to write any code to collect them, although the agent metrics do require the installation of the Cloud Monitoring agent. For more information on agent metrics, see the Agent metrics list.For information about the previous Monitoring API client libraries, see Monitoring API Client Libraries.
Installing the client library
C#
For more information, see Setting Up a C# Development Environment.
In Visual Studio 2013/2015, open the Package Manager Console and run this command:
Install-Package Google.Cloud.Monitoring.V3 -Pre
Go
For more information, see Setting Up a Go Development Environment.
go get -u cloud.google.com/go/monitoring/apiv3
Java
For more information, see Setting Up a Java Development Environment.
If you are using Maven with
a BOM, add the following to your pom.xml
file:
If you are using Maven without a BOM, add this to your dependencies:
If you are using Gradle, add the following to your dependencies:
If you are using sbt, add the following to your dependencies:
If you're using IntelliJ or Eclipse, you can add client libraries to your project using the following IDE plugins:
The plugins provide additional functionality, such as key management for service accounts. Refer to each plugin's documentation for details.
Node.js
For more information, see Setting Up a Node.js Development Environment.
npm install --save @google-cloud/monitoring
PHP
For more information, see Using PHP on Google Cloud.
composer require google/cloud-monitoring
Python
For more information, see Setting Up a Python Development Environment.
pip install --upgrade google-cloud-monitoring
Ruby
For more information, see Setting Up a Ruby Development Environment.
gem install google-cloud-monitoring
Setting up authentication
To run the client library, you must first set up authentication by creating a service account and setting an environment variable. Complete the following steps to set up authentication. For other ways to authenticate, see the GCP authentication documentation.
Cloud Console
-
In the Cloud Console, go to the Create service account key page.
Go to the Create Service Account Key page - From the Service account list, select New service account.
- In the Service account name field, enter a name.
From the Role list, select Project > Owner.
- Click Create. A JSON file that contains your key downloads to your computer.
Command line
You can run the following commands using the Cloud SDK on your local machine, or in Cloud Shell.
-
Create the service account. Replace NAME with a name for the service account.
gcloud iam service-accounts create NAME
-
Grant permissions to the service account. Replace PROJECT_ID with your project ID.
gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:NAME@PROJECT_ID.iam.gserviceaccount.com" --role="roles/owner"
-
Generate the key file. Replace FILE_NAME with a name for the key file.
gcloud iam service-accounts keys create FILE_NAME.json --iam-account=NAME@PROJECT_ID.iam.gserviceaccount.com
Provide authentication credentials to your application code by
setting the environment variable GOOGLE_APPLICATION_CREDENTIALS
.
Replace [PATH] with the file path of the JSON file that contains your
service account key. This variable only applies to your current shell session,
so if you open a new session, set the variable again.
Linux or macOS
export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
For example:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/my-key.json"
Windows
With PowerShell:
$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
For example:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\my-key.json"
With command prompt:
set GOOGLE_APPLICATION_CREDENTIALS=[PATH]
Using the client library
The following example shows how to use the client library.
C#
See README.md for instructions on using Visual Studio to build and run this sample C# code.
Go
Java
Node.js
PHP
Python
Ruby