redis.py 1.08 KB
Newer Older
BO ZHANG's avatar
BO ZHANG committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import redis
import toml
import os

redis_config_path = os.path.join(os.path.dirname(__file__), "redis_config.toml")

REDIS_CONFIG = toml.load(redis_config_path)
REDIS_QNAME = "csst_data_list"


class Redis(redis.Redis):
    def __init__(self, **kwargs):
        super().__init__(**kwargs)
        self.name = REDIS_QNAME

    def push(self, msg):
        self.lpush(self.name, msg)

    def pop(self):
        return self.rpop(self.name)

    def get_all(self):
        return self.lrange(self.name, 0, -1)


def get_redis(location="naoc"):
    print("Available redis locations: ", list(REDIS_CONFIG.keys()))
    if location not in REDIS_CONFIG.keys():
        raise ValueError(f"Unknown redis location: {location}")
    return Redis(**REDIS_CONFIG[location])


# msgs = r.lrange(name, 0, -1)
#
# for chipid in range(6, 26):
#     this_msg = gen_msg(
#         dag_id="csst-msc-l1-mbi", obsid="11009101682009", chipid=f"{chipid:02d}"
#     )
#     print(this_msg)
#     r.lpush(name, this_msg)
#
# msgs = r.lrange(name, 0, -1)
# print(msgs)
#
#
# msgs_later = r.lrange(name, 0, -1)
# print(msgs_later)