public sealed class MonitoredResourceDescriptor : Protobuf.IMessage<MonitoredResourceDescriptor>, Protobuf.IBufferMessage
An object that describes the schema of a [MonitoredResource][google.api.MonitoredResource] object using a
type name and a set of labels. For example, the monitored resource
descriptor for Google Compute Engine VM instances has a type of
"gce_instance"
and specifies the use of the labels "instance_id"
and
"zone"
to identify particular VM instances.
Different services can support different monitored resource types.
The following are specific rules to service defined monitored resources for
Monitoring and Logging:
- The
type
, display_name
, description
, labels
and launch_stage
fields are all required.
- The first label of the monitored resource descriptor must be
resource_container
. There are legacy monitored resource descritptors
start with project_id
.
- It must include a
location
label.
- Maximum of default 5 service defined monitored resource descriptors
is allowed per service.
- Maximum of default 10 labels per monitored resource is allowed.
The default maximum limit can be overridden. Please follow
https://cloud.google.com/monitoring/quotas
Inheritance
Object >
MonitoredResourceDescriptor
Namespace
Google.Api
Assembly
Google.Api.CommonProtos.dll
Constructors
MonitoredResourceDescriptor()
public MonitoredResourceDescriptor()
MonitoredResourceDescriptor(MonitoredResourceDescriptor)
public MonitoredResourceDescriptor(MonitoredResourceDescriptor other)
Parameter
Fields
DescriptionFieldNumber
public const int DescriptionFieldNumber = 3
Field number for the "description" field.
Field Value
DisplayNameFieldNumber
public const int DisplayNameFieldNumber = 2
Field number for the "display_name" field.
Field Value
LabelsFieldNumber
public const int LabelsFieldNumber = 4
Field number for the "labels" field.
Field Value
LaunchStageFieldNumber
public const int LaunchStageFieldNumber = 7
Field number for the "launch_stage" field.
Field Value
NameFieldNumber
public const int NameFieldNumber = 5
Field number for the "name" field.
Field Value
TypeFieldNumber
public const int TypeFieldNumber = 1
Field number for the "type" field.
Field Value
Properties
Description
public string Description { get; set; }
Optional. A detailed description of the monitored resource type that might
be used in documentation.
Property Value
Descriptor
public static Protobuf.Reflection.MessageDescriptor Descriptor { get; }
Property Value
DisplayName
public string DisplayName { get; set; }
Optional. A concise name for the monitored resource type that might be
displayed in user interfaces. It should be a Title Cased Noun Phrase,
without any article or other determiners. For example,
"Google Cloud SQL Database"
.
Property Value
Labels
public Protobuf.Collections.RepeatedField<LabelDescriptor> Labels { get; }
Required. A set of labels used to describe instances of this monitored
resource type.
The label key name must follow:
- Only upper and lower-case letters, digits and underscores (_) are
allowed.
- Label name must start with a letter or digit.
- The maximum length of a label name is 100 characters.
For example, an individual Google Cloud SQL database is
identified by values for the labels database_id
and location
.
Property Value
LaunchStage
public LaunchStage LaunchStage { get; set; }
Optional. The launch stage of the monitored resource definition.
Property Value
Name
public string Name { get; set; }
Optional. The resource name of the monitored resource descriptor:
"projects/{project_id}/monitoredResourceDescriptors/{type}"
where
{type} is the value of the type
field in this object and
{project_id} is a project ID that provides API-specific context for
accessing the type. APIs that do not use project information can use the
resource name format "monitoredResourceDescriptors/{type}"
.
Property Value
Parser
public static Protobuf.MessageParser<MonitoredResourceDescriptor> Parser { get; }
Property Value
Type
public string Type { get; set; }
Required. The monitored resource type. For example, the type
cloudsql_database
represents databases in Google Cloud SQL.
All service defined monitored resource types must be prefixed with the
service name, in the format of {service name}/{relative resource name}
.
The relative resource name must follow:
- Only upper and lower-case letters and digits are allowed.
- It must start with upper case character and is recommended to use Upper
Camel Case style.
- The maximum number of characters allowed for the relative_resource_name
is 100.
Note there are legacy service monitored resources not following this rule.
Property Value
Methods
CalculateSize()
public int CalculateSize()
Returns
Clone()
public MonitoredResourceDescriptor Clone()
Returns
Equals(MonitoredResourceDescriptor)
public bool Equals(MonitoredResourceDescriptor other)
Parameter
Returns
Equals(Object)
public override bool Equals(object other)
Parameter
Type | Name | Description |
---|
Object | other | |
Returns
GetHashCode()
public override int GetHashCode()
Returns
MergeFrom(MonitoredResourceDescriptor)
public void MergeFrom(MonitoredResourceDescriptor other)
Parameter
public void MergeFrom(Protobuf.CodedInputStream input)
Parameter
ToString()
public override string ToString()
Returns
WriteTo(Protobuf.CodedOutputStream)
public void WriteTo(Protobuf.CodedOutputStream output)
Parameter
Implements