我的索引格式为

xxx-xxx-xxx-2019.06.27
xxx-xxxx-2019.06.27

脚本思路:

获取目前 es上所有索引,以日期进行拆分,然后用索引时间对比一个月前的日期,日期小于一个月的直接删除

#!/bin/bash
# Remove the index of one month old in elasticserch
CMD_ECHO='echo'
SCRIPT_NAME=`basename $`
LOG_PRINT="eval $CMD_ECHO \"[$SCRIPT_NAME]\" @$(date +"%Y%m%d %T") [INFO] :"
time_ago=
es_cluster_ip=127.0.0.1
function delete_index(){
comp_date=`date -d "${time_ago} day ago" +"%Y-%m-%d"`
date1="${1} 00:00:00"
date2="${comp_date} 00:00:00"
index_date=`date -d "${date1}" +%s`
limit_date=`date -d "${date2}" +%s` if [ $index_date -le $limit_date ];then
$LOG_PRINT "$1 will perform the delete task earlier than ${time_ago} days ago" >> tmp.txt
del_date=`echo $ | awk -F "-" '{print $1"."$2"."$3}'`
curl -XDELETE http://${es_cluster_ip}:9200/*$del_date >> tmp.txt
fi } # get the date in all index
curl -XGET http://${es_cluster_ip}:9200/_cat/indices|awk -F " " '{print $3}' | egrep "[0-9]*\.[0-9]*\.[0-9]*" |awk -F "-" '{print $NF}' | awk -F "." '{print $((NF-2))"-"$((NF-1))"-"$NF}' | sort | uniq | while read LINE do
delete_index ${LINE}
done

删除elasticsearch 30天前的所有索引的更多相关文章

  1. 定时删除10天前的Es索引

    说明 主要用在索引名为 xxxx-yyyy.MM.dd 这种,可以自定义修改下边的脚本 删除索引shell 创建 delete_es_indices_over_10_day.sh #!/bin/bas ...

  2. linux自动删除30天前的日志文件

    linux应用总结: 自动删除n天前的日志文件: . 使用的命令格式如下: find 对应目录 -mtime +天数 -name "文件名" -exec -rm -rf -name ...

  3. Linux实现定时备份MySQL数据库并删除30天前的备份文件

    1. MySQL5.6以上版本 2. 修改 /etc/my.cnf 文件 # vim /etc/my.cnf [client] host=localhost user=你的数据库用户 password ...

  4. Windows环境下Oracle数据库的自动备份脚本自动删除30天前的备份

    @echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本 echo ...

  5. Elasticsearch从入门到放弃:索引基本使用方法

    前文我们提到,Elasticsearch的数据都存储在索引中,也就是说,索引相当于是MySQL中的数据库.是最基础的概念.今天分享的也是关于索引的一些常用的操作. 创建索引 curl -X PUT & ...

  6. 自动删除超过30天文件的vbs脚本【转发】

    利用代码制作自动删除超过30天的文件及文件夹的vbs脚本,定期清理文件夹中长时间无用文件. 1.首先在新建一个文本文档,粘贴代码(代码可通过添加微信公众号vbs_edit(VBS脚本之家)回复018获 ...

  7. elasticsearch java和_head插件对索引文档的增删改查

    利用head插件: 1,创建索引并添加一条数据(yananindex:索引名称,yanantype:索引类型,1:索引id) 2.修改索引数据(索引id1不变,_version是对该索引数据执行了几次 ...

  8. ELK学习总结(4-1)elasticsearch更改mapping(不停服务重建索引)

    elasticsearch更改mapping(不停服务重建索引)原文 http://donlianli.iteye.com/blog/1924721Elasticsearch的mapping一旦创建, ...

  9. ElasticSearch入门 第三篇:索引

    这是ElasticSearch 2.4 版本系列的第三篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...

随机推荐

  1. DevExpress.XtraEditors.Repository.RepositoryItem.CreateDesigner()

    未将对象引用设置到对象的实例.              此错误的实例(1)   1.   隐藏调用堆栈  在 DevExpress.XtraEditors.Repository.Repository ...

  2. Note_3.31

    2019/4/1 奇奇怪怪的笔记 整理了一些之前没有写过的东西,把它们拼在一起,并没有什么逻辑可言qwq FWT快速沃尔什变换 \[ FWT(A)=merge(FWT(A0),FWT(A0+A1)) ...

  3. eureka中显示有服务但是通过ribbon调用显示No instances available for service-hello的问题

    一,问题 采取eureka集群.客户端通过Ribbon调用服务,Ribbon端报下列异常 ? 1 2 3 4 5 6 7 java.net.UnknownHostException: SERVICE- ...

  4. Vs2017添加.NET Standard项目出现黄色未引用的SDK

    项目打开文件夹位置,按住shift键,执行dotnet restore命令

  5. 一分钟理解什么是REST和RESTful

    从事web开发工作有一小段时间,REST风格的接口,这样的词汇总是出现在耳边,然后又没有完全的理解,您是不是有和我相同的疑问呢?那我们一起来一探究竟吧! 就是用URL定位资源,用HTTP描述操作. 知 ...

  6. Note for Reidentification by Relative Distance Comparison

    link Reidentification by Relative Distance Comparison Challenge: large visual appearance changes cau ...

  7. hbuilderx - 常用快捷键操作

    常用的操作有(缺少一个快捷键,就是选中行) 1. ctrl+/ 注释代码 2. ctrl+y 恢复撤销 3. ctrl+x 剪切 4. ctrl+z 撤销 5. ctrl+c 复制 6. ctrl+p ...

  8. git 相关流程和报错解决

    git 相关流程: 预先配置: gitroot $ git config user.name XXXgitroot $ git config user.email XXX@XXX.com git re ...

  9. mysql判断表字段或索引是否存在,然后修改

    判断字段是否存在: DROP PROCEDURE IF EXISTS schema_change; DELIMITER // CREATE PROCEDURE schema_change() BEGI ...

  10. Loadrunner查询博客列表并循环删除博客列表中的所有博客

    Loadrunner查询博客列表并循环删除博客列表中的所有博客,在博客列表请求中使用关联,获取出列表中博客的数量,并找出博客列表请求的必要参数.关联使用Ordinal=All 找出所有匹配值 查找出所 ...