Skip to content

Clean the name of the function before converting to protobuf

Roy Zwambag requested to merge rz-clean-name-gcpprofiler into master

What does this MR do and why?

Google Cloud Profiler has trouble identifying class structure in Ruby and coloring it correctly. It prefers everything separated by a dot as it is in for example Golang. E.g. we have to substitute ActionView::Template#render to ActionView.Template.render

Fixes #396453 (closed)

How to set up and validate locally

You can test this locally by turning on the GCP Profiler in [google_cloud_profiler.rb](https://gitlab.com/gitlab-org/gitlab/-/blob/master/config/initializers/google_cloud_profiler.rb)

Set the following ENV variables:

  • GITLAB_GOOGLE_CLOUD_PROFILER_ENABLED: true
  • GITLAB_GOOGLE_CLOUD_PROFILER_PROJECT_ID: google cloud project id where you want to test it
  • GOOGLE_APPLICATION_CREDENTIALS: path to the service account json with Google Cloud Profiler rights

Run the app for a bit and see the Profiler.


You can also check the result here: https://console.cloud.google.com/profiler/test-14-03-gitlab-web/_?referrer=search&project=group-memory-testbed-c2c979

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Roy Zwambag

Merge request reports