public PointData ToPointModel(InfluxDBDataModel model) { if (!model.Tags.Any()) { throw new InvalidInfluxDBDataModelException("Tags were not given."); } if (!model.Fields.Any()) { throw new InvalidInfluxDBDataModelException("Fields were not given"); } if (string.IsNullOrEmpty(model.Measurement)) { throw new InvalidInfluxDBDataModelException("Measurement not given"); } var point = PointData.Measurement(model.Measurement); foreach (var item in model.Tags) { point = point.Tag(item.Key, item.Value); } foreach (var item in model.Fields) { point = FieldCleaner(point, item.Key, item.Value); } if (model.Timestamp != 0) { point = point.Timestamp(model.Timestamp, WritePrecision.S); } return(point); }
public async Task Test() { var test = new InfluxDBDataModel("temperature"); test.Tags.Add("hostname", "test"); test.Fields.Add("value", 40.3D); await Context.WritePointAsync(test, "temperature", "Inter"); }
public async Task WritePointAsync(InfluxDBDataModel model, string bucket, string org_id) { model.Timestamp = DateTimeOffset.UtcNow.ToUnixTimeSeconds(); var point = ToPointModel(model); await WriteApi.WritePointAsync(bucket, org_id, point); }