1.增加时间日志,方便排查问题
This commit is contained in:
parent
7d8d4d293d
commit
0298014b9d
@ -36,18 +36,33 @@ public class RecognizeDrivingLicenseController extends BaseController {
|
||||
@EbAuthentication(tencent = ApiConstants.TENCENT_AUTH)
|
||||
@PostMapping("/recognize")
|
||||
public R<Object> recognize(@RequestBody VehicleLicenseRequest request) {
|
||||
long start = System.currentTimeMillis();
|
||||
|
||||
long t1 = System.currentTimeMillis();
|
||||
BVehicleLicenseRequest bVehicleLicenseRequest = toBaiduRequest(request);
|
||||
String checkMsg = checkRequest(bVehicleLicenseRequest);
|
||||
if (!isBlank(checkMsg)) {
|
||||
return R.error(checkMsg);
|
||||
}
|
||||
log.info("行驶证识别-参数校验及构建请求耗时:{}ms", System.currentTimeMillis() - t1);
|
||||
|
||||
long t2 = System.currentTimeMillis();
|
||||
Map<String, Object> data = requestBaidu(getContent(bVehicleLicenseRequest));
|
||||
long baiduCost = System.currentTimeMillis() - t2;
|
||||
log.info("行驶证识别-调用百度OCR接口耗时:{}ms", baiduCost);
|
||||
|
||||
if (data == null) {
|
||||
log.info("行驶证识别-识别失败, 耗时:{}ms", System.currentTimeMillis() - start);
|
||||
return R.error("行驶证识别失败");
|
||||
}
|
||||
|
||||
long t3 = System.currentTimeMillis();
|
||||
R<Object> result = R.ok();
|
||||
return result.setData(toRecognizeResp(bVehicleLicenseRequest.getVehicleLicenseSide(), data));
|
||||
result.setData(toRecognizeResp(bVehicleLicenseRequest.getVehicleLicenseSide(), data));
|
||||
log.info("行驶证识别-结果映射耗时:{}ms", System.currentTimeMillis() - t3);
|
||||
|
||||
log.info("行驶证识别-总耗时:{}ms, 其中第三方(百度OCR):{}ms", System.currentTimeMillis() - start, baiduCost);
|
||||
return result;
|
||||
}
|
||||
|
||||
private BVehicleLicenseRequest toBaiduRequest(VehicleLicenseRequest request) {
|
||||
|
||||
@ -42,23 +42,34 @@ public class RecognizeLicensePlateController extends BaseController {
|
||||
|
||||
@PostMapping("/recognize")
|
||||
public R recognize(@RequestBody LicensePlateRecognizeRequest request) {
|
||||
long start = System.currentTimeMillis();
|
||||
|
||||
if (request == null) {
|
||||
return R.error("请求参数不能为空");
|
||||
}
|
||||
if (isBlank(request.getImageBase64()) && isBlank(request.getImageUrl())) {
|
||||
return R.error("imageBase64和imageUrl不能同时为空");
|
||||
}
|
||||
log.info("车牌识别-参数校验耗时:{}ms", System.currentTimeMillis() - start);
|
||||
|
||||
long t1 = System.currentTimeMillis();
|
||||
BLicensePlateRequest bRequest = toBaiduRequest(request);
|
||||
log.info("车牌识别-构建百度请求耗时:{}ms", System.currentTimeMillis() - t1);
|
||||
|
||||
long t2 = System.currentTimeMillis();
|
||||
ApiR<BLicensePlateResp> apiR = bLicensePlateHandle.handle(bRequest);
|
||||
long baiduCost = System.currentTimeMillis() - t2;
|
||||
log.info("车牌识别-调用百度OCR接口耗时:{}ms", baiduCost);
|
||||
|
||||
if (apiR == null || !apiR.isSuccess() || apiR.getData() == null) {
|
||||
return R.error(thirdError(apiR));
|
||||
}
|
||||
|
||||
long t3 = System.currentTimeMillis();
|
||||
BLicensePlateResp bResp = apiR.getData();
|
||||
List<BLicensePlateResp.WordsResultDTO> plates = bResp.getWordsResult();
|
||||
if (CollectionUtils.isEmpty(plates)) {
|
||||
log.info("车牌识别-未识别到车牌信息, 耗时:{}ms", System.currentTimeMillis() - start);
|
||||
return R.error("未识别到车牌信息");
|
||||
}
|
||||
|
||||
@ -76,7 +87,9 @@ public class RecognizeLicensePlateController extends BaseController {
|
||||
double avgConf = probabilities.stream().mapToDouble(Double::doubleValue).average().orElse(0.0);
|
||||
resp.setPlateTypeConfidence((float) avgConf);
|
||||
}
|
||||
log.info("车牌识别-结果映射耗时:{}ms", System.currentTimeMillis() - t3);
|
||||
|
||||
log.info("车牌识别-总耗时:{}ms, 其中第三方(百度OCR):{}ms", System.currentTimeMillis() - start, baiduCost);
|
||||
return R.ok().setData(resp);
|
||||
}
|
||||
|
||||
|
||||
@ -38,27 +38,42 @@ public class RecognizeTaxiInvoiceController extends BaseController {
|
||||
|
||||
@PostMapping("/recognize")
|
||||
public R recognize(@RequestBody TaxiInvoiceRecognizeRequest request) {
|
||||
long start = System.currentTimeMillis();
|
||||
|
||||
if (request == null) {
|
||||
return R.error("请求参数不能为空");
|
||||
}
|
||||
if (isBlank(request.getImageBase64()) && isBlank(request.getImageUrl())) {
|
||||
return R.error("imageBase64和imageUrl不能同时为空");
|
||||
}
|
||||
log.info("出租车发票识别-参数校验耗时:{}ms", System.currentTimeMillis() - start);
|
||||
|
||||
long t1 = System.currentTimeMillis();
|
||||
BTaxiReceiptRequest bRequest = toBaiduRequest(request);
|
||||
log.info("出租车发票识别-构建百度请求耗时:{}ms", System.currentTimeMillis() - t1);
|
||||
|
||||
long t2 = System.currentTimeMillis();
|
||||
ApiR<BTaxiReceiptResp> apiR = bTaxiReceiptHandle.handle(bRequest);
|
||||
long baiduCost = System.currentTimeMillis() - t2;
|
||||
log.info("出租车发票识别-调用百度OCR接口耗时:{}ms", baiduCost);
|
||||
|
||||
if (apiR == null || !apiR.isSuccess() || apiR.getData() == null) {
|
||||
return R.error(thirdError(apiR));
|
||||
}
|
||||
|
||||
long t3 = System.currentTimeMillis();
|
||||
BTaxiReceiptResp bResp = apiR.getData();
|
||||
BTaxiReceiptResp.WordsResultDTO wordsResult = bResp.getWordsResult();
|
||||
if (wordsResult == null) {
|
||||
log.info("出租车发票识别-未识别到发票信息, 耗时:{}ms", System.currentTimeMillis() - start);
|
||||
return R.error("未识别到出租车发票信息");
|
||||
}
|
||||
|
||||
return R.ok().setData(toResp(wordsResult));
|
||||
RecognizeTaxiInvoiceResp resp = toResp(wordsResult);
|
||||
log.info("出租车发票识别-结果映射耗时:{}ms", System.currentTimeMillis() - t3);
|
||||
|
||||
log.info("出租车发票识别-总耗时:{}ms, 其中第三方(百度OCR):{}ms", System.currentTimeMillis() - start, baiduCost);
|
||||
return R.ok().setData(resp);
|
||||
}
|
||||
|
||||
private BTaxiReceiptRequest toBaiduRequest(TaxiInvoiceRecognizeRequest request) {
|
||||
|
||||
@ -38,27 +38,42 @@ public class RecognizeTrainTicketController extends BaseController {
|
||||
|
||||
@PostMapping("/recognize")
|
||||
public R recognize(@RequestBody TrainTicketRecognizeRequest request) {
|
||||
long start = System.currentTimeMillis();
|
||||
|
||||
if (request == null) {
|
||||
return R.error("请求参数不能为空");
|
||||
}
|
||||
if (isBlank(request.getImageBase64()) && isBlank(request.getImageUrl())) {
|
||||
return R.error("imageBase64和imageUrl不能同时为空");
|
||||
}
|
||||
log.info("火车票识别-参数校验耗时:{}ms", System.currentTimeMillis() - start);
|
||||
|
||||
long t1 = System.currentTimeMillis();
|
||||
BTrainTicketRequest bRequest = toBaiduRequest(request);
|
||||
log.info("火车票识别-构建百度请求耗时:{}ms", System.currentTimeMillis() - t1);
|
||||
|
||||
long t2 = System.currentTimeMillis();
|
||||
ApiR<BTrainTicketResp> apiR = bTrainTicketHandle.handle(bRequest);
|
||||
long baiduCost = System.currentTimeMillis() - t2;
|
||||
log.info("火车票识别-调用百度OCR接口耗时:{}ms", baiduCost);
|
||||
|
||||
if (apiR == null || !apiR.isSuccess() || apiR.getData() == null) {
|
||||
return R.error(thirdError(apiR));
|
||||
}
|
||||
|
||||
long t3 = System.currentTimeMillis();
|
||||
BTrainTicketResp bResp = apiR.getData();
|
||||
BTrainTicketResp.WordsResultDTO wordsResult = bResp.getWordsResult();
|
||||
if (wordsResult == null) {
|
||||
log.info("火车票识别-未识别到火车票信息, 耗时:{}ms", System.currentTimeMillis() - start);
|
||||
return R.error("未识别到火车票信息");
|
||||
}
|
||||
|
||||
return R.ok().setData(toResp(wordsResult));
|
||||
RecognizeTrainTicketResp resp = toResp(wordsResult);
|
||||
log.info("火车票识别-结果映射耗时:{}ms", System.currentTimeMillis() - t3);
|
||||
|
||||
log.info("火车票识别-总耗时:{}ms, 其中第三方(百度OCR):{}ms", System.currentTimeMillis() - start, baiduCost);
|
||||
return R.ok().setData(resp);
|
||||
}
|
||||
|
||||
private BTrainTicketRequest toBaiduRequest(TrainTicketRecognizeRequest request) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user