/// <summary> /// /// </summary> /// <param name="loggerConfiguration"></param> /// <param name="clusterName"></param> /// <param name="databaseName"></param> /// <param name="tableName"></param> /// <param name="restrictedToMinimumLevel"></param> /// <param name="batchPostingLimit"></param> /// <param name="period"></param> /// <returns></returns> /// <exception cref="ArgumentNullException"></exception> public static LoggerConfiguration RethinkDB( this LoggerSinkConfiguration loggerConfiguration, string clusterName, string databaseName = null, string tableName = null, LogEventLevel restrictedToMinimumLevel = LevelAlias.Minimum, int batchPostingLimit = RethinkDBSink.DefaultBatchPostingLimit, TimeSpan?period = null) { if (loggerConfiguration == null) { throw new ArgumentNullException("loggerConfiguration"); } if (clusterName == null) { throw new ArgumentNullException("clusterName"); } connectionFactory = ConfigurationAssembler.CreateConnectionFactory(clusterName); var rethinkDbSink = new RethinkDBSink( connectionFactory, databaseName ?? RethinkDBSink.DefaultDbName, tableName ?? RethinkDBSink.DefaultTableName, batchPostingLimit, period ?? RethinkDBSink.DefaultPeriod ); return(loggerConfiguration.Sink(rethinkDbSink, restrictedToMinimumLevel)); }
static RethinkDBClient() { //by default convert all enums to strings (or else config assembler will default to int32). RethinkDb.Newtonsoft.Configuration.ConfigurationAssembler.DefaultJsonSerializerSettings.Converters.Add(new StringEnumConverter()); DefaultConnectionCache = new AsyncLazy <IConnection>(async() => { return(await ConfigurationAssembler.CreateConnectionFactory(RethinkDBClusterName).GetAsync()); }); }
static NHasFieldsTests() { ConnectionFactory = ConfigurationAssembler.CreateConnectionFactory("testCluster"); }
static NGroupingTests() { ConnectionFactory = ConfigurationAssembler.CreateConnectionFactory("testCluster"); }
static NDatabaseTests() { ConnectionFactory = ConfigurationAssembler.CreateConnectionFactory("testCluster"); }
static NManyObjectTests() { ConnectionFactory = ConfigurationAssembler.CreateConnectionFactory("testCluster"); }
static NMultiTableTests() { ConnectionFactory = ConfigurationAssembler.CreateConnectionFactory("testCluster"); }
static NSingleObjectTest() { ConnectionFactory = ConfigurationAssembler.CreateConnectionFactory("testCluster"); }
static NNamedValueDictionaryTests() { ConnectionFactory = ConfigurationAssembler.CreateConnectionFactory("testCluster"); }
static NRealtimePushTests() { ConnectionFactory = ConfigurationAssembler.CreateConnectionFactory("testCluster"); }