MonitorTask.py 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. # Author renyupeng
  2. # coding=utf-8
  3. # @Time : 2021/11/17 6:48 下午
  4. # @Site :
  5. # @File : MonitorTask.py
  6. # @Software: PyCharm
  7. # @contact: renyupeng@c-top.com.cn
  8. # @Tel 1501435553
  9. import logging
  10. from Apietl.conn.TidbConn import TidbConn
  11. from Apietl.conn.TidbProConn import TidbProConn
  12. from OuterDataCompareInnerData.Utils.sendMessage import feishuMsg
  13. class MonitorTask:
  14. def __init__(self):
  15. self.InnerConn = TidbConn.get_connection()
  16. self.OuterConn = TidbProConn.get_connection()
  17. self.table_list = ['ctop_account_attribution_info',
  18. 'ctop_advertiser',
  19. 'ctop_cwjs_agent_info',
  20. 'ctop_material_ascription',
  21. 'ctop_material_image_info',
  22. 'ctop_material_info',
  23. 'ctop_material_tag_info',
  24. 'ctop_oauth_token',
  25. 'ctop_product',
  26. 'ctop_project',
  27. 'ctop_project_member',
  28. 'ctop_tag_info',
  29. 'ctop_user_allocation',
  30. 'sys_company',
  31. 'sys_depart',
  32. 'sys_depart_permission',
  33. 'sys_depart_role',
  34. 'sys_depart_role_permission',
  35. 'sys_depart_role_user',
  36. 'sys_permission',
  37. 'sys_role',
  38. 'sys_role_permission',
  39. 'sys_user',
  40. 'sys_user_agent',
  41. 'sys_user_depart',
  42. 'sys_user_role',
  43. 'user_company'
  44. ]
  45. def CheckTask(self):
  46. try:
  47. for table in self.table_list:
  48. try:
  49. sql = """select count(1) from `jeecg-boot`.{table}""".format(table=table)
  50. InnertotalNum = TidbConn.quary(self.InnerConn, sql)[0][0]
  51. OutertotalNum = TidbConn.quary(self.OuterConn, sql)[0][0]
  52. if InnertotalNum != OutertotalNum:
  53. print("""{table} 内网数量为{InnertotalNum},外网数量为{OutertotalNum} 数量不想等""".format(table=table,
  54. InnertotalNum=InnertotalNum,
  55. OutertotalNum=OutertotalNum))
  56. feishuMsg.send_robot_msg(
  57. """{table} 内网数量为{InnertotalNum},外网数量为{OutertotalNum}数量不想等""".format(table=table,
  58. InnertotalNum=InnertotalNum,
  59. OutertotalNum=OutertotalNum))
  60. except Exception as e:
  61. logging.error(e)
  62. TidbConn.conn_close(conn=self.InnerConn)
  63. TidbProConn.conn_close(conn=self.OuterConn)
  64. except Exception as e:
  65. logging.error(e)
  66. if __name__ == '__main__':
  67. MonitorTask().CheckTask()