diff --git a/ieemoo-ai-zhanting.py b/ieemoo-ai-zhanting.py index 58b62f1..8421fb6 100755 --- a/ieemoo-ai-zhanting.py +++ b/ieemoo-ai-zhanting.py @@ -15,6 +15,22 @@ from gevent.pywsgi import WSGIServer sys.path.insert(0, ".") import detect +import logging.config +from skywalking import agent, config +SW_SERVER = os.environ.get('SW_AGENT_COLLECTOR_BACKEND_SERVICES') +SW_SERVICE_NAME = os.environ.get('SW_AGENT_NAME') +if SW_SERVER and SW_SERVICE_NAME: + config.init() #采集服务的地址,给自己的服务起个名称 + #config.init(collector="123.60.56.51:11800", service='ieemoo-ai-search') #采集服务的地址,给自己的服务起个名称 + agent.start() +def setup_logging(path): + if os.path.exists(path): + with open(path, 'r') as f: + config = json.load(f) + logging.config.dictConfig(config) + logger = logging.getLogger("root") + return logger +logger = setup_logging('utils/logging.json') app = Flask(__name__) app.use_reloader=False @@ -43,7 +59,7 @@ parser.add_argument('--exist-ok', type=bool, default=True, help='existing projec opt, unknown = parser.parse_known_args() @app.route("/zhanting", methods=['POST']) def get_isempty(): - start = time.time() + #start = time.time() data = request.get_data() ip = request.remote_addr print('------ ip = %s ------' % ip) @@ -63,12 +79,14 @@ def get_isempty(): file = open(image_path, 'wb') file.write(imgdata) pred = detect.detect(opt) - print('pred', pred) - getdateend = time.time() - now_time = datetime.datetime.now() - print('now_time', now_time) - print('get date use time: {0:.2f}s'.format(getdateend - start)) - except: + logger.info(pred) + #print('pred', pred) + #getdateend = time.time() + #now_time = datetime.datetime.now() + #print('now_time', now_time) + #print('get date use time: {0:.2f}s'.format(getdateend - start)) + except Exception as e: + logger.warning(e) return pred return pred @@ -76,14 +94,6 @@ def get_isempty(): if __name__ == "__main__": - app.run() + app.run(host='192.168.1.142', port=8000) #http_server = WSGIServer(('0.0.0.0', 8000), app) #http_server.serve_forever() - - - - - - - - diff --git a/ieemoo_ai_zhanting.py b/ieemoo_ai_zhanting.py deleted file mode 100755 index d147957..0000000 --- a/ieemoo_ai_zhanting.py +++ /dev/null @@ -1,91 +0,0 @@ -# -*- coding: utf-8 -*- -from flask import request, Flask -import numpy as np -import json -import time -import cv2, base64 -import argparse -import sys, os -import torch -from PIL import Image -import datetime -from torchvision import transforms -# from models.modeling import VisionTransformer, CONFIGS -from gevent.pywsgi import WSGIServer -sys.path.insert(0, ".") - -import detect - -app = Flask(__name__) -app.use_reloader=False - -parser = argparse.ArgumentParser() -parser.add_argument('--weights', nargs='+', type=str, default='runs/zhanting/yolov5l_finetune/exp/weights/best.pt', help='model.pt path(s)') -parser.add_argument('--source', type=str, default='data/images/1.jpg', help='source') # file/folder, 0 for webcam -parser.add_argument('--img-size', type=int, default=640, help='inference size (pixels)') -parser.add_argument('--conf-thres', type=float, default=0.25, help='object confidence threshold') -parser.add_argument('--iou-thres', type=float, default=0.45, help='IOU threshold for NMS') -parser.add_argument('--device', default='', help='cuda device, i.e. 0 or 0,1,2,3 or cpu') -parser.add_argument('--view-img', type=bool, default=True, help='display results') -parser.add_argument('--save-txt', type=bool, default=True, help='save results to *.txt') -parser.add_argument('--save-conf', type=bool, default=True, help='save confidences in --save-txt labels') -parser.add_argument('--nosave', type=bool, default=True, help='do not save images/videos') -parser.add_argument('--classes', nargs='+', type=int, help='filter by class: --class 0, or --class 0 2 3') -parser.add_argument('--agnostic-nms', type=bool, default=True, help='class-agnostic NMS') -parser.add_argument('--augment', type=bool, default=True, help='augmented inference') -parser.add_argument('--update', type=bool, default=True, help='update all models') -parser.add_argument('--project', default='runs/detect', help='save results to project/name') -parser.add_argument('--name', default='exp', help='save results to project/name') -parser.add_argument('--exist-ok', type=bool, default=True, help='existing project/name ok, do not increment') - -opt = parser.parse_args() -#opt, unknown = parser.parse_known_args() -@app.route("/zhanting", methods=['POST']) -def get_isempty(): - start = time.time() - data = request.get_data() - ip = request.remote_addr - print('------ ip = %s ------' % ip) - - json_data = json.loads(data.decode("utf-8")) -# getdateend = time.time() - # print('get date use time: {0:.2f}s'.format(getdateend - start)) - - pic = json_data.get("file") - result = {"success": "false", - "rst_cls": '-1', - } - - imgdata = base64.b64decode(pic) - image_path = 'data/images/1.jpg' - file = open(image_path, 'wb') - file.write(imgdata) - pred = detect.detect(opt) - print('pred', pred) - getdateend = time.time() - now_time = datetime.datetime.now() - print('now_time', now_time) - print('get date use time: {0:.2f}s'.format(getdateend - start)) - - return repr(pred) - - - -if __name__ == "__main__": - #app.run() - http_server = WSGIServer(('0.0.0.0', 8083), app) - http_server.serve_forever() - - - - - - - - - - - - - - diff --git a/utils/logging.json b/utils/logging.json new file mode 100644 index 0000000..5ca2bcb --- /dev/null +++ b/utils/logging.json @@ -0,0 +1,46 @@ +{ + "version":1, + "disable_existing_loggers":false, + "formatters":{ + "simple":{ + "format":"%(asctime)s - %(module)s - %(thread)d - %(levelname)s : %(message)s" + } + }, + "handlers":{ + "console":{ + "class":"logging.StreamHandler", + "level":"DEBUG", + "formatter":"simple", + "stream":"ext://sys.stdout" + }, + "info_file_handler":{ + "class":"logging.handlers.RotatingFileHandler", + "level":"INFO", + "formatter":"simple", + "filename":"../log/ieemoo-ai-zhanting-biz.log", + "maxBytes":10485760, + "backupCount":20, + "encoding":"utf8" + }, + "error_file_handler":{ + "class":"logging.handlers.RotatingFileHandler", + "level":"ERROR", + "formatter":"simple", + "filename":"../log/ieemoo-ai-zhanting-biz.log", + "maxBytes":10485760, + "backupCount":20, + "encoding":"utf8" + } + }, + "loggers":{ + "my_module":{ + "level":"ERROR", + "handlers":["info_file_handler"], + "propagate":"no"} + }, + "root":{ + "level":"INFO", + "handlers":["console","info_file_handler","error_file_handler"] + } +} +