Ejemplo n.º 1
0
 def generate_redis_handlers(self):
     self.handlers = {}
     data_structures = self.package["data_structures"]
     generate_handlers = Generate_Handlers(self.package, self.qs)
     self.ds_handlers = {}
     self.ds_handlers[
         "EXCEPTION_VALUES"] = generate_handlers.construct_hash(
             data_structures["EXCEPTION_VALUES"])
     self.ds_handlers["ETO_VALUES"] = generate_handlers.construct_hash(
         data_structures["ETO_VALUES"])
     self.ds_handlers["RAIN_VALUES"] = generate_handlers.construct_hash(
         data_structures["RAIN_VALUES"])
     self.ds_handlers["ETO_CONTROL"] = generate_handlers.construct_hash(
         data_structures["ETO_CONTROL"])
     self.ds_handlers[
         "ETO_HISTORY"] = generate_handlers.construct_stream_writer(
             data_structures["ETO_HISTORY"])
     self.ds_handlers[
         "RAIN_HISTORY"] = generate_handlers.construct_stream_writer(
             data_structures["RAIN_HISTORY"])
     self.ds_handlers[
         "EXCEPTION_LOG"] = generate_handlers.construct_stream_writer(
             data_structures["EXCEPTION_LOG"])
     self.ds_handlers[
         "ETO_ACCUMULATION_TABLE"] = generate_handlers.construct_hash(
             data_structures["ETO_ACCUMULATION_TABLE"])
Ejemplo n.º 2
0
def construct_op_monitoring_instance(qs, site_data):

    query_list = []
    query_list = qs.add_match_relationship(query_list,
                                           relationship="SITE",
                                           label=site_data["site"])

    query_list = qs.add_match_terminal(query_list, relationship="OP_MONITOR")

    data_sets, data_sources = qs.match_list(query_list)

    data = data_sources[0]
    monitoring_list = data['OP_MONITOR_LIST']
    print("monitoring_list", monitoring_list)

    query_list = []
    query_list = qs.add_match_relationship(query_list,
                                           relationship="SITE",
                                           label=site_data["site"])

    query_list = qs.add_match_terminal(
        query_list,
        relationship="PACKAGE",
        property_mask={"name": "SYSTEM_MONITOR"})

    package_sets, package_sources = qs.match_list(query_list)

    package = package_sources[0]

    #
    #  do verifications of data package
    #
    #
    #
    data_structures = package["data_structures"]

    generate_handlers = Generate_Handlers(package, qs)

    handlers = {}
    handlers["SYSTEM_STATUS"] = generate_handlers.construct_hash(
        data_structures["SYSTEM_STATUS"])
    handlers["MONITORING_DATA"] = generate_handlers.construct_hash(
        data_structures["MONITORING_DATA"])
    handlers["SYSTEM_ALERTS"] = generate_handlers.construct_stream_writer(
        data_structures["SYSTEM_ALERTS"])
    handlers[
        "SYSTEM_PUSHED_ALERTS"] = generate_handlers.construct_stream_writer(
            data_structures["SYSTEM_PUSHED_ALERTS"])

    handlers["SYSTEM_STATUS"].delete_all()

    op_monitor = Op_Monitor(site_data, qs, monitoring_list, handlers)

    return op_monitor
def construct_redis_instance(qs, site_data):

    query_list = []
    query_list = qs.add_match_relationship(query_list,
                                           relationship="SITE",
                                           label=site_data["site"])

    query_list = qs.add_match_terminal(
        query_list,
        relationship="PACKAGE",
        property_mask={"name": "REDIS_MONITORING"})

    package_sets, package_sources = qs.match_list(query_list)

    package = package_sources[0]

    #
    #  do verifications of data package
    #
    #
    #
    data_structures = package["data_structures"]
    generate_handlers = Generate_Handlers(package, site_data)

    redis_monitoring_streams = {}
    redis_monitoring_streams[
        "KEYS"] = generate_handlers.construct_stream_writer(
            data_structures["REDIS_MONITOR_KEY_STREAM"])
    redis_monitoring_streams[
        "CLIENTS"] = generate_handlers.construct_stream_writer(
            data_structures["REDIS_MONITOR_CLIENT_STREAM"])
    redis_monitoring_streams[
        "MEMORY"] = generate_handlers.construct_stream_writer(
            data_structures["REDIS_MONITOR_MEMORY_STREAM"])
    redis_monitoring_streams[
        "KEYS_READER"] = generate_handlers.construct_stream_reader(
            data_structures["REDIS_MONITOR_KEY_STREAM"])

    redis_handle = generate_handlers.get_redis_handle(
    )  # reusing handle from package
    redis_monitor = Redis_Monitor(redis_handle, redis_monitoring_streams)

    return redis_monitor