示例#1
0
 public MetricsLogger(IDBProvider dbProvider)
 {
     _provider      = dbProvider;
     _writeApi      = dbProvider.GetWriteApi();
     _writeApiAsync = dbProvider.GetWriteApiAsync();
     _tasks         = new List <Task>();
 }
    public DefaultContext(IInfluxDBConfigurationProvider configurationProvider)
    {
        _configurationProvider = configurationProvider;

        var connectionString = configurationProvider.GetConnectionString(this.GetType().Name)
                               ?? throw new MissingConnectionStringException($"Unable to find connection string: {this.GetType().Name}");

        WriteApi = InfluxDBClientFactory.Create(connectionString).GetWriteApiAsync();
    }
示例#3
0
        public async Task WriteAll(IEnumerable <TModel> model, DataSourceIdentification dataSourceIdentification)
        {
            if (model is null)
            {
                throw new ArgumentException(ParameterErrorMessage, nameof(model));
            }

            if (dataSourceIdentification is null)
            {
                throw new ArgumentException(ParameterErrorMessage, nameof(dataSourceIdentification));
            }

            WriteApiAsync writeContext = this.context.Client.GetWriteApiAsync();
            await writeContext.WriteMeasurementsAsync(dataSourceIdentification.Bucket, dataSourceIdentification.Organization, WritePrecision.Ns, model).ConfigureAwait(false);
        }
示例#4
0
 public InfluxWriter(IInfluxDbConnection connection)
 {
     _writeApiAsync = connection.Client.GetWriteApiAsync();
 }