Преглед изворни кода

异常情况,不写API日志

airhead пре 8 година
родитељ
комит
c8beffb8c4

+ 5 - 1
hos-logger/src/main/java/com/yihu/hos/logger/camel/processor/EHRLogProcesser.java

@ -22,6 +22,8 @@ public class EHRLogProcesser implements Processor {
    @Override
    public void process(Exchange exchange) throws Exception {
        exchange.getOut().setBody("");
        exchange.getOut().setHeader("empty", true);
        ArrayList arrayList = exchange.getIn().getBody(ArrayList.class);
        if (arrayList.size() != 4) {
            return;
@ -78,8 +80,10 @@ public class EHRLogProcesser implements Processor {
            objectNode.set("data", dataNode);
            String content = objectMapper.writeValueAsString(objectNode);
            exchange.getOut().setBody(content);
        } catch (JsonParseException e) {
            exchange.getOut().setHeader("empty", false);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

+ 3 - 1
hos-logger/src/main/java/com/yihu/hos/logger/camel/route/EHRLogRouterBuilder.java

@ -36,6 +36,8 @@ public class EHRLogRouterBuilder extends RouteBuilder {
                .completionSize(4)
                .completionTimeout(20 * 1000)
                .process(new EHRLogProcesser())
                .to("file://" + loggerConfiguration.getEhrLogDir());
                .choice()
                .when(header("empty").isEqualTo(true)).to("file://" + loggerConfiguration.getEhrLogDir())
                .endChoice();
    }
}