18794: Add version metric to RailsAPI.
authorTom Clegg <tom@curii.com>
Thu, 5 May 2022 14:53:53 +0000 (10:53 -0400)
committerTom Clegg <tom@curii.com>
Thu, 5 May 2022 14:53:53 +0000 (10:53 -0400)
Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom@curii.com>

services/api/app/controllers/arvados/v1/management_controller.rb
services/api/test/functional/arvados/v1/management_controller_test.rb

index 55a00d346349cc53d951ad597044cd972852f1fb..8f37960ef237b00685a73295d9a64c1b09eecc25 100644 (file)
@@ -37,6 +37,9 @@ arvados_config_load_timestamp_seconds{sha256="#{Rails.configuration.SourceSHA256
 # HELP arvados_config_source_timestamp_seconds Timestamp of config file when it was loaded.
 # TYPE arvados_config_source_timestamp_seconds gauge
 arvados_config_source_timestamp_seconds{sha256="#{Rails.configuration.SourceSHA256}"} #{Rails.configuration.SourceTimestamp.to_f}
 # HELP arvados_config_source_timestamp_seconds Timestamp of config file when it was loaded.
 # TYPE arvados_config_source_timestamp_seconds gauge
 arvados_config_source_timestamp_seconds{sha256="#{Rails.configuration.SourceSHA256}"} #{Rails.configuration.SourceTimestamp.to_f}
+# HELP arvados_version_running Indicated version is running.
+# TYPE arvados_version_running gauge
+arvados_version_running{version="#{AppVersion.package_version}"} 1
 EOF
   end
 
 EOF
   end
 
index 5b34f9fef9c6c5505196f5644a9f52b92569510b..6d27bccfc48e55635e062d10293e22c0a0288b50 100644 (file)
@@ -47,6 +47,8 @@ class Arvados::V1::ManagementControllerTest < ActionController::TestCase
     m = @response.body.match(/\narvados_config_load_timestamp_seconds{sha256="#{hash}"} (.*?)\n/)
     assert_operator m[1].to_f, :>, mtime.utc.to_f
     assert_operator m[1].to_f, :<, Time.now.utc.to_f
     m = @response.body.match(/\narvados_config_load_timestamp_seconds{sha256="#{hash}"} (.*?)\n/)
     assert_operator m[1].to_f, :>, mtime.utc.to_f
     assert_operator m[1].to_f, :<, Time.now.utc.to_f
+
+    assert_match /\narvados_version_running{version="#{Regexp.escape AppVersion.package_version}"} 1\n/, @response.body
   end
 
   test "metrics disabled" do
   end
 
   test "metrics disabled" do