Dela via


HttpClient-måttrapport server.port villkorslöst

När HttpClient-mått lades till i .NET 8 server.port introducerades som ett Conditionally Required attribut i enlighet med standardtillståndet vid den tidpunkten. Att vara villkorsstyrd innebar att porten endast rapporterades om den inte matchade standardporten för motsvarande protokoll (80 för HTTP, 443 för HTTPS). Standardkravsnivån för attributet har dock ändrats till Required.

För att upprätthålla efterlevnaden av Open Telemetry-standarden samtidigt som instrumentens beteenden hålls konsekventa med varandra, har instrumenten http.client.request.duration, http.client.connection.durationoch http.client.open_connections ändrats för att villkorslöst rapportera server.port attributet.

Den här ändringen kan bryta befintliga frågor i övervakningsprogram som Prometheus.

Version introducerad

Förhandsversion 7 av .NET 9

Tidigare beteende

http.client.request.duration, http.client.connection.durationoch http.client.open_connections rapporterade server.port attributet endast om det inte matchade motsvarande protokolls standardport (80 för HTTP, 443 för HTTPS).

Nytt beteende

Attributet server.port rapporteras nu villkorslöst av instrumenten http.client.request.duration, http.client.connection.durationoch http.client.open_connections.

Typ av icke-bakåtkompatibel ändring

Den här ändringen är en beteendeförändring.

Orsak till ändringen

Ändringen upprätthåller efterlevnaden av Open Telemetry-specifikationen samtidigt som instrumenten HttpClient hålls konsekventa med varandra.

Ingen åtgärd krävs om du inte förlitar dig på HttpClient-mått. Om du använder instrumenten http.client.request.duration, http.client.connection.durationeller http.client.open_connections kan den här ändringen bryta befintliga frågor i övervakningsprogram som Prometheus.

Berörda API:er