public SearchRepository(IOptions<ApplicationConfiguration> o) { _optionsApplicationConfiguration = o; var uri = new Uri(_optionsApplicationConfiguration.Value.ElasticsearchConnectionString); var settings = new ConnectionSettings( uri, defaultIndex: "coolsearchengine"); settings.MapDefaultTypeIndices(d => d.Add(typeof(AlarmMessage), INDEX_ALARMMESSAGE)); settings.MapDefaultTypeNames(d => d.Add(typeof(AlarmMessage), TYPE_ALARMMESSAGE)); client = new ElasticClient(settings); }
public SearchRepository(IConfiguration configuration) { var node = new Uri(configuration.Get("Development:ElasticsearchConnectionString")); var settings = new ConnectionSettings( node, defaultIndex: "coolsearchengine"); settings.MapDefaultTypeIndices(d => d.Add(typeof(AlarmMessage), INDEX_ALARMMESSAGE)); settings.MapDefaultTypeNames(d => d.Add(typeof(AlarmMessage), TYPE_ALARMMESSAGE)); client = new ElasticClient(settings); }
/// Constructor public EsClient() { var node = new Uri(ElasticUri); _settings = new ConnectionSettings(node); _settings.SetDefaultIndex(ConfigurationManager.AppSettings["DefaultIndex"]); _settings.MapDefaultTypeNames(m => m.Add(typeof(HadoopMetaDataModels), ConfigurationManager.AppSettings["DefaultIndexType"])); Current = new ElasticClient(_settings); Current.Map<HadoopMetaDataModels>(m => m .MapFromAttributes()); }
public void ConfigureElasticClient() { //var setting = new ConnectionSettings(new Uri("http://localhost:9200/"),Constants.INDEX_PERSON); //setting.EnableTrace(); //setting.ExposeRawResponse(); //client = new ElasticClient(setting); var node = new Uri(Constants.ELASTIC_SEARCH_URI); var settings = new ConnectionSettings(node); settings.SetDefaultIndex(Constants.INDEX_PERSON); settings.MapDefaultTypeNames(m => m.Add(typeof(Person), (Constants.INDEX_PERSON))); client = new ElasticClient(settings); client.CreateIndex(ci => ci .Index(Constants.INDEX_PERSON) .AddMapping<Person>(m => m.MapFromAttributes())); }
private static IElasticClient GetElasticClient(Uri serverUri, bool deleteExistingIndexes = false) { var settings = new ConnectionSettings(serverUri).SetDefaultIndex("_all"); settings.EnableMetrics(); settings.SetJsonSerializerSettingsModifier(s => { s.ContractResolver = new EmptyCollectionElasticContractResolver(settings); s.AddModelConverters(); }); settings.MapDefaultTypeNames(m => m.Add(typeof(PersistentEvent), "events").Add(typeof(Stack), "stacks")); settings.MapDefaultTypeIndices(m => m.Add(typeof(Stack), ElasticSearchRepository<Stack>.StacksIndexName)); settings.MapDefaultTypeIndices(m => m.Add(typeof(PersistentEvent), ElasticSearchRepository<PersistentEvent>.EventsIndexName + "-*")); settings.SetDefaultPropertyNameInferrer(p => p.ToLowerUnderscoredWords()); var client = new ElasticClient(settings); ConfigureMapping(client, deleteExistingIndexes); return client; }
internal bool Update(string id,string time) { var connectionSettings = new ConnectionSettings(MainVariables.conElasticSearch); connectionSettings.SetDefaultIndex("websites"); connectionSettings.MapDefaultTypeNames(m => m.Add(typeof(websites), "list")); var elasticClient = new ElasticClient(connectionSettings); var index = elasticClient.Update<websites, object>(u => u .Id(id) .Doc(new {last_run=DateTime.Now, Scrapping_Time=time }) .RetryOnConflict(3) .Refresh() ); // var index = elasticClient.Update<websites, object>(u => u .IdFrom(obj).Doc(new { website_url = "United States" }).DocAsUpsert()); // var index = elasticClient.Index(obj); //var index= elasticClient.Update<websites, object>(u => u.Upsert(new websites { _id = "AVFX2hdEYZh0OvPHWO7l", website_url = "http://www.google.com" })); if (index.ServerError == null && index.ConnectionStatus.HttpStatusCode.Value < 203) return true; else return false; }
public List<websites> SelectAll() { List<string> idList = new List<string>(); List<websites> list = new List<websites>(); Dictionary<List<websites>, List < string >> dic = new Dictionary<List<websites>, List<string>>(); var connectionSettings = new ConnectionSettings(MainVariables.conElasticSearch); connectionSettings.SetDefaultIndex("websites"); connectionSettings.MapDefaultTypeNames(m => m.Add(typeof(websites), "list")); var elasticClient = new ElasticClient(connectionSettings); var searchResults = elasticClient.Search<websites>(q => q.From(0).Size(10000).MatchAll()); list = searchResults.Documents.ToList(); foreach(IHit<websites> hit in searchResults.Hits) { idList.Add(hit.Id); } for(int i=0;i<idList.Count;i++) { list[i]._id = idList[i]; } return list; }
public bool Delete(string id) { var connectionSettings = new ConnectionSettings(MainVariables.conElasticSearch); connectionSettings.SetDefaultIndex("websites"); connectionSettings.MapDefaultTypeNames(m => m.Add(typeof(websites), "list")); var elasticClient = new ElasticClient(connectionSettings); return elasticClient.Delete(new Nest.DeleteRequest("websites", "list", id)).Found; }