lukashornych / evitalab

Official web-based GUI client for evitaDB e-commerce database. It is built to help developers who use evitaDB with exploring and debugging their domain structure and data. Besides standard query executing, it also supports multiple no-code tools to quickly navigate through domain structure, docs and data without needing to write any queries.
https://github.com/lukashornych/evitalab
Apache License 2.0
7 stars 1 forks source link

Send `clientId` and `requestId` automatically with every request to evitaDB instance #72

Closed lukashornych closed 4 months ago

lukashornych commented 7 months ago

In evitaDB we have functionality to monitor client requests by assigning them ids. Specifically clientId and requestId as documented in the Monitor section of evitaDB docs.

In evitaLab, the clientId would be consisted of static evitaLab prefix and value of evitalab_servername cookie (or standalone if omitted). The requestId would be dynamically generated uuid for every call of evitaLab to evitaDB instance. Because in evitaLab the requests are not logically joined together like on website where the single page load is the joining element, we will not share request ids between requests right now (this can change in future).

cc @novoj

lukashornych commented 4 months ago

New version of evitaDB uses clientId and traceId and OpenTelemetry.

lukashornych commented 4 months ago

evitaLab now sends X-EvitaDB-ClientID header with clientId with server name for both GraphQL and REST calls. There is no traceId/requestId being sent because there is currently no concept of requesting multiple request under single group (like when rendering single webpage).