Add metadata to metrics and events
Problem to solve
We would like to be able to break down metrics/logs based on client metadata.
Proposal
Client type (grpc / websockets)
-
Pass x-gitlab-client-typefrom language server. @Joey_Khabie MR -
Forward x-gitlab-client-typeheader in websocket to gRPC metadata @halilcoban MR -
Add client_typeto prometheus metrics @halilcoban -
Add client_typeto runwway dashboard definiton @halilcoban -
Add client_typeto DWS logs @shinya.maeda -
Add client_typeto internal events @Joey_Khabie
Client Version (language server version, etc)
-
Pass X-Gitlab-Language-Server-Versionfrom language server. -
Forward X-Gitlab-Language-Server-Versionheader in websocket to gRPC metadata @halilcoban MR -
Add lsp_versionto prometheus metrics @halilcoban MR -
Add lsp_versionto runwway dashboard definiton @halilcoban -
Add lsp_versiontype to DWS logs @shinya.maeda -
Add lsp_versiontype to internal events @Joey_Khabie
GitLab Version
-
Add gitlab_versionto prometheus metrics @halilcoban -
Add gitlab_versionto runwway dashboard definiton @halilcoban -
Add gitlab_versiontype to DWS logs @shinya.maeda -
Add gitlab_versiontype to internal events @Joey_Khabie
User Agent
-
Pass correct user agent in Language Server @shinya.maeda MR -
Pass correct user agent in Workhorse @shinya.maeda MR -
Pass correct user agent in Go executor @shinya.maeda MR - User agent won't be added to Prometheus metrics due to concern of cardinality.
Further details
Links / references
Edited by Halil Coban