Inbyggda aktiviteter i .NET
Det här är en referens för distribuerad spårning aktiviteter som genereras internt av . NET:s inbyggda ActivitySource instanser.
System.Net aktiviteter
Dricks
En omfattande guide om hur du samlar in och rapporterar System.Net
spårningar finns i Distribuerade nätverksspårningar i .NET.
HTTP-klientbegäran
SocketsHttpHandler och HttpClientHandler rapportera aktiviteten för HTTP-klientbegäran enligt rekommendationerna i OpenTelemetry HTTP-klientsemantiska konventioner. Den beskriver HTTP-begäran som skickas av HttpClientskickar överlagringar under tidsintervallet som den underliggande hanteraren slutför begäran. När du slutför begäran kan du läsa svarshuvuden från nätverksströmmen. Det inkluderar inte den tid som ägnas åt att läsa svarstexten. SocketsHttpHandler kan försöka begäranden igen, till exempel vid anslutningsfel eller nedgradering av HTTP-version. Återförsök rapporteras inte som separata HTTP-klientbegäran aktiviteter.
Tillgänglighet | ActivitySource namn | OperationName | DisplayName |
---|---|---|---|
.NET 9+ | System.Net.Http |
System.Net.Http.HttpRequestOut |
{HTTP method} |
Not
Den System.Net.Http.HttpRequestOut
aktiviteten är faktiskt tillgänglig i tidigare versioner av .NET, men dess Status, DisplayNameoch attribut (taggar) fylls bara i från och med .NET 9. I tidigare versioner rekommenderas OpenTelemetry.Instrumentation.Http-paketet för att fylla luckorna i den inbyggda instrumentationen.
Attribut (taggar)
Attribut | Typ | Beskrivning | Exempel | Närvaro |
---|---|---|---|---|
http.request.method |
string |
HTTP-begärandemetod. [1] |
GET ; POST ; HEAD ; _OTHER |
Alltid |
server.address |
string |
Värdidentifierare för "URI-ursprung" HTTP-begäran skickas till. |
example.com ; 10.1.2.80 |
Alltid |
server.port |
int |
Portidentifierare för "URI-ursprung" HTTP-begäran skickas till. |
80 ; 8080 ; 443 |
Alltid |
url.full |
string |
Absolut URL som beskriver en nätverksresurs enligt RFC3986 [2] | https://www.foo.bar/search?q=* |
Alltid |
error.type |
string |
Orsak till fel vid begäran: ett av HTTP-begärandefel i snake_case, eller en fullständig undantagstyp eller en HTTP 4xx/5xx-statuskod. |
System.OperationCanceledException ; name_resolution_error ; secure_connection_error ; 404 |
Om begäran har misslyckats. |
http.request.method_original |
string |
Den ursprungliga HTTP-metoden som skickades av klienten på begäranderaden. |
ACL ; foo |
Om http.request.method inte är en välkänd metod. |
http.response.status_code |
int |
HTTP-svarsstatuskod. | 200 |
Om svaret togs emot. |
network.protocol.version |
string |
Version av HTTP-protokollet som används. |
1.1 ; 2 |
Om svaret togs emot. |
[1] http.request.method
: Värdet innehåller metodnamnet, om metoden är en av de välkända metoder som anges i RFC9110; annars är värdet _OTHER
. De användaringivna metodnamnen mappas till kända namn på ett skiftlägesokänsligt sätt. Om användaren till exempel anger namnet GeT
mappas det till GET
och http.request.method_original
fylls inte i.
[2] url.full
: För att undvika att hemligheter läcker redigeras värdet som standard: hela frågan ersätts med ett *
tecken och användarinformationen & fragment tas bort. Mer information och avaktiveringsväxlar finns i URI-redigering av icke-bakåtkompatibla ändringsdokument.
HTTP-klientbegäran: vänta på anslutning (experimentell)
Den här aktiviteten är underordnad en HTTP-klientbegäran aktivitet. Den representerar tidsintervallet som motsvarande begäran väntar på en tillgänglig anslutning i begärandekön. Om en kostnadsfri anslutning är tillgänglig i poolen när begäran kommer in skapas ingen vänta på anslutning aktivitet. Observera att väntar på anslutning inte representerar den faktiska anslutningsanläggningen. som modelleras av HTTP-anslutningskonfiguration aktivitet. SocketsHttpHandler kan försöka begäranden igen, till exempel vid anslutningsfel eller nedgradering av HTTP-version. Återförsök rapporteras inte som separata HTTP-klientbegäran aktiviteter. Varje nytt anslutningsförsök resulterar dock i en ny vänta på anslutning aktivitet under den överordnade begärandeaktiviteten.
Tillgänglighet | ActivitySource namn | OperationName | DisplayName |
---|---|---|---|
.NET 9+ | Experimental.System.Net.Http.Connections |
Experimental.System.Net.Http.Connections.WaitForConnection |
HTTP wait_for_connection {address}:{port} |
Dricks
Den tid det tar att hämta en anslutning från poolen rapporteras också av måttet http.client.request.time_in_queue
.
Varning
Den här aktiviteten är experimentell. Den kan ändras eller tas bort i en framtida version.
Attribut (taggar)
Attribut | Typ | Beskrivning | Exempel | Närvaro |
---|---|---|---|---|
error.type |
string |
Orsaken till anslutningsfelet: ett av HTTP-begärandefel i snake_case eller en fullständig undantagstyp. |
System.OperationCanceledException ; name_resolution_error ; secure_connection_error |
Om anslutningsförsöket misslyckas. |
Konfiguration av HTTP-anslutning (experimentell)
Den här aktiviteten beskriver inrättandet av en HTTP-anslutning. Detta inkluderar vanligtvis den tid det tar att lösa DNS, upprätta socketanslutningen och utföra TLS-handskakningen.
Tillgänglighet | ActivitySource namn | OperationName | DisplayName |
---|---|---|---|
.NET 9+ | Experimental.System.Net.Http.Connections |
Experimental.System.Net.Http.Connections.ConnectionSetup |
HTTP connection_setup {address}:{port} |
Det finns ingen överordnad-underordnad relation mellan HTTP-klientbegäran och HTTP-anslutningskonfiguration aktiviteter. det senare kommer alltid att vara en rotaktivitet som lever i ett separat spår. Men om anslutningsförsöket som representeras av HTTP-anslutningskonfigurationen resulterar i en lyckad HTTP-anslutning och anslutningen hämtas av en begäran om att hantera den, lägger instrumentationen till en ActivityLink till HTTP-klientbegäran aktivitet som pekar på HTTP-anslutningskonfiguration aktivitet. Det vill: varje begäran är länkad till den anslutning som hanterade begäran.
Not
Om HTTP-anslutningskonfigurationen misslyckas länkas den inte till någon HTTP-klientbegäran.
Varning
Den här aktiviteten är experimentell. Den kan ändras eller tas bort i en framtida version.
Attribut (taggar)
Attribut | Typ | Beskrivning | Exempel | Närvaro |
---|---|---|---|---|
error.type |
string |
Orsak till anslutningsfel: ett av HTTP-begärandefel i snake_case eller en fullständig undantagstyp. |
System.Net.Sockets.SocketException ; name_resolution_error ; secure_connection_error |
Om anslutningsförsöket misslyckas. |
network.peer.address |
string |
Peer-IP-adress för socketanslutningen. | 10.5.3.2 |
Om anslutningsförsöket lyckas. |
server.address |
string |
Värdidentifierare för "URI-ursprung" den första HTTP-begäran skickas till. | example.com |
Alltid |
server.port |
int |
Portidentifierare för "URI-ursprung" den första HTTP-begäran skickas till. | Alltid | |
url.scheme |
string |
Det URI-schemat komponent som identifierar det använda protokollet. |
http ; https |
Alltid |
DNS-sökning (experimentell)
Den här aktiviteten beskriver DNS-sökningar som utförs via Dns-anrop. Det motsvarar det hanterade anropet och inte de fysiska DNS-sökningar som utförs av den underliggande OS-matcharen. När DNS-sökning aktivitet rapporteras tillsammans med en HTTP-anslutningskonfiguration aktivitet, blir DNS-sökning underordnad HTTP-anslutningskonfiguration.
Tillgänglighet | ActivitySource namn | OperationName | DisplayName |
---|---|---|---|
.NET 9+ | Experimental.System.Net.NameResolution |
Experimental.System.Net.NameResolution.DnsLookup |
DNS [reverse] lookup {question} |
Dricks
Varaktigheten för DNS-sökning rapporteras också av måttet dns.lookup.duration
.
Varning
Den här aktiviteten är experimentell. Den kan ändras eller tas bort i en framtida version.
Attribut (taggar)
Attribut | Typ | Beskrivning | Exempel | Närvaro |
---|---|---|---|---|
error.type |
string |
Felkoden eller undantagsnamnet. [1] | host_not_found |
Om sökningen misslyckas. |
dns.answers |
string[] |
Lista över matchade IP-adresser (för DNS-sökning) eller ett enda element som innehåller domännamn (för omvänd sökning). | ["10.0.0.1", "2001:0db8:85a3:0000:0000:8a2e:0370:7334"] |
Om sökningen lyckas. |
dns.question.name |
string |
Domännamnet eller en IP-adress som efterfrågas. | example.com |
Alltid |
[1]: Värdet är antingen en DNS-relaterad SocketError i snake_case (host_not_found
, try_again
, no_recovery
, address_family_not_supported
) eller ett fullständigt undantagsnamn.
Socket connect (experimentell)
Den här aktiviteten beskriver inrättandet av en Socket anslutning via Connect eller ConnectAsync. När aktiviteten socket connect rapporteras tillsammans med en HTTP-anslutningskonfiguration aktivitet blir socketanslutning underordnad KONFIGURATION av HTTP-anslutning.
Tillgänglighet | ActivitySource namn | OperationName | DisplayName |
---|---|---|---|
.NET 9+ | Experimental.System.Net.Sockets |
Experimental.System.Net.Sockets.Connect |
socket connect {address}[:{port}] |
Varning
Den här aktiviteten är experimentell. Den kan ändras eller tas bort i en framtida version.
Attribut (taggar)
Attribut | Typ | Beskrivning | Exempel | Närvaro |
---|---|---|---|---|
error.type |
string |
SocketError i snake_case. |
address_already_in_use ; connection_refused |
Om socketanslutningsförsöket misslyckas. |
network.peer.address |
string |
Peeradress för nätverksanslutningen – IP-adress eller Unix-domännamn. |
10.5.3.2 ; /tmp/my.sock |
IP- och UDS-socketar. |
network.peer.port |
int |
Peerportnummer för IP-anslutningen. | 65123 |
IP-socketar. |
network.transport |
string |
OSI-transportlager eller kommunikationsmetod mellan processer. |
tcp ; udp ; unix |
IP- och UDS-socketar. |
network.type |
string |
OSI-nätverksskiktet eller icke-OSI-motsvarighet. |
ipv4 ; ipv6 |
IP-socketar. |
TLS-handskakning (experimentell)
Den här aktiviteten beskriver TLS-klientens eller serverns handskakning som utförs via SslStreamautentiseringsmetoder. När TLS-handskakning aktivitet rapporteras för autentisering på klientsidan tillsammans med http-anslutningskonfiguration aktivitet blir TLS-handskakning underordnad HTTP-anslutningskonfiguration.
Tillgänglighet | ActivitySource namn | OperationName | DisplayName |
---|---|---|---|
.NET 9+ | Experimental.System.Net.Security |
Experimental.System.Net.Security.TlsHandshake |
TLS client handshake {host}
TLS server handshake
|
Varning
Den här aktiviteten är experimentell. Den kan ändras eller tas bort i framtida versioner.
Attribut (taggar)
Attribut | Typ | Beskrivning | Exempel | Närvaro |
---|---|---|---|---|
error.type |
string |
Beskriver en felklass som åtgärden avslutades med. |
System.Net.Security.Authentication.AuthenticationException ; System.OperationCanceledException |
Om handskakningen misslyckas. |
server.address |
string |
Den servernamnsindikatorn (SNI) som används i meddelandet "Client Hello" under TLS-handskakningen. | example.com |
När du autentiserar som klient. |
tls.protocol.name |
string |
Normaliserat protokollnamn med gemener parsat från den ursprungliga strängen i den förhandlade SSL/TLS-protokollversion |
ssl ; tls |
När protokollinformationen är tillgänglig. |
tls.protocol.version |
string |
Numerisk del av den version som parsats från den ursprungliga strängen i den förhandlade SSL/TLS-protokollversion |
1.2 ; 1.3 |
När protokollinformationen är tillgänglig. |