diff --git a/lib/travis/api/app/endpoint/builds.rb b/lib/travis/api/app/endpoint/builds.rb index 98395afc..3e48cf16 100644 --- a/lib/travis/api/app/endpoint/builds.rb +++ b/lib/travis/api/app/endpoint/builds.rb @@ -14,11 +14,15 @@ class Travis::Api::App end post '/:id/cancel' do + Metriks.meter("api.request.cancel_build").mark + service = self.service(:cancel_build, params) if !service.authorized? json = { error: { message: "You don't have access to cancel build(#{params[:id]})" } } + + Metriks.meter("api.request.cancel_build.unauthorized").mark status 403 respond_with json elsif !service.can_cancel? @@ -26,10 +30,14 @@ class Travis::Api::App message: "The build(#{params[:id]}) can't be canceled", code: 'cant_cancel' } } + + Metriks.meter("api.request.cancel_build.cant_cancel").mark status 422 respond_with json else service.run + + Metriks.meter("api.request.cancel_build.success").mark status 204 end end diff --git a/lib/travis/api/app/endpoint/jobs.rb b/lib/travis/api/app/endpoint/jobs.rb index 2ac3ba94..ed5945f4 100644 --- a/lib/travis/api/app/endpoint/jobs.rb +++ b/lib/travis/api/app/endpoint/jobs.rb @@ -43,6 +43,8 @@ class Travis::Api::App json = { error: { message: "You don't have access to cancel job(#{params[:id]})" } } + + Metriks.meter("api.request.cancel_job.unauthorized").mark status 403 respond_with json elsif !service.can_cancel? @@ -50,12 +52,18 @@ class Travis::Api::App message: "The job(#{params[:id]}) can't be canceled", code: 'cant_cancel' } } + + Metriks.meter("api.request.cancel_job.cant_cancel").mark status 422 respond_with json else service.run + + Metriks.meter("api.request.cancel_job.success").mark status 204 end + + Metriks.meter("api.request.cancel_job").mark end end end diff --git a/lib/travis/api/app/endpoint/requests.rb b/lib/travis/api/app/endpoint/requests.rb index acfec35c..d62b7486 100644 --- a/lib/travis/api/app/endpoint/requests.rb +++ b/lib/travis/api/app/endpoint/requests.rb @@ -4,6 +4,7 @@ class Travis::Api::App class Endpoint class Requests < Endpoint post '/' do + Metriks.meter("api.request.restart").mark respond_with service(:reset_model, params) end end