Redis Date Clean
This Module is plugin for sdb-schedule, use auto clean redis data. sdb-schedule has APP sdb-schedule-ui. You can download it download。
- support regex
- support ZSET,LIST clean
Install
step 1: install module
Using npm:
$ npm install scp-cleanRedis
step 2: config in sdb-schedule
- Add Job, set Fun parame "scp-cleanRedis".
Changelog
0.1.3
Add Hash key clean. Del hash's filed by check the field's value.
0.0.2
Fix bug,only run once.
0.0.1
Implement it.
Config
Config file is json:
"redis": "host":"127.0.0.1""port":6379 "keys": "name":"<descript info>" "type":"<zset|list|key|hash>" "match":"<redis keys synctax>" "action": "style" : "<rank|score|rem|trim>" // rank|score for ZSET;rem|trim for LIST "min" : "<js expression>" "max" : "<js expression>" "count" : "<js expression>" // optional ,FOR LIST rem "value" : "<js expression>" // optional ,FOR LIST rem "expire":36000 // optional, for key type "regex":"<regex>" "attr": "matchType":"<int|string|dateStamp>" "min" : "<val0 | js expression>" "max" : "[val0 | js expression]" ;
redis
Set redis Server Infomation:
- host, redis Server IP
- port, redis Server Port
keys
Array,clean redis key config。
- name, descript info
- type, clean type
- zset, clear ZSET
- list,clear LIST
- key,clear redis key, set expire implement remove this key
- hash,clear redis hash data's field, call hdel do it
- match, find the matched redis key, see redis keys synctax
- action, operation
- style, operation method, support ( rank|score|rem|trim )。
- rank, it's valid when type is ZSET , call zremrangebyrank
- score,it's valid when type is ZSET , call zremrangebyscore
- rem, it's valid when type is LIST , call lrem
- trim, it's valid when type is LIST , call ltrim
- min,js expression, the min value, use for ZSET and LIST's trim
- max,js expression, the max value, use for ZSET and LIST's trim
- count,js expression, the clean count, use for LIST's rem
- value,js expression, the clean value, use for LIST's rem
- expire, number( second ),it's valid when type is key, set key's expire
- regex, the key's regex,support sub match
- attr, sub match attribute
- matchType, match type, support int,string,dateStramp
- min, min Value
- max, max value
- matchType, match type, support int,string,dateStramp
- style, operation method, support ( rank|score|rem|trim )。
Below is the configuration of detailed examples:
"redis": "host":"127.0.0.1""port":6379 "keys": "name":"清理zset类型" "type":"zset" "match":"*:Pool:his" "action": "style" : "score" "min" : "'-inf'" "max" : "parseInt((new Date()).valueOf()/1000) - 86400 * 30" "regex":"([0-9]{8}):*" "attr": "matchType":"string" "min" : "50901800" "max" : "" "name":"清理 List" "type":"list" "match":"brnn:winls" "action": "style":"trim" "min" : 0 "max" : 3 "name":"清理Hash" "type":"hash" "match":"*:recy" "action": "regex":"([0-9]{8})" "attr": "matchType":"dateStamp" "min":"0" "max":"(new Date()).valueOf() - 86400000 * 30" "name":"清理key" "type":"key" "match":"rcard:20??????:*:*" "action": "expire":36000 "regex":"([0-9]{8}):([0-9]{1,}):([0-9]{1,})" "attr": "matchType":"dateStamp" "min" : "0" "max" : "(new Date()).valueOf() - 86400 * 30000" "matchType":"int" "min" : "0" "max" : "3" "matchType":"string" "min" : "5" "max" : "" ;
Copyright and license
Copyright 2016+ shudingbo
Licensed under the [MIT License].