コード例 #1
0
        public void BatchRecordsAreSaved_Be10()
        {
            var settings = new ConnectionSettings(new Uri(JsonConvert.DeserializeObject <Config>(File.ReadAllText(Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.Parent.FullName, "es.json"))).ElasticSearchUrl));

            settings.DefaultIndex("elasticseriestest");

            using var client = new SeriesClient(settings);

            var gauge = client.CreateMetricGauge("test");

            gauge.Record(400);
            gauge.Record(300);
            gauge.Record(420);
            gauge.Record(410);
            gauge.Record(200);
            gauge.Record(324);
            gauge.Record(542);
            gauge.Record(401);
            gauge.Record(434);
            gauge.Record(290);

            var ids = gauge.FlushBatch();

            ids.Count().Should().Be(10);
        }
コード例 #2
0
        public async Task BatchIsNotSavedWhenBatchIsNotFullAsync_BeEmpty()
        {
            var settings = new ConnectionSettings(new Uri(JsonConvert.DeserializeObject <Config>(File.ReadAllText(Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.Parent.FullName, "es.json"))).ElasticSearchUrl));

            settings.DefaultIndex("elasticseriestest");

            await using var client = new SeriesClient(settings);

            var gauge = client.CreateMetricGauge("test", 20);
            await gauge.RecordAsync(400);

            await gauge.RecordAsync(300);

            await gauge.RecordAsync(420);

            await gauge.RecordAsync(410);

            await gauge.RecordAsync(200);

            await gauge.RecordAsync(324);

            await gauge.RecordAsync(542);

            await gauge.RecordAsync(401);

            await gauge.RecordAsync(434);

            await gauge.RecordAsync(290);

            var save = await gauge.RecordAsync(290);

            save.Should().BeEmpty();
        }
コード例 #3
0
        public async Task RecordsAreSavedWhenForcePushedAsync_NotBeNull()
        {
            var settings = new ConnectionSettings(new Uri(JsonConvert.DeserializeObject <Config>(File.ReadAllText(Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.Parent.FullName, "es.json"))).ElasticSearchUrl));

            settings.DefaultIndex("elasticseriestest");

            using var client = new SeriesClient(settings);

            var id = await client.CreateMetricGauge("test").RecordAsync(400, forcePush: true);

            id.Should().NotBeNull();
        }
コード例 #4
0
        public async Task CallingDisposeWhenBatchIsEmptyDoesntErrorAsync_NotThrow()
        {
            var settings = new ConnectionSettings(new Uri(JsonConvert.DeserializeObject <Config>(File.ReadAllText(Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.Parent.FullName, "es.json"))).ElasticSearchUrl));

            settings.DefaultIndex("elasticseriestest");

            Func <Task> act = async() =>
            {
                await using (var client = new SeriesClient(settings))
                {
                    client.CreateMetricGauge("test", 20);
                }
            };
            await act.Should().NotThrowAsync <ArgumentException>();
        }
コード例 #5
0
        public async Task DisposeAsyncFlushesBatch_Be0()
        {
            var settings = new ConnectionSettings(new Uri(JsonConvert.DeserializeObject <Config>(File.ReadAllText(Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.Parent.FullName, "es.json"))).ElasticSearchUrl));

            settings.DefaultIndex("elasticseriestest");

            await using var client = new SeriesClient(settings);

            var gauge = client.CreateMetricGauge("test", 20);

            await gauge.RecordAsync(400);

            await gauge.RecordAsync(300);

            await gauge.DisposeAsync();

            gauge.GetCurrentBatchCount().Should().Be(0);
        }
コード例 #6
0
        public async Task ForcePushOnlyCommitsPassedDataAsync_NotBeNull()
        {
            var settings = new ConnectionSettings(new Uri(JsonConvert.DeserializeObject <Config>(File.ReadAllText(Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.Parent.FullName, "es.json"))).ElasticSearchUrl));

            settings.DefaultIndex("elasticseriestest");

            using var client = new SeriesClient(settings);

            var gauge = client.CreateMetricGauge("test");
            await gauge.RecordAsync(400);

            var id = await gauge.RecordAsync(410, forcePush : true);

            using (var scope = new AssertionScope())
            {
                id.Should().NotBeNull();
                gauge.GetCurrentBatchCount().Should().Be(1);
            }
        }