public void VerifySerialization(ISpanSerializer serializer, byte[] expectedOutput, IEnumerable <Span> inputSpans,
                                        SerializationVerifier verifier)
        {
            var stream = new MemoryStream();

            serializer.Serialize(stream, inputSpans);
            var actualOutput = stream.ToArray();

            stream.Flush();
            stream.Dispose();
            verifier(actualOutput, expectedOutput);
        }
예제 #2
0
        public ZipkinTracer(IZipkinSender sender, ISpanSerializer spanSerializer, IStatistics statistics = null)
        {
            if (sender == null)
            {
                throw new ArgumentNullException("sender", "You have to specify a non-null sender for Zipkin tracer.");
            }
            Statistics  = statistics ?? new Statistics();
            _spanSender = sender;

            if (spanSerializer == null)
            {
                throw new ArgumentNullException("spanSerializer", "You have to specify a non-null span serializer for Zipkin tracer.");
            }
            _spanSerializer = spanSerializer;

            _flushTimer = new Timer(_ => FlushOldSpans(TimeUtils.UtcNow), null, TimeToLive, TimeToLive);
        }
예제 #3
0
        internal ZipkinTracerReporter(IZipkinSender sender, ISpanSerializer spanSerializer, IStatistics statistics)
        {
            if (sender == null)
            {
                throw new ArgumentNullException(nameof(sender),
                                                "You have to specify a non-null sender.");
            }

            if (spanSerializer == null)
            {
                throw new ArgumentNullException(nameof(spanSerializer),
                                                "You have to specify a non-null span serializer.");
            }

            if (statistics == null)
            {
                throw new ArgumentNullException(nameof(statistics),
                                                "You have to specify a non-null statistics.");
            }
            _sender         = sender;
            _spanSerializer = spanSerializer;
            _statistics     = statistics;
        }
예제 #4
0
 public KafkaTransmitter(string topicName, Producer <Null, byte[]> producer, ISpanSerializer serializer)
 {
     _producer   = producer;
     _serializer = serializer;
     _topicName  = topicName;
 }
예제 #5
0
 public ZipkinTracer(IZipkinSender sender, ISpanSerializer spanSerializer, IStatistics statistics)
     : this(new ZipkinTracerReporter(sender, spanSerializer, statistics), statistics)
 {
 }
예제 #6
0
 public ZipkinTracer(IZipkinSender sender, ISpanSerializer spanSerializer)
     : this(sender, spanSerializer, new Statistics())
 {
 }
예제 #7
0
        public void ShouldThrowWithNullSerializer()
        {
            ISpanSerializer spanSerializer = null;

            Assert.Throws <ArgumentNullException>(() => { var tracer = new ZipkinTracer(Mock.Of <IZipkinSender>(), spanSerializer); });
        }
 public void VerifySerialization(ISpanSerializer serializer, byte[] expectedOutput, IEnumerable <Span> inputSpans)
 {
     VerifySerialization(serializer, expectedOutput, inputSpans, DefaultVerifier);
 }
 public void VerifySerialization(ISpanSerializer serializer, byte[] expectedOutput, Span inputSpan,
                                 SerializationVerifier verifier)
 {
     VerifySerialization(serializer, expectedOutput, new[] { inputSpan }, verifier);
 }
 public void VerifySerialization(ISpanSerializer serializer, byte[] expectedOutput, Span inputSpan)
 {
     VerifySerialization(serializer, expectedOutput, inputSpan, DefaultVerifier);
 }