Class ProtoProtocol
What makes one protocol itself: the key its options are registered under, the name capabilities and coverage use, the trace source its operations declare, and the observation kind coverage collects. One descriptor per integration, so the builder that produces an observation and the collector that consumes it cannot disagree about its kind. CoverageCategory is null for a protocol that ships no collector (Messaging): it owns no coverage vocabulary, so it declares none.
public sealed record ProtoProtocol : IEquatable<ProtoProtocol>
- Inheritance
-
ProtoProtocol
- Implements
- Inherited Members
- Extension Methods
Constructors
ProtoProtocol(string, string, string, string, string?)
What makes one protocol itself: the key its options are registered under, the name capabilities and coverage use, the trace source its operations declare, and the observation kind coverage collects. One descriptor per integration, so the builder that produces an observation and the collector that consumes it cannot disagree about its kind. CoverageCategory is null for a protocol that ships no collector (Messaging): it owns no coverage vocabulary, so it declares none.
public ProtoProtocol(string Key, string Name, string TraceSource, string ResponseObservationKind, string? CoverageCategory = null)
Parameters
Properties
Capability
The capability this protocol declares when it is registered.
public ProtoCapabilityDescriptor Capability { get; }
Property Value
CoverageCategory
public string? CoverageCategory { get; init; }
Property Value
CoverageCategoryOrName
The coverage category a collector keys under: the declared category, or the protocol name when the protocol ships no category of its own. A collector reads this instead of re-deriving the fallback, so adding a collector without a category can never emit a null one.
public string CoverageCategoryOrName { get; }
Property Value
Key
public string Key { get; init; }
Property Value
Name
public string Name { get; init; }
Property Value
ResponseObservationKind
public string ResponseObservationKind { get; init; }
Property Value
TraceSource
public string TraceSource { get; init; }