BoxLang 🚀 A New JVM Dynamic Language Learn More...
Apache License, Version 2.0.
Via CommandBox: install cbelasticsearch
The elasticsearch module for the Coldbox Platform provides you with a fluent search interface for Elasticsearch, in addition to a CacheBox Cache provider and a Logbox Appender. Both the cache provider and logbox appender rely on Wirebox DSL mappings to the Elasticsearch client. As such additional Wirebox configuration is necessary to use them outside of the Coldbox context.
Note: Most of the REST-based methods will work on Elasticsearch versions older than v5.0. A notable exception is the multi-delete methods, which use the delete by query functionality of ES5. As such, Cachebox and Logbox functionality would be limited.
Read the full documentation for the module and its capabilites at cbelasticsearch.ortusbooks.com
Copyright Since 2005 ColdBox Framework by Luis Majano and Ortus Solutions, Corp www.coldbox.org | www.luismajano.com | www.ortussolutions.com
Because of His grace, this project exists. If you don't like this, then don't read it, its not for you.
"...but we glory in tribulations also: knowing that tribulation worketh patience; And patience, experience; and experience, hope: And hope maketh not ashamed; because the love of God is shed abroad in our hearts by the Holy Ghost which is given unto us. ." Romans 5:5
"I am the way, and the truth, and the life; no one comes to the Father, but by me (JESUS)" Jn 14:1-12
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
ensureNativeStruct and newHashMap removed from models.util.UtilonLogstashEntryCreate interception point, to allow influencing and additions to final log objectmode argument to client saveAll method to allow for a create mode to be used for data streamsfield argument to getMappings client method, which allows for wildcard search and filtering of mappings ( e.g. (GET) /logs-coldobx-*/_mapping/*application )labels property to Logstash Appender properties to allow for custom labelslabels convention to Logstash Appender UserInfo UDF to allow keyword label filteringAppenderService object which allows for easier creation of detached appenders and index-specific loggingElasticsearch server responded with [504 Gateway Timeout]. The response received was not JSON..addRuntimeMapping() method for mapping runtime fields at search timereason key.asyncTimeout setting with default of 5000mstext to ensure search scoring abilityasync property to LogstashAppenderindexTemplatePriority property to logstash appender to prevent conflicts with multiple log streams sharing the same stream patterndeleteById()getTermVectors to SearchBuilder and Client to allow for fetching term vectors on document field(s)startRows/maxRows properties due to compat issues with existing appsgetTermsEnum to client to allow for fetching autocompletion terms and picklistsset method to SearchBuilder to allow for ad-hoc body parametersfilterRange method to allow compatibility when used with filterTerms and filterTermstartRows/maxRows properties in search builder to from/size to better match ES query syntax. Adds custom setStartRows and setMaxRows methods which pass through.refreshIndex method to the client to perform full refreshes of index dataformatToPainless utility script in the Util component to remove whitespace from painless scriptsgetIndexStats method to client for more informational stats on indexesthrowOnError property to logstash appender to allow transmission errors to ES to fail quietlygetAliases now supports multiple indexes with the same alias and returns the attributes to determine r/w capabilitiesgetSettings method to retreive settings for a server or for an indexgetMappings method to retreive mappings for an indexget methodfilterRange method to SearchBuilderIndexBuilder delete methodSearchBuilder sort methodLogstashAppender.cfccfmigrations migration manager ( models.migrations.Manager )patch method to client to allow for partial document updatesdeleteById method to client to prevent overhead of Document-based deletions when identifier and index are knownpatch method to IndexBuilder.cfc which provides a more intuitive API for partial updates to indices and settingsprocessBulkOperation method for performing bulk operations with multiple actionsfilterTerms query DSL generationcollapseToFields method to the search builder to support documents grouped on a specific field.filterTerm and filterTerms and pass multiple values to filtertype keywildcard method to Search builder for wildcard searches on keyword-mapped fieldsdeleteMapping method in the main client, as it is no longer supported in ES versions 6.5 and up.cbelasticsearch-jest module.cbElasticsearchPreSave and cbElasticsearchPostSave interceptions when saving individual or bulk documentsmyDocument.setPipeline( 'my-pipeline' ) )myDocument.addParam( 'refresh', true ) )client.saveAll( documents, false, { "refresh" : true } ) )suggestTerm, suggestPhrase, and suggestCompletion for auto-completion and auto-suggestion queriesfilterTerm and filterTerms to return the builder instance ( Issue #43 )setValue method to return instance, for method chaining ( Issue #40 )reindex methodparam( name, value ) supporting method to the SearchBuilderwhile( !task.isComplete() ) )deleteByQuery and updateByQuery to return the full API response which may be inspected or used to follow-up on tasksgetAllTasks() method in the client, which will return an array of Task objectsgetTask method in the client to retreive tasks by identifier ( e.g. - [node]:[id] ).getIndices method in the client to retreive a map of indices with statsgetAliases method in the client to retreive a map of aliasesreindex() method in the client which allows the ability to reindexmustExist and mustNotExist methods to the SearchBuilderterm and filterTerms SearchBuilder methods to allow for more precise filteringfilterTerm method which allows restriction of the search contexttype and minimum_should_match parameters to multiMatch method in SearchBuildershould or filter clauses_source excludes and includes in a queryreadTimeout and connectionTimeout settingsdefaultCredentials settingfilterTerms() method to allow an array of term restrictions to the result set
$
box install cbelasticsearch