diff options
author | Paco Guzman <pacoguzmanp@gmail.com> | 2016-10-10 14:21:28 +0200 |
---|---|---|
committer | Paco Guzman <pacoguzmanp@gmail.com> | 2016-10-11 13:15:28 +0200 |
commit | ba44420a2184476fb4c76b3b797b5d1e3e714c8a (patch) | |
tree | 9af1b29e5a14497e7c632880c8a04efe08655f24 /lib/gitlab_projects.rb | |
parent | b30d957fe2a85ee9ebb058010020e1c21d256a44 (diff) | |
download | gitlab-shell-62-instrument-gitlab-shell.tar.gz |
Instrument GitLab Shell and log metrics data to a file62-instrument-gitlab-shell
Diffstat (limited to 'lib/gitlab_projects.rb')
-rw-r--r-- | lib/gitlab_projects.rb | 52 |
1 files changed, 34 insertions, 18 deletions
diff --git a/lib/gitlab_projects.rb b/lib/gitlab_projects.rb index 58dea50..054feed 100644 --- a/lib/gitlab_projects.rb +++ b/lib/gitlab_projects.rb @@ -4,6 +4,7 @@ require 'open3' require_relative 'gitlab_config' require_relative 'gitlab_logger' +require_relative 'gitlab_metrics' require_relative 'gitlab_reference_counter' class GitlabProjects @@ -50,24 +51,39 @@ class GitlabProjects end def exec - case @command - when 'create-tag'; create_tag - when 'add-project'; add_project - when 'list-projects'; puts list_projects - when 'rm-project'; rm_project - when 'mv-project'; mv_project - when 'mv-storage'; mv_storage - when 'import-project'; import_project - when 'fork-project'; fork_project - when 'fetch-remote'; fetch_remote - when 'push-branches'; push_branches - when 'delete-remote-branches'; delete_remote_branches - when 'list-remote-tags'; list_remote_tags - when 'gc'; gc - else - $logger.warn "Attempt to execute invalid gitlab-projects command #{@command.inspect}." - puts 'not allowed' - false + GitlabMetrics.measure("command-#{@command.inspect}") do + case @command + when 'create-tag'; + create_tag + when 'add-project'; + add_project + when 'list-projects'; + puts list_projects + when 'rm-project'; + rm_project + when 'mv-project'; + mv_project + when 'mv-storage'; + mv_storage + when 'import-project'; + import_project + when 'fork-project'; + fork_project + when 'fetch-remote'; + fetch_remote + when 'push-branches'; + push_branches + when 'delete-remote-branches'; + delete_remote_branches + when 'list-remote-tags'; + list_remote_tags + when 'gc'; + gc + else + $logger.warn "Attempt to execute invalid gitlab-projects command #{@command.inspect}." + puts 'not allowed' + false + end end end |