public static void MessagesLargerThenAvailableBufferShouldNotBeFormatted() { var buffer = new byte[128]; var hugeBucket = new string('x', 256); var message = StatsDMessage.Gauge(128.5, hugeBucket); Formatter.TryFormat(message, 1.0, buffer, out int written).ShouldBe(false); written.ShouldBe(0); }
public static void GaugeIncrementWithTags() { var tags = new Dictionary <string, string> { ["foo"] = "bar", ["another"] = "tag" }; var message = StatsDMessage.Gauge(128, "bucket", tags, Operation.Increment); Check(message, "prefix.bucket;foo=bar;another=tag:+128|g"); }
public static void GetMaxBufferSizeCalculatesValidBufferSizes(int bucketSize, char ch) { var hugeBucket = new string(ch, bucketSize); var message = StatsDMessage.Gauge(128.5, hugeBucket); var expected = $"prefix.{hugeBucket}:128.5|g"; var buffer = new byte[Formatter.GetMaxBufferSize(message)]; Formatter.TryFormat(message, 1.0, buffer, out int written).ShouldBe(true); var actual = Encoding.UTF8.GetString(buffer.AsSpan(0, written)); actual.ShouldBe(expected); }
public void BufferBased() { Dictionary <string, string> tags = new Dictionary <string, string>(); tags.Add("key", " value"); tags.Add("key2", " value2"); FormatterBuffer.TryFormat(StatsDMessage.Gauge(255, "some.neat.bucket", null), 1, Buffer, out _); FormatterBuffer.TryFormat(StatsDMessage.Timing(255, "some.neat.bucket", null), 1, Buffer, out _); FormatterBuffer.TryFormat(StatsDMessage.Counter(255, "some.neat.bucket", null), 1, Buffer, out _); FormatterBuffer.TryFormat(StatsDMessage.Gauge(255, "some.neat.bucket", tags), 1, Buffer, out _); FormatterBuffer.TryFormat(StatsDMessage.Timing(255, "some.neat.bucket", tags), 1, Buffer, out _); FormatterBuffer.TryFormat(StatsDMessage.Counter(255, "some.neat.bucket", tags), 1, Buffer, out _); }
public void BufferBased() { FormatterBuffer.TryFormat(StatsDMessage.Gauge(255, "some.neat.bucket"), 1, Buffer, out _); FormatterBuffer.TryFormat(StatsDMessage.Timing(255, "some.neat.bucket"), 1, Buffer, out _); FormatterBuffer.TryFormat(StatsDMessage.Counter(255, "some.neat.bucket"), 1, Buffer, out _); }
public static void GaugeFloat() { var message = StatsDMessage.Gauge(128.5, "bucket"); Check(message, "prefix.bucket:128.5|g"); }
public static void GaugeIntegral() { var message = StatsDMessage.Gauge(128, "bucket"); Check(message, "prefix.bucket:128|g"); }
public static void GaugeIncrement() { var message = StatsDMessage.Gauge(128, "bucket", null, Operation.Increment); Check(message, "prefix.bucket:+128|g"); }