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)
Fields
DescriptionFieldNumber
public const int DescriptionFieldNumber = 3
Field number for the "description" field.
Field Value |
---|
Type | Description |
Int32 | |
DisplayNameFieldNumber
public const int DisplayNameFieldNumber = 2
Field number for the "display_name" field.
Field Value |
---|
Type | Description |
Int32 | |
LabelsFieldNumber
public const int LabelsFieldNumber = 4
Field number for the "labels" field.
Field Value |
---|
Type | Description |
Int32 | |
LaunchStageFieldNumber
public const int LaunchStageFieldNumber = 7
Field number for the "launch_stage" field.
Field Value |
---|
Type | Description |
Int32 | |
NameFieldNumber
public const int NameFieldNumber = 5
Field number for the "name" field.
Field Value |
---|
Type | Description |
Int32 | |
TypeFieldNumber
public const int TypeFieldNumber = 1
Field number for the "type" field.
Field Value |
---|
Type | Description |
Int32 | |
Properties
Description
public string Description { get; set; }
Optional. A detailed description of the monitored resource type that might
be used in documentation.
Property Value |
---|
Type | Description |
String | |
Descriptor
public static Protobuf.Reflection.MessageDescriptor Descriptor { get; }
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 |
---|
Type | Description |
String | |
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
.
LaunchStage
public LaunchStage LaunchStage { get; set; }
Optional. The launch stage of the monitored resource definition.
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 |
---|
Type | Description |
String | |
Parser
public static Protobuf.MessageParser<MonitoredResourceDescriptor> Parser { get; }
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 |
---|
Type | Description |
String | |
Methods
CalculateSize()
public int CalculateSize()
Returns |
---|
Type | Description |
Int32 | |
Clone()
public MonitoredResourceDescriptor Clone()
Equals(MonitoredResourceDescriptor)
public bool Equals(MonitoredResourceDescriptor other)
Equals(Object)
public override bool Equals(object other)
Parameter |
---|
Name | Description |
other | Object
|
GetHashCode()
public override int GetHashCode()
Returns |
---|
Type | Description |
Int32 | |
MergeFrom(MonitoredResourceDescriptor)
public void MergeFrom(MonitoredResourceDescriptor other)
public void MergeFrom(Protobuf.CodedInputStream input)
ToString()
public override string ToString()
WriteTo(Protobuf.CodedOutputStream)
public void WriteTo(Protobuf.CodedOutputStream output)