metric_test.py 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. # -*- coding: utf-8 -*-
  2. """
  3. @author: yq
  4. @time: 2024/11/1
  5. @desc:
  6. """
  7. from data import DataLoaderMysql
  8. from entitys import DbConfigEntity, MetricFucEntity
  9. from metrics import MetricBase, f_register_metric_func
  10. from monitor import MonitorMetric
  11. class A(MetricBase):
  12. def calculate(self, *args, **kwargs) -> MetricFucEntity:
  13. return MetricFucEntity(table=None, value='1', image_path='./cache/t1.png')
  14. if __name__ == "__main__":
  15. # f_register_metric_func(A)
  16. db_config = DbConfigEntity.from_config("./config/mysql_config.json")
  17. data_loader = DataLoaderMysql(db_config)
  18. # metric_clzz = MetricBySqlGeneral()
  19. # metric = metric_clzz.calculate(data_loader, "select * from test.t1")
  20. # print(metric.head(5))
  21. # monitor_metric_config = MonitorMetricConfigEntity.from_config("./config/model_monitor_config_template.json")
  22. monitor_metric = MonitorMetric("./config/model_monitor_config_template.json")
  23. monitor_metric.calculate_metric(data_loader=data_loader)
  24. monitor_metric.generate_report()
  25. # metric_value_dict = monitor_metric.metric_value_dict
  26. # print(metric_value_dict)