Closed frouioui closed 3 years ago
Here is an example of a trace going from the web client, to Traefik, then to the Frontend, then to the Articles API, and finally reaching Vitess cluster (more specifically vtgate, and then the multiple vttablets, since we have 2 shards).
This PR proposes a simple a integration of Jaeger in to tagenal. A new namespace
observability
was created and hosts the operator, the agent, and all the other required resources to run Jaeger.Jaeger is run using the
AllInOne
configuration, as the purposes is solely for demo / experimentation.Tracing is implemented throughout the whole application. From Traefik to Vitess.
Is traced:
The propagation from the APIs to Vitess was achieved by adding a
DialOption
(grpc.UnaryClientInterceptor
) into theGRPCDialOptions
of thevitessdriver
's configuration.A new service was created in the
vitess
keyspace, which aim to ease of development. We can now callvitess-zone1-vtgate-srv
instead of calling the pseudo-random-generated service name by Vitess operator.