diff --git a/lib/fnordmetric/gauge_modifiers.rb b/lib/fnordmetric/gauge_modifiers.rb index a2ed8764c..c9a8dbd4b 100644 --- a/lib/fnordmetric/gauge_modifiers.rb +++ b/lib/fnordmetric/gauge_modifiers.rb @@ -59,5 +59,18 @@ def incr_field_by(gauge, field_name, value) @redis.incrby(gauge.tick_key(time, :count), 1) end end - + + def set_value(gauge_name, value) + gauge = fetch_gauge(gauge_name) + assure_two_dimensional!(gauge) + @redis.hset(gauge.key, gauge.tick_at(time), value) + end + + def set_field(gauge_name, field_name, value) + gauge = fetch_gauge(gauge_name) + assure_three_dimensional!(gauge) + @redis.zadd(gauge.tick_key(time), value, field_name) + end + + end \ No newline at end of file diff --git a/spec/gauge_modifiers_spec.rb b/spec/gauge_modifiers_spec.rb index 0af82cdd3..f9012c07d 100644 --- a/spec/gauge_modifiers_spec.rb +++ b/spec/gauge_modifiers_spec.rb @@ -377,7 +377,6 @@ describe "set value on two/three-dim gauge" do it "should set a value on a two-dim gauge" do - pending "implement me!" gauge_key = "fnordmetrics-myns-gauge-mygauge_5463-10" @redis.hset(gauge_key, "695280200", "54") @redis.set(gauge_key+"-695280200-sessions-count", 5) @@ -396,7 +395,6 @@ it "should set a value on a two-dim gauge" do - pending "implement me!" gauge_key = "fnordmetrics-myns-gauge-mygauge_1463-10-695280200" @redis.zadd(gauge_key, 65, "asdasdkey") @redis.zscore(gauge_key, "asdasdkey").should == "65"