當前位置: 首頁>>代碼示例>>Java>>正文


Java MDC類代碼示例

本文整理匯總了Java中org.apache.log4j.MDC的典型用法代碼示例。如果您正苦於以下問題:Java MDC類的具體用法?Java MDC怎麽用?Java MDC使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


MDC類屬於org.apache.log4j包,在下文中一共展示了MDC類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: login

import org.apache.log4j.MDC; //導入依賴的package包/類
/**
 * 登錄
 *
 * @param user
 * @param request
 * @return
 */
@RequestMapping("/login")
public String login(User user, HttpServletRequest request) {
    try {
        String MD5pwd = MD5Util.MD5Encode(user.getPassword(), "UTF-8");
        user.setPassword(MD5pwd);
    } catch (Exception e) {
        user.setPassword("");
    }
    User resultUser = userService.login(user);
    log.info("request: user/login , user: " + user.toString());
    if (resultUser == null) {
        request.setAttribute("user", user);
        request.setAttribute("errorMsg", "請認真核對賬號、密碼!");
        return "login";
    } else {
        HttpSession session = request.getSession();
        session.setAttribute("currentUser", resultUser);
        MDC.put("userName", user.getUserName());
        return "redirect:/main.jsp";
    }
}
 
開發者ID:ZHENFENG13,項目名稱:ssm-demo,代碼行數:29,代碼來源:UserController.java

示例2: testMDC

import org.apache.log4j.MDC; //導入依賴的package包/類
@Test
public void testMDC() {
    PrintStream original = System.out;
    try {
        final ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
        System.setOut(new PrintStream(outputStream, true));

        MDC.put("AWSRequestId", "AWS-REQUEST-ID");
        Logger logger = LoggerFactory.getLogger("TEST-LOGGER");

        logger.info("TEST-MESSAGE");
        assertThat(outputStream.toString(), matchesPattern("^\\[[0-9\\-:\\. ]{23}\\] AWS-REQUEST-ID INFO TEST-LOGGER - TEST-MESSAGE\\n$"));
    } finally {
        System.setOut(original);
    }
}
 
開發者ID:symphoniacloud,項目名稱:lambda-monitoring,代碼行數:17,代碼來源:DefaultConsoleAppenderTest.java

示例3: multipleDomains1

import org.apache.log4j.MDC; //導入依賴的package包/類
@Test
public void multipleDomains1() {
	MDC.put("uname", "magnus");
	
	logger.info(name("java").version(1.7).tags(LanguageTag.JIT, LanguageTag.BYTECODE)
			.and(host("127.0.0.1").port(8080))
			.and(system("fedora").tags(LINUX)),
			"Hello world");
	
	List<ILoggingEvent> capture = rule.capture();
	assertThat(capture.size(), is(1));

	assertThat(rule, message("Hello world"));

	assertThat(rule, qualifier("language").key("name").value("java"));
	assertThat(rule, qualifier("network").key("host").value("127.0.0.1"));
	assertThat(rule, key("system").value("fedora"));

	// multiple tags, from a domain
	assertThat(rule, qualifier("language").tags(LanguageTag.JIT, LanguageTag.BYTECODE));

	// MDC
	assertThat(rule, mdc("uname", "magnus"));

}
 
開發者ID:skjolber,項目名稱:json-log-domain,代碼行數:26,代碼來源:LoggingTest.java

示例4: testMDC

import org.apache.log4j.MDC; //導入依賴的package包/類
@Test
public void testMDC() throws Exception
{
    initialize("TestJsonLayout/default.properties");

    MDC.put("foo", "bar");
    MDC.put("argle", "bargle");

    logger.debug(TEST_MESSAGE);

    MDC.clear();

    captureLoggingOutput();
    assertCommonElements(TEST_MESSAGE);

    DomAsserts.assertCount("children of mdc",   2,          dom, "/data/mdc/*");
    DomAsserts.assertEquals("mdc child 1",      "bar",      dom, "/data/mdc/foo");
    DomAsserts.assertEquals("mdc child 2",      "bargle",   dom, "/data/mdc/argle");
}
 
開發者ID:kdgregory,項目名稱:log4j-aws-appenders,代碼行數:20,代碼來源:TestJsonLayout.java

示例5: doFilter

import org.apache.log4j.MDC; //導入依賴的package包/類
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    HttpServletRequest req = (HttpServletRequest) request;
    SecurityContext context = (SecurityContext) req.getSession().getAttribute(SPRING_SECURITY_CONTEXT_KEY);
    if (context != null) {
        Authentication authentication = context.getAuthentication();
        if (authentication instanceof OAuth2Authentication && authentication.isAuthenticated()) {
            authentication = ((OAuth2Authentication) authentication).getUserAuthentication();
            if (authentication != null) {
                DiscordUserDetails details = SecurityUtils.getDetails(authentication);
                if (details != null) {
                    MDC.put("userId", details.getId());
                }
            }
        }
    }
    chain.doFilter(request, response);
}
 
開發者ID:GoldRenard,項目名稱:JuniperBotJ,代碼行數:19,代碼來源:InfoMdcFilter.java

示例6: unsetLoggingContext

import org.apache.log4j.MDC; //導入依賴的package包/類
/**
 * Remove the elements from the Message Driven Context (MDC) of Log4J, that may have been added by the call to setLoggingContext().
 */
public static void unsetLoggingContext() {
    Stack<Map<String, Object>> stack = t_loggingContext.get();
    if (stack == null || stack.size() == 0)
        throw new UnsupportedOperationException("The unsetLoggingContext() method can only be called after a setLoggingContext()");

    // Remove the current context
    if (MDC.getContext() != null) {
        Set<String> keys = new HashSet<String>(MDC.getContext().keySet());
        for (String key : keys)
            MDC.remove(key);
    }

    // Now add the elements of the previous logging context into the MDC
    Map<String, Object> previousLoggingContext = stack.pop();
    for (Map.Entry<String, Object> me : previousLoggingContext.entrySet())
        MDC.put(me.getKey(), me.getValue());
}
 
開發者ID:jaffa-projects,項目名稱:jaffa-framework,代碼行數:21,代碼來源:LoggingService.java

示例7: unsetLoggingContext

import org.apache.log4j.MDC; //導入依賴的package包/類
/** Remove the elements from the Message Driven Context (MDC) of Log4J, that may have been added by the call to setLoggingContext().
 * @param payload Any serializable object.
 * @param messageInfo the corresponding MessageInfo object, as specified in the configuration file.
 */
public static void unsetLoggingContext(Object payload, MessageInfo messageInfo) {
    Stack<Map<String, Object>> stack = t_loggingContext.get();
    if (stack == null || stack.size() == 0)
        throw new UnsupportedOperationException("The unsetLoggingContext() method can only be called after a setLoggingContext()");

    // Remove the current context
    if (MDC.getContext() != null) {
        Set<String> keys = new HashSet<String>(MDC.getContext().keySet());
        for (String key : keys)
            MDC.remove(key);
    }

    // Now add the elements of the previous logging context into the MDC
    Map<String, Object> previousLoggingContext = stack.pop();
    for (Map.Entry<String, Object> me : previousLoggingContext.entrySet())
        MDC.put(me.getKey(), me.getValue());
}
 
開發者ID:jaffa-projects,項目名稱:jaffa-framework,代碼行數:22,代碼來源:LoggingService.java

示例8: createAuditTransaction

import org.apache.log4j.MDC; //導入依賴的package包/類
/** Creates an AuditTransaction instance, if not already created, and adds it to the UOW. */
private void createAuditTransaction() throws ApplicationExceptions, FrameworkException {
    if (m_transactionId == null) {
        try {
            AuditTransaction at = new AuditTransaction();
            at.generateKey();
            at.setProcessName((String) MDC.get(AuditTransactionMeta.PROCESS_NAME));
            at.setSubProcessName((String) MDC.get(AuditTransactionMeta.SUB_PROCESS_NAME));
            at.setReason((String) MDC.get(AuditTransactionMeta.REASON));
            if (SecurityManager.getPrincipal() != null && SecurityManager.getPrincipal().getName() != null)
                at.setCreatedBy(SecurityManager.getPrincipal().getName());
            at.setCreatedOn(new DateTime());
            m_uow.addSpecial(at);
            m_transactionId = at.getTransactionId();
            if (log.isDebugEnabled())
                log.debug("Created AuditTransaction: " + at);
        } catch (ValidationException e) {
            if (log.isDebugEnabled())
                log.debug("Exception thrown during creation of AuditTransaction", e);
            throw new ApplicationExceptions(e);
        }
    }
}
 
開發者ID:jaffa-projects,項目名稱:jaffa-framework,代碼行數:24,代碼來源:AuditLogger.java

示例9: decide

import org.apache.log4j.MDC; //導入依賴的package包/類
/**
 * Returns Filter#DENY if Expression returns false based on the values
 * returned from the MDC Context.
 * 
 * @param event
 *          <code>LoggingEvent</code>
 */
public int decide(final LoggingEvent event) {

	int ret = DENY;

	if (keys != null && expression != null) {
		final List<Object> mdcValues = new ArrayList<Object>();
		final List<Class<String>> keyTypes = new ArrayList<Class<String>>();
		final String[] keyValues = keys.split(SPLIT_EXPRESSION);
		if (keyValues != null) {
			for (final String keyValue : keyValues) {
				final Object mdcValue = MDC.get(keyValue);
				keyTypes.add((Class<String>) keyValue.getClass());
				mdcValues.add(mdcValue);
			}
		}
		ret = evaluate(getExpressionEvaluator(keyTypes, keyValues), mdcValues);
	}

	return ret;
}
 
開發者ID:jaffa-projects,項目名稱:jaffa-framework,代碼行數:28,代碼來源:MDCFilter.java

示例10: decide

import org.apache.log4j.MDC; //導入依賴的package包/類
@Test
public void decide() {

	assertNotNull(mdcFilter);

	mdcFilter.setExpression("MessageId!=null || LoggedBy!=null");
	mdcFilter.setKeys("LoggedBy,MessageId");

	final LoggingEvent event = new LoggingEvent("", LOG, LOG.getLevel(),
			"MessageId=123", null);

	MDC.put("LoggedBy", "abc");
	MDC.put("fff", "abc");

	final int ret = mdcFilter.decide(event);
	LOG.info("decide: " + ret);
	assertTrue(ret == Filter.NEUTRAL);
}
 
開發者ID:jaffa-projects,項目名稱:jaffa-framework,代碼行數:19,代碼來源:MDCFilterTest.java

示例11: doFilterInternal

import org.apache.log4j.MDC; //導入依賴的package包/類
@Override
@SuppressWarnings("checkstyle:linelength")
public void doFilterInternal(final HttpServletRequest request, final HttpServletResponse response,
        final FilterChain chain) throws IOException, ServletException {
    if (origin == null) {
        LOG.warn("CORS origin has not been set - filter disabled");
    } else {
        String requestOrigin = request.getHeader("Origin");
        String responseOrigin = requestOrigin == null ? origin : requestOrigin;
        response.setHeader("Access-Control-Allow-Origin", responseOrigin);
        response.setHeader("Access-Control-Allow-Credentials", "true");
        // If it's a pre-flight check then provide more information.
        if (request.getHeader("Access-Control-Request-Method") != null) {
            response.setHeader("Access-Control-Allow-Methods", "POST, PUT, GET, OPTIONS, DELETE");
            response.setHeader("Access-Control-Allow-Headers",
                    "Accept, Cache-Control, Content-Type, If-Modified-Since, Keep-Alive, Origin, User-Agent, X-Requested-With");
        }

        response.setHeader("Access-Control-Max-Age", "3600");
    }

    MDC.put("sessionId", request.getSession() != null ? request.getSession().getId() : "");

    chain.doFilter(request, response);
}
 
開發者ID:HewlettPackard,項目名稱:loom,代碼行數:26,代碼來源:CorsFilter.java

示例12: addTransactionInfo

import org.apache.log4j.MDC; //導入依賴的package包/類
/**
 * This API is used for adding trasaction information in logs
 * 
 * @param cadTransId
 * @param extTransId
 * @param userId
 */
public final void addTransactionInfo(final ScribeCommandObject scribeCommandObject) {

  if (enabled) {

    /* If Scribe transaction id is not null */
    if (scribeCommandObject.getIntTansId() != null) {

      /* Add internal transaction id information in MDC */
      MDC.put(intTransIdConst, scribeCommandObject.getIntTansId());
    }

    /* If external transaction id is not null */
    if (scribeCommandObject.getExtTransId() != null) {

      /* Add external transaction id information in MDC */
      MDC.put(extTransIdConst, scribeCommandObject.getExtTransId());
    }
  }
}
 
開發者ID:inbravo,項目名稱:scribe,代碼行數:27,代碼來源:MutualDiagnosticLogUtils.java

示例13: getMdcLong

import org.apache.log4j.MDC; //導入依賴的package包/類
long getMdcLong ( String key, long defval )
{
	final Object o = MDC.get ( key );
	if ( o == null ) return defval;
	if ( o instanceof String )
	{
		try
		{
			return new Long ( o.toString () );
		}
		catch ( NumberFormatException x )
		{
			return defval;
		}
	}
	if ( o instanceof Long )
	{
		return (Long)o;
	}
	return defval;
}
 
開發者ID:att,項目名稱:dmaap-framework,代碼行數:22,代碼來源:EcompLayout.java

示例14: testAutoPopulate

import org.apache.log4j.MDC; //導入依賴的package包/類
@SuppressWarnings("deprecation")
@Test
public void testAutoPopulate ()
{
	final TestClock tc = new TestClock ( 1234567890123L );

	final EcompLayout layout = new EcompLayout ();
	MDC.put ( EcompFields.kBeginTimestampMs, Long.toString ( SaClock.now () ) );

	tc.forward ( 60*1000L );
	layout.format ( new LoggingEvent ( "foo.bar", Category.getRoot (), Priority.INFO, "foobar", null ) );

	assertEquals ( "2009-02-13T23:31:30.123+00:00", MDC.get ( EcompFields.kBeginTimestamp ) );
	assertEquals ( "2009-02-13T23:32:30.123+00:00", MDC.get ( EcompFields.kEndTimestamp ) );
	assertEquals ( "60000", MDC.get ( EcompFields.kElapsedTimeMs ) );
}
 
開發者ID:att,項目名稱:dmaap-framework,代碼行數:17,代碼來源:EcompLayoutTest.java

示例15: LoadBatchCommand

import org.apache.log4j.MDC; //導入依賴的package包/類
public LoadBatchCommand(
    Locus locus,
    SegmentCacheManager cacheMgr,
    Dialect dialect,
    RolapCube cube,
    List<CellRequest> cellRequests)
{
    this.locus = locus;
    this.cacheMgr = cacheMgr;
    this.dialect = dialect;
    this.cube = cube;
    this.cellRequests = cellRequests;

    if (MDC.getContext() != null) {
        this.mdc.putAll(MDC.getContext());
    }
}
 
開發者ID:OSBI,項目名稱:mondrian,代碼行數:18,代碼來源:FastBatchingCellReader.java


注:本文中的org.apache.log4j.MDC類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。