From b2a85958710382eb640cbaa9a941f3d66f4e140b Mon Sep 17 00:00:00 2001 From: Ahmad Sherif Date: Thu, 25 Apr 2019 20:00:55 +0200 Subject: [PATCH] Add project_remote_mirror_last_successful_update_time_seconds metric --- Gemfile.lock | 2 +- README.md | 2 +- lib/gitlab_monitor/database/remote_mirrors.rb | 16 +++++++++++----- lib/gitlab_monitor/version.rb | 2 +- 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index dd9e113..dcb6da5 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - gitlab-monitor (3.6.0) + gitlab-monitor (3.7.0) connection_pool (~> 2.2.1) pg (~> 1.1) quantile (~> 0.2.0) diff --git a/README.md b/README.md index 1557c55..b479666 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ metrics. `gitlab_database_bloat_$type_$key` with type `btree` (index bloat) or `table` (table bloat) and keys `bloat_ratio bloat_size extra_size real_size` (see below) * [Remote mirrors](lib/gitlab_monitor/database/remote_mirrors.rb) -- - `project_remote_mirror_last_successful_update_time_seconds` + `project_remote_mirror_last_successful_update_time_seconds`, `project_remote_mirror_last_update_time_seconds` 1. Git * [git pull/push timings](lib/gitlab_monitor/git.rb) -- `git_pull_time_milliseconds`, `git_push_time_milliseconds` diff --git a/lib/gitlab_monitor/database/remote_mirrors.rb b/lib/gitlab_monitor/database/remote_mirrors.rb index a4ed78d..cb3d20e 100644 --- a/lib/gitlab_monitor/database/remote_mirrors.rb +++ b/lib/gitlab_monitor/database/remote_mirrors.rb @@ -4,7 +4,9 @@ module GitLab # A helper class to collect remote mirrors metrics. class RemoteMirrorsCollector < Base QUERY = <<~SQL.freeze - SELECT project_id, url, EXTRACT(EPOCH FROM last_successful_update_at) AS last_successful_update_at + SELECT project_id, url, + EXTRACT(EPOCH FROM last_successful_update_at) AS last_successful_update_at, + EXTRACT(EPOCH FROM last_update_at) AS last_update_at FROM remote_mirrors WHERE project_id IN (%s) AND enabled = 't' SQL @@ -41,14 +43,18 @@ module GitLab ) end - def probe_db + def probe_db # rubocop:disable Metrics/MethodLength results = @collector.run results.to_a.each do |row| - last_successful_update_at = row.delete("last_successful_update_at").to_i - @metrics.add( "project_remote_mirror_last_successful_update_time_seconds", - last_successful_update_at, + row["last_successful_update_at"].to_i, + project_id: row["project_id"], + url: row["url"] + ) + @metrics.add( + "project_remote_mirror_last_update_time_seconds", + row["last_update_at"].to_i, project_id: row["project_id"], url: row["url"] ) diff --git a/lib/gitlab_monitor/version.rb b/lib/gitlab_monitor/version.rb index 3f6e551..beb21bb 100644 --- a/lib/gitlab_monitor/version.rb +++ b/lib/gitlab_monitor/version.rb @@ -1,5 +1,5 @@ module GitLab module Monitor - VERSION = "3.6.0".freeze + VERSION = "3.7.0".freeze end end -- GitLab