Caizhi Fan

16 papers A 1Journal 4Unranked 11
YearRankTypeTitle / Venue / Authors
2024 conf
RCAR
Caizhi Fan, Zikai Zhong, Hao Yuan, Haibo Song
2022 conf
RCAR
Caizhi Fan, Shaoting Yu, Mengmeng Wang
2022 J jnl
Remote. Sens.
Chao Song, Caizhi Fan, Mengmeng Wang
2022 conf
RCAR
Mengmeng Wang, Caizhi Fan, Chao Song
2022 J jnl
Remote. Sens.
Di Wu, Haibo Song, Caizhi Fan
2022 conf
ROBIO
Caizhi Fan, Chao Song, Mengmeng Wang
2020 conf
CACRE
Shaoting Yu, Caizhi Fan
2019 conf
RCAR
Jun Wu, Caizhi Fan, Guofu Wu
2016 conf
RCAR
Yihuan Liao, Caizhi Fan
2016 conf
RCAR
Caizhi Fan, Yihuan Liao
2011 J jnl
Sci. China Inf. Sci.
Caizhi Fan, Yunhui Liu, Baoquan Song, Dongxiang Zhou
2011 conf
RAM
Caizhi Fan, Shengpeng Guo, Dongxu Li, Yunhui Liu
2010 J jnl
Int. J. Control
Baoquan Song, James K. Mills, Haibo Huang, Yunhui Liu, Caizhi Fan
2009 A conf
IROS
Caizhi Fan, Baoquan Song, Xuanping Cai, Yunhui Liu
2009 conf
ROBIO
Baoquan Song, Caizhi Fan, Yunhui Liu, James K. Mills, Xuanping Cai
2008 conf
ROBIO
Caizhi Fan, Baoquan Song, Xuanping Cai, Yunhui Liu
redb/utils/push_to_elastic.py
← Index redb/utils/push_to_elastic.py python
import json
import os
#from redb.settings import elasticsearch as es
from elasticsearch import Elasticsearch
from dataclasses import asdict
from dotenv import load_dotenv

class Utils():
    """
    Utility class for pushing

    """
    @staticmethod
    def push_to_elastic(sample_dict):
        """
        Pushes the sample_dict to elastic search
        """
        load_dotenv()
        ELASTIC_ENDPOINT = os.getenv("ELASTIC_HOST")
        ELASTIC_ENFORCE_SSL = os.getenv("ELASTIC_ENFORCE_SSL", False) == "True"
        ELASTIC_USER = os.getenv("ELASTIC_USER")
        ELASTIC_PASSWORD = os.getenv("ELASTIC_PASSWORD")
        ELASTIC_BINARIES_COLLECTION = os.getenv(
            "ELASTIC_BINARIES_COLLECTION", "redb_test"
        )
        es = Elasticsearch(
            ELASTIC_ENDPOINT,
            verify_certs=ELASTIC_ENFORCE_SSL,
            basic_auth=(ELASTIC_USER, ELASTIC_PASSWORD),
            maxsize=20,
            retry_on_timeout=True,
            timeout=30,
        )

        try:
            dict_dump = json.dumps(sample_dict)
        except Exception as e:
            print(f"Error: {e}")
            return False
        elastic = es.index(index=ELASTIC_BINARIES_COLLECTION, body=dict_dump)
        return True
    
    def push_to_index(sample_dict, index_name):
        """
        Pushes the sample_dict to elastic search
        """
        load_dotenv()
        ELASTIC_ENDPOINT = os.getenv("ELASTIC_HOST")
        ELASTIC_ENFORCE_SSL = os.getenv("ELASTIC_ENFORCE_SSL", False) == "True"
        ELASTIC_USER = os.getenv("ELASTIC_USER")
        ELASTIC_PASSWORD = os.getenv("ELASTIC_PASSWORD")
        ELASTIC_BINARIES_COLLECTION = index_name
        
        es = Elasticsearch(
            ELASTIC_ENDPOINT,
            verify_certs=ELASTIC_ENFORCE_SSL,
            basic_auth=(ELASTIC_USER, ELASTIC_PASSWORD),
            maxsize=20,
            retry_on_timeout=True,
            timeout=30,
        )

        try:
            dict_dump = json.dumps(sample_dict)
        except Exception as e:
            print(f"Error: {e}")
            return False
        elastic = es.index(index=ELASTIC_BINARIES_COLLECTION, body=dict_dump)
        return True