import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This data source provides the list of Monitored Resource Types in Oracle Cloud Infrastructure Stack Monitoring service. * * Returns list of resource types accessible to the customer. * There are two types of resource types - System resource types and User resource types. * System resource types are available out of the box in the stack monitoring resource service * and are accessible to all the tenant users. User resource types are created in the context * of a tenancy and are visible only for the tenancy. By default, both System resource types * and User resource types are returned. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testMonitoredResourceTypes = oci.stackmonitoring.getMonitoredResourceTypes({ * compartmentId: compartmentId, * excludeFields: monitoredResourceTypeExcludeFields, * fields: monitoredResourceTypeFields, * isExcludeSystemTypes: monitoredResourceTypeIsExcludeSystemTypes === "true", * metricNamespace: monitoredResourceTypeMetricNamespace, * name: monitoredResourceTypeName, * resourceCategory: monitoredResourceTypeResourceCategory, * sourceType: monitoredResourceTypeSourceType, * status: monitoredResourceTypeStatus, * }); * ``` */ export declare function getMonitoredResourceTypes(args: GetMonitoredResourceTypesArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getMonitoredResourceTypes. */ export interface GetMonitoredResourceTypesArgs { /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the tenancy for which monitored resource types should be listed. */ compartmentId: string; /** * Partial response refers to an optimization technique offered by the RESTful web APIs, to return all the information except the fields requested to be excluded (excludeFields) by the client. In this mechanism, the client sends the exclude field names as the query parameters for an API to the server, and the server trims down the default response content by removing the fields that are not required by the client. The parameter controls which fields to exlude and to return and should be a query string parameter called "excludeFields" of an array type, provide the values as enums, and use collectionFormat. */ excludeFields?: string[]; /** * Partial response refers to an optimization technique offered by the RESTful web APIs, to return only the information (fields) required by the client. In this mechanism, the client sends the required field names as the query parameters for an API to the server, and the server trims down the default response content by removing the fields that are not required by the client. The parameter controls which fields to return and should be a query string parameter called "fields" of an array type, provide the values as enums, and use collectionFormat. * * MonitoredResourceType Id, name and compartment will be added by default. */ fields?: string[]; filters?: inputs.StackMonitoring.GetMonitoredResourceTypesFilter[]; /** * A filter to exclude system resource types. If set to true, system resource types will be excluded. */ isExcludeSystemTypes?: boolean; /** * A filter to return monitored resource types that has the matching namespace. */ metricNamespace?: string; /** * A filter to return monitored resource types that match exactly with the resource type name given. */ name?: string; /** * A filter to return only resources with matching resource category. */ resourceCategory?: string; /** * A filter to return only resources with matching source type. */ sourceType?: string; /** * A filter to return only resources that matches with lifecycleState given. */ status?: string; } /** * A collection of values returned by getMonitoredResourceTypes. */ export interface GetMonitoredResourceTypesResult { /** * Compartment Identifier [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). */ readonly compartmentId: string; readonly excludeFields?: string[]; readonly fields?: string[]; readonly filters?: outputs.StackMonitoring.GetMonitoredResourceTypesFilter[]; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly isExcludeSystemTypes?: boolean; /** * Metric namespace for resource type. */ readonly metricNamespace?: string; /** * The list of monitored_resource_types_collection. */ readonly monitoredResourceTypesCollections: outputs.StackMonitoring.GetMonitoredResourceTypesMonitoredResourceTypesCollection[]; /** * A unique monitored resource type name. The name must be unique across tenancy. Name can not be changed. */ readonly name?: string; /** * Resource Category to indicate the kind of resource type. */ readonly resourceCategory?: string; /** * Source type to indicate if the resource is stack monitoring discovered, Oracle Cloud Infrastructure native resource, etc. */ readonly sourceType?: string; readonly status?: string; } /** * This data source provides the list of Monitored Resource Types in Oracle Cloud Infrastructure Stack Monitoring service. * * Returns list of resource types accessible to the customer. * There are two types of resource types - System resource types and User resource types. * System resource types are available out of the box in the stack monitoring resource service * and are accessible to all the tenant users. User resource types are created in the context * of a tenancy and are visible only for the tenancy. By default, both System resource types * and User resource types are returned. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testMonitoredResourceTypes = oci.stackmonitoring.getMonitoredResourceTypes({ * compartmentId: compartmentId, * excludeFields: monitoredResourceTypeExcludeFields, * fields: monitoredResourceTypeFields, * isExcludeSystemTypes: monitoredResourceTypeIsExcludeSystemTypes === "true", * metricNamespace: monitoredResourceTypeMetricNamespace, * name: monitoredResourceTypeName, * resourceCategory: monitoredResourceTypeResourceCategory, * sourceType: monitoredResourceTypeSourceType, * status: monitoredResourceTypeStatus, * }); * ``` */ export declare function getMonitoredResourceTypesOutput(args: GetMonitoredResourceTypesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getMonitoredResourceTypes. */ export interface GetMonitoredResourceTypesOutputArgs { /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the tenancy for which monitored resource types should be listed. */ compartmentId: pulumi.Input; /** * Partial response refers to an optimization technique offered by the RESTful web APIs, to return all the information except the fields requested to be excluded (excludeFields) by the client. In this mechanism, the client sends the exclude field names as the query parameters for an API to the server, and the server trims down the default response content by removing the fields that are not required by the client. The parameter controls which fields to exlude and to return and should be a query string parameter called "excludeFields" of an array type, provide the values as enums, and use collectionFormat. */ excludeFields?: pulumi.Input[] | undefined>; /** * Partial response refers to an optimization technique offered by the RESTful web APIs, to return only the information (fields) required by the client. In this mechanism, the client sends the required field names as the query parameters for an API to the server, and the server trims down the default response content by removing the fields that are not required by the client. The parameter controls which fields to return and should be a query string parameter called "fields" of an array type, provide the values as enums, and use collectionFormat. * * MonitoredResourceType Id, name and compartment will be added by default. */ fields?: pulumi.Input[] | undefined>; filters?: pulumi.Input[] | undefined>; /** * A filter to exclude system resource types. If set to true, system resource types will be excluded. */ isExcludeSystemTypes?: pulumi.Input; /** * A filter to return monitored resource types that has the matching namespace. */ metricNamespace?: pulumi.Input; /** * A filter to return monitored resource types that match exactly with the resource type name given. */ name?: pulumi.Input; /** * A filter to return only resources with matching resource category. */ resourceCategory?: pulumi.Input; /** * A filter to return only resources with matching source type. */ sourceType?: pulumi.Input; /** * A filter to return only resources that matches with lifecycleState given. */ status?: pulumi.Input; } //# sourceMappingURL=getMonitoredResourceTypes.d.ts.map