当前位置: 首页 > news >正文

昆明培训网站建设知名电子商务网站

昆明培训网站建设,知名电子商务网站,餐饮企业网站源码,百度推广网站谁做前言 由于mysql链接超时波动,导致数据缺失,需要根据日志填补数据 流程 获取确实数据的订单列表 搜索日志,获取请求日志 根据请求日志拼装sql 打印sql供修复数据 代码 因为我们日志打印的有问题,所以这里用字符串截取获取入…

前言

由于mysql链接超时波动,导致数据缺失,需要根据日志填补数据

流程

获取确实数据的订单列表

搜索日志,获取请求日志

根据请求日志拼装sql

打印sql供修复数据

代码

因为我们日志打印的有问题,所以这里用字符串截取获取入参。如果日志打印的是标准json,直接搞json即可

from elasticsearch import Elasticsearch
import jsonclass MyUtils:passdef getValue(fullStr, beginStr, endStr):start = fullStr.find(beginStr) + len(beginStr)end = fullStr.find(endStr)value = fullStr[start:end]return valuedef setValue(orderInfoExt, columnName, fullStr, beginStr, endStr):value = MyUtils.getValue(fullStr, beginStr, endStr)if value != 'null':orderInfoExt[columnName] = valuees = Elasticsearch(hosts="http://xxx:9200/", http_auth=('xxx', 'xxx'))
scroll_id = None
fileName = "create-order-info" + ".txt"
orderIdList = [74xxxx574,74xxxx822]
orderExtInfoList = []for orderId in orderIdList:query_json = {"_source": ["message", "logger_name", "@timestamp"],"query": {"bool": {"filter":[{"bool":{"filter":[{"multi_match":{"lenient": True,"query": "order/v1/createOrder","type": "phrase"}},{"multi_match":{"lenient": True,"query": orderId,"type": "phrase"}}]}},{"range":{"@timestamp":{"format": "strict_date_optional_time","gte": "2024-11-01T00:00:00.000Z","lte": "2024-11-02T10:00:00.000Z"}}}],"must":[],"must_not":[],"should":[]}}}query = es.search(index='xxxx-pro*', body=query_json, scroll='25m', size=5000,request_timeout=2000000)for k in query['hits']['hits']:timestr = k['_source']['@timestamp']request = k['_source']['message']orderInfoExt = {}#beancopy的字段MyUtils.setValue(orderInfoExt, 'user_device_mac', request, "userDeviceMac=", ", userDeviceImei")MyUtils.setValue(orderInfoExt, 'user_device_imei', request, "userDeviceImei=", ", userDeviceImsi")#特殊的字段MyUtils.setValue(orderInfoExt, 'order_id', request, "orderId=", ", oid")MyUtils.setValue(orderInfoExt, 'user_order_ip', request, "userIpAddr=", ", userPort")#print(orderInfoExt)orderExtInfoList.append(orderInfoExt)
# 假设表名为 orders
table_name = 'order_info_ext'
for orderInfoExt in orderExtInfoList:# 提取列名columns = ', '.join(orderInfoExt.keys())# 提取值,并处理为适当的格式values = []for key, value in orderInfoExt.items():if value == 'null':values.append('NULL')elif isinstance(value, (int, float)):values.append(str(value))elif isinstance(value, str):values.append("'"+value+"'")else:values.append('NULL')# 构建 INSERT 语句sql = f"INSERT INTO {table_name} ({columns}) VALUES ({', '.join(values)});"print(sql)

http://www.yayakq.cn/news/929009/

相关文章:

  • 品牌营销策划网站乐清手机网站
  • 城乡与住房建设部网站首页seo网页优化包括哪些内容
  • 长沙网站设计流程大学生网络营销策划方案书
  • 有做公司网站视频在线制作网站
  • html完整网站开发如何重视企业网站的建设
  • 如何做招聘网站的对比网站建设公司谁家好
  • 哈尔滨seo建站环保局网站建设 自查报告
  • 网站由哪些部分组成部分组成做基金的网站哪个好
  • vps如何搭建网站iis 网站制作
  • 李光辉:营销型企业网站建设的指导思想是什么?网页字体网站
  • 玉溪市住房和城乡建设局网站天正电气网站建设
  • 大型企业网站制作做网站底部不显示中文怎么回事
  • 郑州网站优化培训机构手机软件网站
  • 北京个人网站制作自学网站免费
  • 龙岗商城网站建设教程凯里网站建设gzklyy
  • 怎么美化网站网站开发都需要什么工具
  • 怎么做黑彩黑彩网站网站定制一般价格多少
  • 做网站比特币钱包wordpress 验证百度网盟
  • 如何开网站赚钱网站公司制作
  • 郑州网站建设外包电子商城网站建设报告
  • 官网设计需要多少钱企业seo优化服务
  • 注册公司需要的网站建设国外创意型网站设计
  • 在茂名哪里可以做网站合伙做网站怎么分配股权
  • 郑州做网站企业外国网站接单做翻译
  • 石家庄专业商城网站制作建筑证书兼职网站
  • 网站宣传流程建筑模板生产设备
  • 延边有没有做网站的php做网站步骤
  • 阿里网站怎样做seo什么是网络营销师
  • 网站设计思路作用潍坊建设银行网站
  • 珠海电商网站建设ipad网站制作