public sealed class ErrorInfo : Protobuf.IMessage<ErrorInfo>, Protobuf.IBufferMessage
Describes the cause of the error with structured details.
Example of an error when contacting the "pubsub.googleapis.com" API when it is not enabled:
{ "reason": "API_DISABLED" "domain": "googleapis.com" "metadata": { "resource": "projects/123", "service": "pubsub.googleapis.com" } }
This response indicates that the pubsub.googleapis.com API is not enabled.
Example of an error that is returned when attempting to create a Spanner instance in a region that is out of stock:
{ "reason": "STOCKOUT" "domain": "spanner.googleapis.com", "metadata": { "availableRegions": "us-central1,us-east2" } }
Implements
Protobuf.IBufferMessageNamespace
Google.RpcAssembly
Google.Api.CommonProtos.dll
Constructors
ErrorInfo()
public ErrorInfo()
ErrorInfo(ErrorInfo)
public ErrorInfo(ErrorInfo other)
Fields
DomainFieldNumber
public
const
int
DomainFieldNumber
=
2
Field number for the "domain" field.
MetadataFieldNumber
public
const
int
MetadataFieldNumber
=
3
Field number for the "metadata" field.
ReasonFieldNumber
public
const
int
ReasonFieldNumber
=
1
Field number for the "reason" field.
Properties
Descriptor
public static Protobuf.Reflection.MessageDescriptor Descriptor { get; }
Domain
public string Domain { get; set; }
The logical grouping to which the "reason" belongs. The error domain is typically the registered service name of the tool or product that generates the error. Example: "pubsub.googleapis.com". If the error is generated by some common infrastructure, the error domain must be a globally unique value that identifies the infrastructure. For Google API infrastructure, the error domain is "googleapis.com".
Metadata
public Protobuf.Collections.MapField<string, string> Metadata { get; }
Additional structured details about this error.
Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in length. When identifying the current value of an exceeded limit, the units should be contained in the key, not the value. For example, rather than {"instanceLimit": "100/request"}, should be returned as, {"instanceLimitPerRequest": "100"}, if the client exceeds the number of instances that can be created in a single (batch) request.
Parser
public static Protobuf.MessageParser<ErrorInfo> Parser { get; }
Reason
public string Reason { get; set; }
The reason of the error. This is a constant value that identifies the proximate cause of the error. Error reasons are unique within a particular domain of errors. This should be at most 63 characters and match /[A-Z0-9_]+/.
Methods
CalculateSize()
public int CalculateSize()
Clone()
public ErrorInfo Clone()
Equals(ErrorInfo)
public bool Equals(ErrorInfo other)
Equals(Object)
public override bool Equals(object other)
GetHashCode()
public override int GetHashCode()
MergeFrom(Protobuf.CodedInputStream)
public void MergeFrom(Protobuf.CodedInputStream input)
MergeFrom(ErrorInfo)
public void MergeFrom(ErrorInfo other)
ToString()
public override string ToString()
WriteTo(Protobuf.CodedOutputStream)
public void WriteTo(Protobuf.CodedOutputStream output)