Решение: используйте момент для получения оставшихся миллисекунд до последнего дня месяца, затем передайте его в секундах (миллисекунды / 1000) и с помощью клиента redis назначьте ключу срок действия.
...
let dateTo = moment().endOf('month').valueOf();
let expire = parseInt(dateTo/1000);
client.expireat('redisKeys', expire);
client.exec(function (_error, _result) {
if (_error) {
return cb(_error);
}
return cb(null, "done!");
});
...
затем из redis-cli вы можете проконсультироваться с командой TTL :
redis_6379:0>TTL redisKey
21882
и в результате вы получите число, представляющее оставшееся время жизни этого ключа в секундах.