summaryrefslogtreecommitdiff
path: root/lib/gitlab/metrics/influx_db.rb
diff options
context:
space:
mode:
authorPawel Chojnacki <pawel@chojnacki.ws>2017-09-07 20:24:31 +0200
committerPawel Chojnacki <pawel@chojnacki.ws>2017-11-02 18:11:44 +0100
commit44eedb22bcb799d1c8dd7b30114f3c24ad8649a4 (patch)
tree1452946272895f08f403de8506efa0097e674997 /lib/gitlab/metrics/influx_db.rb
parentb4dbc30616db11fcfa7775f4fe1c040651f70aa0 (diff)
downloadgitlab-ce-44eedb22bcb799d1c8dd7b30114f3c24ad8649a4.tar.gz
Add info about prometheus buckets
+ fix cpu time
Diffstat (limited to 'lib/gitlab/metrics/influx_db.rb')
-rw-r--r--lib/gitlab/metrics/influx_db.rb13
1 files changed, 8 insertions, 5 deletions
diff --git a/lib/gitlab/metrics/influx_db.rb b/lib/gitlab/metrics/influx_db.rb
index adbc5397257..bdf7910b7c7 100644
--- a/lib/gitlab/metrics/influx_db.rb
+++ b/lib/gitlab/metrics/influx_db.rb
@@ -11,6 +11,8 @@ module Gitlab
settings[:enabled] || false
end
+ # Prometheus histogram buckets used for arbitrary code measurements
+ EXECUTION_MEASUREMENT_BUCKETS = [0.001, 0.002, 0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1].freeze
RAILS_ROOT = Rails.root.to_s
METRICS_ROOT = Rails.root.join('lib', 'gitlab', 'metrics').to_s
PATH_REGEX = /^#{RAILS_ROOT}\/?/
@@ -99,22 +101,23 @@ module Gitlab
cpu_stop = System.cpu_time
real_stop = Time.now.to_f
- real_time = (real_stop - real_start) * 1000.0
+ real_time = (real_stop - real_start)
cpu_time = cpu_stop - cpu_start
Gitlab::Metrics.histogram("gitlab_#{name}_real_duration_seconds".to_sym,
"Measure #{name}",
Transaction::BASE_LABELS,
- [0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 1, 2])
- .observe(trans.labels, real_time / 1000.0)
+ EXECUTION_MEASUREMENT_BUCKETS)
+ .observe(trans.labels, real_time)
Gitlab::Metrics.histogram("gitlab_#{name}_cpu_duration_seconds".to_sym,
"Measure #{name}",
Transaction::BASE_LABELS,
- [0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 1, 2])
+ EXECUTION_MEASUREMENT_BUCKETS)
.observe(trans.labels, cpu_time / 1000.0)
- trans.increment("#{name}_real_time", real_time, false)
+ # InfluxDB stores the _real_time time values as milliseconds
+ trans.increment("#{name}_real_time", real_time * 1000, false)
trans.increment("#{name}_cpu_time", cpu_time, false)
trans.increment("#{name}_call_count", 1, false)