Maison >Java >javaDidacticiel >Comment publier le plugin JetBrains Rider pour opentelemetry/honeycomb
J'ai eu la chance de travailler avec honeycomb.io il y a 2 semaines, principalement je changeais le code qui envoie aussi les données. Appinsights azre avait maintenant besoin d'envoyer également des données à Honeycomb. Ce n'était pas trop complexe mais c'est difficile de les attraper
enregistrez les lignes et assurez-vous que nous avons appelé le point de terminaison correctement et quelles données nous avons envoyées. Il existe un merveilleux plugin pour cela pour appinsights https://github.com/Socolin/ApplicationInsightsRiderPlugin mais il n'y avait aucun plugin capable d'afficher les appels de télémétrie ouverte, oui, honeycomb.io utilise le protocole OTEL signifiant opentelemetry qui est maintenant une sorte de norme industrielle pour l'observabilité.
J'avais donc besoin d'apprendre à voir les journaux de débogage opentelemetry, ce qui n'était pas facile à configurer, car l'API opentelemetry vous oblige à configurer l'exportateur de console qui affiche certaines données dans les journaux, ressemble à ci-dessous
Activity.TraceId: 39de3d235089b014c5e37abefdc3a7f8 Activity.SpanId: 03ae17902e901577 Activity.TraceFlags: Recorded Activity.ActivitySourceName: Microsoft.AspNetCore Activity.DisplayName: GET Hello Activity.Kind: Server Activity.StartTime: 2024-10-06T21:53:05.9553689Z Activity.Duration: 00:00:00.2187686 Activity.Tags: server.address: localhost server.port: 8080 http.request.method: GET url.scheme: http url.path: /Hello network.protocol.version: 1.1 user_agent.original: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:131.0) Gecko/20100101 Firefox/131.0 http.route: Hello http.response.status_code: 200 Resource associated with Activity: service.name: my-service-name telemetry.sdk.name: opentelemetry telemetry.sdk.language: dotnet telemetry.sdk.version: 1.9.0
Cela devait être remplacé par json pour que je puisse l'analyser et mieux l'afficher dans la fenêtre de débogage du pilote, j'ai donc écrit ce nouvel exportateur.
{"activity":{"traceId":"b49d03d8b55c2f8dfc9f385b3191fdee","spanId":"47c531f9a5a32dca","activityTraceFlags":"Recorded","parentSpanId":"0000000000000000","activitySourceName":"Microsoft.AspNetCore","activitySourceVersion":"","displayName":"GET Hello","kind":"Server","startTime":"2024-10-06T21:54:22.8551436Z","duration":"00:00:00.0013247","tags":{"server.address":"localhost","server.port":"8080","http.request.method":"GET","url.scheme":"http","url.path":"/Hello","network.protocol.version":"1.1","user_agent.original":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:131.0) Gecko/20100101 Firefox/131.0","http.route":"Hello","http.response.status_code":"200"},"statusCode":"Unset","events":[],"links":[],"resource":{"service.name":"my-service-name","telemetry.sdk.name":"opentelemetry","telemetry.sdk.language":"dotnet","telemetry.sdk.version":"1.9.0"},"rootId":"b49d03d8b55c2f8dfc9f385b3191fdee","operationName":"Microsoft.AspNetCore.Hosting.HttpRequestIn"}}
Maintenant, j'ai le journal de débogage json, tout ce dont j'avais besoin était de supprimer appinsights du plugin Socolin, d'analyser le json opentelemetry et de l'afficher dans la fenêtre de débogage.
Regardez la vidéo ou la capture d'écran ici
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!