diff options
author | Yorick Peterse <yorickpeterse@gmail.com> | 2016-04-11 13:27:24 +0200 |
---|---|---|
committer | Yorick Peterse <yorickpeterse@gmail.com> | 2016-04-11 13:27:52 +0200 |
commit | d9110a7ecab52ab0716a42c2075cebdf8028d5e7 (patch) | |
tree | 5a3133dafdea73d42953ed8bd1b14b89cc990ed6 | |
parent | 185d78bcb3064c25b764937949d2bb66ec66901a (diff) | |
download | gitlab-ce-metrics-measure-block-transaction.tar.gz |
Track call counts in Gitlab::Metrics.measure_blockmetrics-measure-block-transaction
-rw-r--r-- | doc/development/instrumentation.md | 7 | ||||
-rw-r--r-- | lib/gitlab/metrics.rb | 1 | ||||
-rw-r--r-- | spec/lib/gitlab/metrics_spec.rb | 3 |
3 files changed, 8 insertions, 3 deletions
diff --git a/doc/development/instrumentation.md b/doc/development/instrumentation.md index f7e148fb3e4..c1cf2e77c26 100644 --- a/doc/development/instrumentation.md +++ b/doc/development/instrumentation.md @@ -14,10 +14,11 @@ Gitlab::Metrics.measure(:foo) do end ``` -Two values are measured for a block: +3 values are measured for a block: -1. The real time elapsed, stored in NAME_real_time -2. The CPU time elapsed, stored in NAME_cpu_time +1. The real time elapsed, stored in NAME_real_time. +2. The CPU time elapsed, stored in NAME_cpu_time. +3. The call count, stored in NAME_call_count. Both the real and CPU timings are measured in milliseconds. diff --git a/lib/gitlab/metrics.rb b/lib/gitlab/metrics.rb index 4d64555027e..33dd3e39f4d 100644 --- a/lib/gitlab/metrics.rb +++ b/lib/gitlab/metrics.rb @@ -97,6 +97,7 @@ module Gitlab Transaction.current.increment("#{name}_real_time", real_time) Transaction.current.increment("#{name}_cpu_time", cpu_time) + Transaction.current.increment("#{name}_call_count", 1) retval end diff --git a/spec/lib/gitlab/metrics_spec.rb b/spec/lib/gitlab/metrics_spec.rb index edefec909c9..a3b68455260 100644 --- a/spec/lib/gitlab/metrics_spec.rb +++ b/spec/lib/gitlab/metrics_spec.rb @@ -85,6 +85,9 @@ describe Gitlab::Metrics do expect(transaction).to receive(:increment). with('foo_cpu_time', a_kind_of(Numeric)) + expect(transaction).to receive(:increment). + with('foo_call_count', 1) + Gitlab::Metrics.measure(:foo) { 10 } end |