Package biz.paluch.logging.gelf.logback

Source Code of biz.paluch.logging.gelf.logback.MdcLogbackGelfMessageAssembler

package biz.paluch.logging.gelf.logback;

import biz.paluch.logging.gelf.GelfUtil;
import biz.paluch.logging.gelf.MdcLogEvent;
import biz.paluch.logging.gelf.intern.GelfMessage;
import biz.paluch.logging.gelf.log4j.MdcGelfMessageAssembler;
import org.slf4j.MDC;


/**
* @author <a href="mailto:tobiassebastian.kaefer@1und1.de">Tobias Kaefer</a>
* @since 2013-10-08
*/
public class MdcLogbackGelfMessageAssembler extends MdcGelfMessageAssembler {

    @Override
    public GelfMessage createGelfMessage(MdcLogEvent logEvent) {
        GelfMessage gelfMessage = super.createGelfMessage(logEvent);
        if (isMdcProfiling()) {
            GelfUtil.addMdcProfiling(gelfMessage);
        }

        for (String mdcField : getMdcFields()) {
            Object value = MDC.get(mdcField);
            if (value != null && !value.toString().equals("")) {
                gelfMessage.addField(mdcField, value.toString());
            }
        }

        return gelfMessage;
    }
}
TOP

Related Classes of biz.paluch.logging.gelf.logback.MdcLogbackGelfMessageAssembler

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.