Module: Trifle::Stats

Defined in:
lib/trifle/stats.rb,
lib/trifle/stats/buffer.rb,
lib/trifle/stats/series.rb,
lib/trifle/stats/version.rb,
lib/trifle/stats/nocturnal.rb,
lib/trifle/stats/driver/mongo.rb,
lib/trifle/stats/driver/mysql.rb,
lib/trifle/stats/driver/redis.rb,
lib/trifle/stats/configuration.rb,
lib/trifle/stats/driver/sqlite.rb,
lib/trifle/stats/mixins/packer.rb,
lib/trifle/stats/nocturnal/key.rb,
lib/trifle/stats/aggregator/max.rb,
lib/trifle/stats/aggregator/min.rb,
lib/trifle/stats/aggregator/sum.rb,
lib/trifle/stats/driver/process.rb,
lib/trifle/stats/aggregator/mean.rb,
lib/trifle/stats/driver/postgres.rb,
lib/trifle/stats/nocturnal/parser.rb,
lib/trifle/stats/designator/custom.rb,
lib/trifle/stats/designator/linear.rb,
lib/trifle/stats/formatter/category.rb,
lib/trifle/stats/formatter/timeline.rb,
lib/trifle/stats/designator/geometric.rb,
lib/trifle/stats/formatter/path_utils.rb,
lib/trifle/stats/operations/status/beam.rb,
lib/trifle/stats/operations/status/scan.rb,
lib/trifle/stats/transponder/expression.rb,
lib/trifle/stats/operations/timeseries/set.rb,
lib/trifle/stats/operations/timeseries/values.rb,
lib/trifle/stats/transponder/expression_engine.rb,
lib/trifle/stats/operations/timeseries/increment.rb

Defined Under Namespace

Modules: BufferRegistry, Driver, Mixins, Operations Classes: Aggregator, Buffer, BufferQueue, Configuration, Designator, DriverNotFound, Error, Formatter, Nocturnal, Series, Transponder

Constant Summary collapse

VERSION =
'2.5.0'

Class Method Summary collapse

Class Method Details

.assert(key:, at:, values:, config: nil, untracked: false) ⇒ Object



60
61
62
63
64
65
66
67
68
# File 'lib/trifle/stats.rb', line 60

def self.assert(key:, at:, values:, config: nil, untracked: false)
  Trifle::Stats::Operations::Timeseries::Set.new(
    key: key,
    at: at,
    values: values,
    config: config,
    untracked: untracked
  ).perform
end

.beam(key:, at:, values:, config: nil) ⇒ Object



85
86
87
88
89
90
91
92
# File 'lib/trifle/stats.rb', line 85

def self.beam(key:, at:, values:, config: nil)
  Trifle::Stats::Operations::Status::Beam.new(
    key: key,
    at: at,
    values: values,
    config: config
  ).perform
end

.configure {|default| ... } ⇒ Object

Yields:



44
45
46
47
48
# File 'lib/trifle/stats.rb', line 44

def self.configure
  yield(default)

  default
end

.defaultObject



40
41
42
# File 'lib/trifle/stats.rb', line 40

def self.default
  @default ||= Configuration.new
end

.scan(key:, config: nil) ⇒ Object



94
95
96
97
98
99
# File 'lib/trifle/stats.rb', line 94

def self.scan(key:, config: nil)
  Trifle::Stats::Operations::Status::Scan.new(
    key: key,
    config: config
  ).perform
end

.series(**params) ⇒ Object



81
82
83
# File 'lib/trifle/stats.rb', line 81

def self.series(**params)
  Trifle::Stats::Series.new(values(**params))
end

.track(key:, at:, values:, config: nil, untracked: false) ⇒ Object



50
51
52
53
54
55
56
57
58
# File 'lib/trifle/stats.rb', line 50

def self.track(key:, at:, values:, config: nil, untracked: false)
  Trifle::Stats::Operations::Timeseries::Increment.new(
    key: key,
    at: at,
    values: values,
    config: config,
    untracked: untracked
  ).perform
end

.values(key:, from:, to:, granularity:, skip_blanks: false, config: nil) ⇒ Object

rubocop:disable Metrics/ParameterLists



70
71
72
73
74
75
76
77
78
79
# File 'lib/trifle/stats.rb', line 70

def self.values(key:, from:, to:, granularity:, skip_blanks: false, config: nil) # rubocop:disable Metrics/ParameterLists
  Trifle::Stats::Operations::Timeseries::Values.new(
    key: key,
    from: from,
    to: to,
    granularity: granularity,
    skip_blanks: skip_blanks,
    config: config
  ).perform
end