| | |
| | | from http.server import BaseHTTPRequestHandler |
| | | import urllib.parse as urlparse |
| | | |
| | | import psutil |
| | | |
| | | from db import redis_manager_delegate as redis_manager, mysql_data_delegate as mysql_data |
| | | from db.redis_manager_delegate import RedisUtils |
| | | from log_module.log import hx_logger_l2_transaction, logger_debug |
| | | from strategy import data_cache |
| | | from trade import huaxin_trade_api, huaxin_trade_data_update |
| | | from trade.huaxin_trade_record_manager import DelegateRecordManager, DealRecordManager, MoneyManager, PositionManager |
| | | from utils import tool, huaxin_util |
| | | from utils import tool, huaxin_util, socket_util |
| | | |
| | | |
| | | class DataServer(BaseHTTPRequestHandler): |
| | |
| | | # 获取每次买入的金额 |
| | | money = data_cache.BUY_MONEY_PER_CODE |
| | | response_data = json.dumps({"code": 0, "data": {"money": money}}) |
| | | elif url.path == "/get_env": |
| | | try: |
| | | fdata = {} |
| | | # try: |
| | | # date = HistoryKDatasUtils.get_trading_dates(tool.date_sub(tool.get_now_date_str(), 10), |
| | | # tool.get_now_date_str()) |
| | | # if date: |
| | | # fdata["juejin"] = 1 |
| | | # except Exception as e: |
| | | # fdata["juejin"] = 0 |
| | | # fdata["kpl"] = {} |
| | | # # 获取开盘啦数据 |
| | | # kpl_types = [KPLDataType.LIMIT_UP.value, KPLDataType.JINGXUAN_RANK.value, |
| | | # KPLDataType.INDUSTRY_RANK.value] |
| | | # for kpl_type in kpl_types: |
| | | # if kpl_type in KPLDataManager.kpl_data_update_info: |
| | | # fdata["kpl"][kpl_type] = KPLDataManager.kpl_data_update_info.get(kpl_type) |
| | | |
| | | try: |
| | | # 验证redis |
| | | RedisUtils.get(redis_manager.RedisManager(0).getRedis(), "test") |
| | | fdata["redis"] = 1 |
| | | except: |
| | | fdata["redis"] = 0 |
| | | |
| | | try: |
| | | # 验证mysql |
| | | mysql_data.Mysqldb().select_one("select 1") |
| | | fdata["mysql"] = 1 |
| | | except: |
| | | fdata["mysql"] = 0 |
| | | |
| | | try: |
| | | # redis异步任务数量 |
| | | fdata["redis_async_task_count"] = redis_manager.RedisUtils.get_async_task_count() |
| | | except: |
| | | pass |
| | | |
| | | # 获取交易通道 |
| | | try: |
| | | can_access = huaxin_trade_api.test_trade_channel() |
| | | fdata["trade_channel_access"] = 1 if can_access else 0 |
| | | except Exception as e: |
| | | logger_debug.exception(e) |
| | | fdata["trade_channel_access"] = 0 |
| | | |
| | | # 获取CPU与内存适用情况 |
| | | memory_info = psutil.virtual_memory() |
| | | cpu_percent = psutil.cpu_percent(interval=1) |
| | | fdata["device"] = {"cpu": cpu_percent, "memery": memory_info.percent} |
| | | # 获取交易通道 |
| | | result = {"code": 0, "data": fdata, "msg": ""} |
| | | # print("OnGetEnvInfo 成功") |
| | | response_data = json.dumps(result) |
| | | except Exception as e: |
| | | response_data = json.dumps({"code": 1, "msg": str(e)}) |
| | | |
| | | self.send_response(200) |
| | | # 发给请求客户端的响应数据 |