signalfx.gcp.Integration
SignalFx GCP Integration
NOTE When managing integrations use a session token for an administrator to authenticate the SignalFx provider. See Operations that require a session token for an administrator. Otherwise you’ll receive a 4xx error.
Example Usage
using System.Collections.Generic;
using System.IO;
using Pulumi;
using SignalFx = Pulumi.SignalFx;
return await Deployment.RunAsync(() =>
{
var gcpMyteam = new SignalFx.Gcp.Integration("gcpMyteam", new()
{
Enabled = true,
PollRate = 300,
ProjectServiceKeys = new[]
{
new SignalFx.Gcp.Inputs.IntegrationProjectServiceKeyArgs
{
ProjectId = "gcp_project_id_1",
ProjectKey = File.ReadAllText("/path/to/gcp_credentials_1.json"),
},
new SignalFx.Gcp.Inputs.IntegrationProjectServiceKeyArgs
{
ProjectId = "gcp_project_id_2",
ProjectKey = File.ReadAllText("/path/to/gcp_credentials_2.json"),
},
},
Services = new[]
{
"compute",
},
});
});
package main
import (
"os"
"github.com/pulumi/pulumi-signalfx/sdk/v5/go/signalfx/gcp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func readFileOrPanic(path string) pulumi.StringPtrInput {
data, err := os.ReadFile(path)
if err != nil {
panic(err.Error())
}
return pulumi.String(string(data))
}
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := gcp.NewIntegration(ctx, "gcpMyteam", &gcp.IntegrationArgs{
Enabled: pulumi.Bool(true),
PollRate: pulumi.Int(300),
ProjectServiceKeys: gcp.IntegrationProjectServiceKeyArray{
&gcp.IntegrationProjectServiceKeyArgs{
ProjectId: pulumi.String("gcp_project_id_1"),
ProjectKey: readFileOrPanic("/path/to/gcp_credentials_1.json"),
},
&gcp.IntegrationProjectServiceKeyArgs{
ProjectId: pulumi.String("gcp_project_id_2"),
ProjectKey: readFileOrPanic("/path/to/gcp_credentials_2.json"),
},
},
Services: pulumi.StringArray{
pulumi.String("compute"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.signalfx.gcp.Integration;
import com.pulumi.signalfx.gcp.IntegrationArgs;
import com.pulumi.signalfx.gcp.inputs.IntegrationProjectServiceKeyArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var gcpMyteam = new Integration("gcpMyteam", IntegrationArgs.builder()
.enabled(true)
.pollRate(300)
.projectServiceKeys(
IntegrationProjectServiceKeyArgs.builder()
.projectId("gcp_project_id_1")
.projectKey(Files.readString(Paths.get("/path/to/gcp_credentials_1.json")))
.build(),
IntegrationProjectServiceKeyArgs.builder()
.projectId("gcp_project_id_2")
.projectKey(Files.readString(Paths.get("/path/to/gcp_credentials_2.json")))
.build())
.services("compute")
.build());
}
}
import pulumi
import pulumi_signalfx as signalfx
gcp_myteam = signalfx.gcp.Integration("gcpMyteam",
enabled=True,
poll_rate=300,
project_service_keys=[
signalfx.gcp.IntegrationProjectServiceKeyArgs(
project_id="gcp_project_id_1",
project_key=(lambda path: open(path).read())("/path/to/gcp_credentials_1.json"),
),
signalfx.gcp.IntegrationProjectServiceKeyArgs(
project_id="gcp_project_id_2",
project_key=(lambda path: open(path).read())("/path/to/gcp_credentials_2.json"),
),
],
services=["compute"])
import * as pulumi from "@pulumi/pulumi";
import * as fs from "fs";
import * as signalfx from "@pulumi/signalfx";
const gcpMyteam = new signalfx.gcp.Integration("gcpMyteam", {
enabled: true,
pollRate: 300,
projectServiceKeys: [
{
projectId: "gcp_project_id_1",
projectKey: fs.readFileSync("/path/to/gcp_credentials_1.json"),
},
{
projectId: "gcp_project_id_2",
projectKey: fs.readFileSync("/path/to/gcp_credentials_2.json"),
},
],
services: ["compute"],
});
resources:
gcpMyteam:
type: signalfx:gcp:Integration
properties:
enabled: true
pollRate: 300
projectServiceKeys:
- projectId: gcp_project_id_1
projectKey:
fn::readFile: /path/to/gcp_credentials_1.json
- projectId: gcp_project_id_2
projectKey:
fn::readFile: /path/to/gcp_credentials_2.json
services:
- compute
Create Integration Resource
new Integration(name: string, args: IntegrationArgs, opts?: CustomResourceOptions);
@overload
def Integration(resource_name: str,
opts: Optional[ResourceOptions] = None,
custom_metric_type_domains: Optional[Sequence[str]] = None,
enabled: Optional[bool] = None,
import_gcp_metrics: Optional[bool] = None,
include_lists: Optional[Sequence[str]] = None,
name: Optional[str] = None,
named_token: Optional[str] = None,
poll_rate: Optional[int] = None,
project_service_keys: Optional[Sequence[IntegrationProjectServiceKeyArgs]] = None,
services: Optional[Sequence[str]] = None,
use_metric_source_project_for_quota: Optional[bool] = None)
@overload
def Integration(resource_name: str,
args: IntegrationArgs,
opts: Optional[ResourceOptions] = None)
func NewIntegration(ctx *Context, name string, args IntegrationArgs, opts ...ResourceOption) (*Integration, error)
public Integration(string name, IntegrationArgs args, CustomResourceOptions? opts = null)
public Integration(String name, IntegrationArgs args)
public Integration(String name, IntegrationArgs args, CustomResourceOptions options)
type: signalfx:gcp:Integration
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args IntegrationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args IntegrationArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args IntegrationArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args IntegrationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args IntegrationArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Integration Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The Integration resource accepts the following input properties:
- Enabled bool
Whether the integration is enabled.
- Custom
Metric List<string>Type Domains List of additional GCP service domain names that you want to monitor
- Import
Gcp boolMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- Include
Lists List<string> - Name string
Name of the integration.
- Named
Token string Name of the org token to be used for data ingestion. If not specified then default access token is used.
- Poll
Rate int GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- Project
Service List<Pulumi.Keys Signal Fx. Gcp. Inputs. Integration Project Service Key Args> GCP projects to add.
- Services List<string>
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- Use
Metric boolSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- Enabled bool
Whether the integration is enabled.
- Custom
Metric []stringType Domains List of additional GCP service domain names that you want to monitor
- Import
Gcp boolMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- Include
Lists []string - Name string
Name of the integration.
- Named
Token string Name of the org token to be used for data ingestion. If not specified then default access token is used.
- Poll
Rate int GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- Project
Service []IntegrationKeys Project Service Key Args GCP projects to add.
- Services []string
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- Use
Metric boolSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- enabled Boolean
Whether the integration is enabled.
- custom
Metric List<String>Type Domains List of additional GCP service domain names that you want to monitor
- import
Gcp BooleanMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- include
Lists List<String> - name String
Name of the integration.
- named
Token String Name of the org token to be used for data ingestion. If not specified then default access token is used.
- poll
Rate Integer GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- project
Service List<IntegrationKeys Project Service Key Args> GCP projects to add.
- services List<String>
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- use
Metric BooleanSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- enabled boolean
Whether the integration is enabled.
- custom
Metric string[]Type Domains List of additional GCP service domain names that you want to monitor
- import
Gcp booleanMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- include
Lists string[] - name string
Name of the integration.
- named
Token string Name of the org token to be used for data ingestion. If not specified then default access token is used.
- poll
Rate number GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- project
Service IntegrationKeys Project Service Key Args[] GCP projects to add.
- services string[]
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- use
Metric booleanSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- enabled bool
Whether the integration is enabled.
- custom_
metric_ Sequence[str]type_ domains List of additional GCP service domain names that you want to monitor
- import_
gcp_ boolmetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- include_
lists Sequence[str] - name str
Name of the integration.
- named_
token str Name of the org token to be used for data ingestion. If not specified then default access token is used.
- poll_
rate int GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- project_
service_ Sequence[Integrationkeys Project Service Key Args] GCP projects to add.
- services Sequence[str]
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- use_
metric_ boolsource_ project_ for_ quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- enabled Boolean
Whether the integration is enabled.
- custom
Metric List<String>Type Domains List of additional GCP service domain names that you want to monitor
- import
Gcp BooleanMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- include
Lists List<String> - name String
Name of the integration.
- named
Token String Name of the org token to be used for data ingestion. If not specified then default access token is used.
- poll
Rate Number GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- project
Service List<Property Map>Keys GCP projects to add.
- services List<String>
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- use
Metric BooleanSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
Outputs
All input properties are implicitly available as output properties. Additionally, the Integration resource produces the following output properties:
- Id string
The provider-assigned unique ID for this managed resource.
- Id string
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
- id string
The provider-assigned unique ID for this managed resource.
- id str
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
Look up Existing Integration Resource
Get an existing Integration resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: IntegrationState, opts?: CustomResourceOptions): Integration
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
custom_metric_type_domains: Optional[Sequence[str]] = None,
enabled: Optional[bool] = None,
import_gcp_metrics: Optional[bool] = None,
include_lists: Optional[Sequence[str]] = None,
name: Optional[str] = None,
named_token: Optional[str] = None,
poll_rate: Optional[int] = None,
project_service_keys: Optional[Sequence[IntegrationProjectServiceKeyArgs]] = None,
services: Optional[Sequence[str]] = None,
use_metric_source_project_for_quota: Optional[bool] = None) -> Integration
func GetIntegration(ctx *Context, name string, id IDInput, state *IntegrationState, opts ...ResourceOption) (*Integration, error)
public static Integration Get(string name, Input<string> id, IntegrationState? state, CustomResourceOptions? opts = null)
public static Integration get(String name, Output<String> id, IntegrationState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Custom
Metric List<string>Type Domains List of additional GCP service domain names that you want to monitor
- Enabled bool
Whether the integration is enabled.
- Import
Gcp boolMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- Include
Lists List<string> - Name string
Name of the integration.
- Named
Token string Name of the org token to be used for data ingestion. If not specified then default access token is used.
- Poll
Rate int GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- Project
Service List<Pulumi.Keys Signal Fx. Gcp. Inputs. Integration Project Service Key Args> GCP projects to add.
- Services List<string>
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- Use
Metric boolSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- Custom
Metric []stringType Domains List of additional GCP service domain names that you want to monitor
- Enabled bool
Whether the integration is enabled.
- Import
Gcp boolMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- Include
Lists []string - Name string
Name of the integration.
- Named
Token string Name of the org token to be used for data ingestion. If not specified then default access token is used.
- Poll
Rate int GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- Project
Service []IntegrationKeys Project Service Key Args GCP projects to add.
- Services []string
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- Use
Metric boolSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- custom
Metric List<String>Type Domains List of additional GCP service domain names that you want to monitor
- enabled Boolean
Whether the integration is enabled.
- import
Gcp BooleanMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- include
Lists List<String> - name String
Name of the integration.
- named
Token String Name of the org token to be used for data ingestion. If not specified then default access token is used.
- poll
Rate Integer GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- project
Service List<IntegrationKeys Project Service Key Args> GCP projects to add.
- services List<String>
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- use
Metric BooleanSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- custom
Metric string[]Type Domains List of additional GCP service domain names that you want to monitor
- enabled boolean
Whether the integration is enabled.
- import
Gcp booleanMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- include
Lists string[] - name string
Name of the integration.
- named
Token string Name of the org token to be used for data ingestion. If not specified then default access token is used.
- poll
Rate number GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- project
Service IntegrationKeys Project Service Key Args[] GCP projects to add.
- services string[]
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- use
Metric booleanSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- custom_
metric_ Sequence[str]type_ domains List of additional GCP service domain names that you want to monitor
- enabled bool
Whether the integration is enabled.
- import_
gcp_ boolmetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- include_
lists Sequence[str] - name str
Name of the integration.
- named_
token str Name of the org token to be used for data ingestion. If not specified then default access token is used.
- poll_
rate int GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- project_
service_ Sequence[Integrationkeys Project Service Key Args] GCP projects to add.
- services Sequence[str]
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- use_
metric_ boolsource_ project_ for_ quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
- custom
Metric List<String>Type Domains List of additional GCP service domain names that you want to monitor
- enabled Boolean
Whether the integration is enabled.
- import
Gcp BooleanMetrics If enabled, SignalFx will sync also Google Cloud Metrics data. If disabled, SignalFx will import only metadata. Defaults to true.
- include
Lists List<String> - name String
Name of the integration.
- named
Token String Name of the org token to be used for data ingestion. If not specified then default access token is used.
- poll
Rate Number GCP integration poll rate (in seconds). Value between
60
and600
. Default:300
.- project
Service List<Property Map>Keys GCP projects to add.
- services List<String>
GCP service metrics to import. Can be an empty list, or not included, to import 'All services'. See the documentation for Creating Integrations for valid values.
- use
Metric BooleanSource Project For Quota When this value is set to true Observability Cloud will force usage of a quota from the project where metrics are stored. For this to work the service account provided for the project needs to be provided with serviceusage.services.use permission or Service Usage Consumer role in this project. When set to false default quota settings are used.
Supporting Types
IntegrationProjectServiceKey
- Project
Id string - Project
Key string
- Project
Id string - Project
Key string
- project
Id String - project
Key String
- project
Id string - project
Key string
- project_
id str - project_
key str
- project
Id String - project
Key String
Package Details
- Repository
- SignalFx pulumi/pulumi-signalfx
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
signalfx
Terraform Provider.