public async Task WritePoints() { var bucketName = _bucket.Name; var time = DateTime.UtcNow; var point1 = PointData .Measurement("h2o_feet") .Tag("location", "west") .Field("water_level", 1) .Timestamp(time, WritePrecision.S); var point2 = PointData .Measurement("h2o_feet").Tag("location", "west") .Field("water_level", 2) .Timestamp(time.AddSeconds(-10), WritePrecision.S); _writeApi = Client.GetWriteApi(); var listener = new WriteApiTest.EventListener(_writeApi); _writeApi.WritePoints(bucketName, _organization.Id, point1, point2); _writeApi.Flush(); listener.WaitToSuccess(); var query = await _queryApi.QueryAsync( $"from(bucket:\"{bucketName}\") |> range(start: 1970-01-01T00:00:00.000000001Z)", _organization.Id); Assert.AreEqual(1, query.Count); var records = query[0].Records; Assert.AreEqual(2, records.Count); Assert.AreEqual("h2o_feet", records[0].GetMeasurement()); Assert.AreEqual(2, records[0].GetValue()); Assert.AreEqual("water_level", records[0].GetField()); Assert.AreEqual("h2o_feet", records[1].GetMeasurement()); Assert.AreEqual(1, records[1].GetValue()); Assert.AreEqual("water_level", records[1].GetField()); Assert.AreEqual(time.AddTicks(-(time.Ticks % TimeSpan.TicksPerSecond)).Add(-TimeSpan.FromSeconds(10)), records[0].GetTimeInDateTime()); Assert.AreEqual(time.AddTicks(-(time.Ticks % TimeSpan.TicksPerSecond)), records[1].GetTimeInDateTime()); }
public override Task ProcesLogEntriesAsync(IEnumerable <LogEntry> logEntries) { Initialize(); List <PointData> points = logEntries .AsParallel() .Select(x => _pointFactory.CreatePoint(x)) .Where(x => x != null) .ToList(); if (points.Any()) { _writeApi.WritePoints(points); } return(Task.CompletedTask); }
private Task SendDataPoints(IList <PointData> points) { _api.WritePoints(points.ToArray()); return(Task.CompletedTask); }