Examples¶
Each of these examples presupposes that the requisite modules have been imported and an instance of the Elasticsearch client object has been created:
import elasticsearch
import curator
client = elasticsearch.Elasticsearch()
Filter indices by prefix¶
ilo = curator.IndexList(client)
ilo.filter_by_regex(kind='prefix', value='logstash-')
The contents of ilo.indices would then only be indices matching the prefix.
Filter indices by suffix¶
ilo = curator.IndexList(client)
ilo.filter_by_regex(kind='suffix', value='-prod')
The contents of ilo.indices would then only be indices matching the suffix.
Filter indices by age (name)¶
This example will match indices with the following criteria:
Have a date string of
%Y.%m.%d
Use days as the unit of time measurement
Filter indices older than 5 days
ilo = curator.IndexList(client)
ilo.filter_by_age(source='name', direction='older', timestring='%Y.%m.%d',
unit='days', unit_count=5
)
The contents of ilo.indices would then only be indices matching these criteria.
Filter indices by age (creation_date)¶
This example will match indices with the following criteria:
Use months as the unit of time measurement
Filter indices where the index creation date is older than 2 months from this moment.
ilo = curator.IndexList(client)
ilo.filter_by_age(source='creation_date', direction='older',
unit='months', unit_count=2
)
The contents of ilo.indices would then only be indices matching these criteria.
Filter indices by age (field_stats)¶
This example will match indices with the following criteria:
Use days as the unit of time measurement
Filter indices where the timestamp field’s min_value is a date older than 3 weeks from this moment.
ilo = curator.IndexList(client)
ilo.filter_by_age(source='field_stats', direction='older',
unit='weeks', unit_count=3, field='timestamp', stats_result='min_value'
)
The contents of ilo.indices would then only be indices matching these criteria.