private void CheckDatabaseSettings(string connectionSettings) { var connectionParams = ClickHouseHelpers.GetConnectionParams(connectionSettings); var databaseParam = connectionParams.FirstOrDefault(e => e.Key.ToUpper() == "DATABASE"); _databaseName = databaseParam.Value; ClickHouseHelpers.CreateDatabaseIfNotExist(connectionSettings); }
private void ExportToClickHouse(EventLogExportSettings eventLogSettings) { Console.WriteLine(_settings.ConnectionString); ClickHouseHelpers.DropDatabaseIfExist(_settings.ConnectionString); EventLogOnClickHouse target = new EventLogOnClickHouse(_settings.ConnectionString, eventLogSettings.Portion); target.SetInformationSystem(new InformationSystemsBase() { Name = eventLogSettings.InforamtionSystemName, Description = eventLogSettings.InforamtionSystemDescription }); ExportHelper.ExportToTargetStorage(eventLogSettings, target); long rowsInDB; using (var connection = new ClickHouseConnection(_settings.ConnectionString)) { connection.Open(); using (var cmd = connection.CreateCommand()) { cmd.CommandText = @"SELECT COUNT(*) CNT FROM RowsData rd WHERE InformationSystem = {InformationSystem:String}"; cmd.Parameters.Add(new ClickHouseDbParameter { ParameterName = "InformationSystem", Value = eventLogSettings.InforamtionSystemName }); using (var cmdReader = cmd.ExecuteReader()) { if (cmdReader.Read()) { rowsInDB = Convert.ToInt64(cmdReader.GetValue(0)); } else { rowsInDB = 0; } } } } long rowsInSourceFiles; using (EventLogReader reader = EventLogReader.CreateReader(eventLogSettings.EventLogPath)) rowsInSourceFiles = reader.Count(); Assert.NotEqual(0, rowsInSourceFiles); Assert.NotEqual(0, rowsInDB); Assert.Equal(rowsInSourceFiles, rowsInDB); }
public ClickHouseContext(string connectionSettings) { ClickHouseHelpers.CreateDatabaseIfNotExist(connectionSettings); _connection = new ClickHouseConnection(connectionSettings); _connection.Open(); var cmdDDL = _connection.CreateCommand(); cmdDDL.CommandText = Resources.Query_CreateTable_XEventData; cmdDDL.ExecuteNonQuery(); cmdDDL.CommandText = Resources.Query_CreateTable_LogFiles; cmdDDL.ExecuteNonQuery(); }
private void CheckDatabaseSettings(string connectionSettings) { ClickHouseHelpers.CreateDatabaseIfNotExist(connectionSettings); }