- Painless Scripting Language: other versions:
- Getting Started with Painless
- Painless Language Specification
- Painless contexts
- Context examples
- Ingest processor context
- Update context
- Update by query context
- Reindex context
- Sort context
- Similarity context
- Weight context
- Score context
- Field context
- Filter context
- Minimum should match context
- Metric aggregation initialization context
- Metric aggregation map context
- Metric aggregation combine context
- Metric aggregation reduce context
- Bucket script aggregation context
- Bucket selector aggregation context
- Analysis Predicate Context
- Watcher condition context
- Watcher transform context
- Painless API Reference
IMPORTANT: No additional bug fixes or documentation updates
will be released for this version. For the latest information, see the
current release documentation.
Getting Started with Painless
editGetting Started with Painless
editPainless is a simple, secure scripting language designed specifically for use with Elasticsearch. It is the default scripting language for Elasticsearch and can safely be used for inline and stored scripts. For a detailed description of the Painless syntax and language features, see the Painless Language Specification.
You can use Painless anywhere scripts can be used in Elasticsearch. Painless provides:
- Fast performance: Painless scripts run several times faster than the alternatives.
- Safety: Fine-grained whitelist with method call/field granularity. See the Painless API Reference for a complete list of available classes and methods.
-
Optional typing: Variables and parameters can use explicit types or the
dynamic
def
type. - Syntax: Extends Java’s syntax to provide Groovy-style scripting language features that make scripts easier to write.
- Optimizations: Designed specifically for Elasticsearch scripting.
Was this helpful?
Thank you for your feedback.