亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? logger.java

?? apache的log4j源碼
?? JAVA
字號:
/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License.  You may obtain a copy of the License at *  *      http://www.apache.org/licenses/LICENSE-2.0 *  * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.log4j;import org.apache.log4j.spi.LoggerFactory;import org.apache.log4j.Level;/**  This is the central class in the log4j package. Most logging  operations, except configuration, are done through this class.  @since log4j 1.2  @author Ceki G&uuml;lc&uuml; */public class Logger extends Category {  /**     The fully qualified name of the Logger class. See also the     getFQCN method. */  private static final String FQCN = Logger.class.getName();  protected  Logger(String name) {    super(name);  }  /**    Log a message object with the {@link Level#FINE FINE} level which    is just an alias for the {@link Level#DEBUG DEBUG} level.    <p>This method first checks if this category is <code>DEBUG</code>    enabled by comparing the level of this category with the {@link    Level#DEBUG DEBUG} level. If this category is    <code>DEBUG</code> enabled, then it converts the message object    (passed as parameter) to a string by invoking the appropriate    {@link org.apache.log4j.or.ObjectRenderer}. It then proceeds to call all the    registered appenders in this category and also higher in the    hierarchy depending on the value of the additivity flag.    <p><b>WARNING</b> Note that passing a {@link Throwable} to this    method will print the name of the <code>Throwable</code> but no    stack trace. To print a stack trace use the {@link #debug(Object,    Throwable)} form instead.    @param message the message object to log. */  //public  //void fine(Object message) {  //  if(repository.isDisabled(Level.DEBUG_INT))  //	return;  //  if(Level.DEBUG.isGreaterOrEqual(this.getChainedLevel())) {  //	forcedLog(FQCN, Level.DEBUG, message, null);  //  }  //}  /**   Log a message object with the <code>FINE</code> level including   the stack trace of the {@link Throwable} <code>t</code> passed as   parameter.   <p>See {@link #fine(Object)} form for more detailed information.   @param message the message object to log.   @param t the exception to log, including its stack trace.  */  //public  //void fine(Object message, Throwable t) {  //  if(repository.isDisabled(Level.DEBUG_INT))  //	return;  //  if(Level.DEBUG.isGreaterOrEqual(this.getChainedLevel()))  //	forcedLog(FQCN, Level.FINE, message, t);  //}  /**   * Retrieve a logger named according to the value of the   * <code>name</code> parameter. If the named logger already exists,   * then the existing instance will be returned. Otherwise, a new   * instance is created.     *   * <p>By default, loggers do not have a set level but inherit it   * from their neareast ancestor with a set level. This is one of the   * central features of log4j.   *   * @param name The name of the logger to retrieve.    */  static  public  Logger getLogger(String name) {    return LogManager.getLogger(name);  }  /**   * Shorthand for <code>getLogger(clazz.getName())</code>.   *   * @param clazz The name of <code>clazz</code> will be used as the   * name of the logger to retrieve.  See {@link #getLogger(String)}   * for more detailed information.   */  static  public  Logger getLogger(Class clazz) {    return LogManager.getLogger(clazz.getName());  }  /**   * Return the root logger for the current logger repository.   * <p>   * The {@link #getName Logger.getName()} method for the root logger always returns   * stirng value: "root". However, calling   * <code>Logger.getLogger("root")</code> does not retrieve the root   * logger but a logger just under root named "root".   * <p>   * In other words, calling this method is the only way to retrieve the    * root logger.   */  public  static  Logger getRootLogger() {    return LogManager.getRootLogger();  }  /**     Like {@link #getLogger(String)} except that the type of logger     instantiated depends on the type returned by the {@link     LoggerFactory#makeNewLoggerInstance} method of the     <code>factory</code> parameter.     <p>This method is intended to be used by sub-classes.     @param name The name of the logger to retrieve.     @param factory A {@link LoggerFactory} implementation that will     actually create a new Instance.     @since 0.8.5 */  public  static  Logger getLogger(String name, LoggerFactory factory) {    return LogManager.getLogger(name, factory);  }    /**     * Log a message object with the {@link org.apache.log4j.Level#TRACE TRACE} level.     *     * @param message the message object to log.     * @see #debug(Object) for an explanation of the logic applied.     * @since 1.2.12     */    public void trace(Object message) {      if (repository.isDisabled(Level.TRACE_INT)) {        return;      }      if (Level.TRACE.isGreaterOrEqual(this.getEffectiveLevel())) {        forcedLog(FQCN, Level.TRACE, message, null);      }    }    /**     * Log a message object with the <code>TRACE</code> level including the     * stack trace of the {@link Throwable}<code>t</code> passed as parameter.     *     * <p>     * See {@link #debug(Object)} form for more detailed information.     * </p>     *     * @param message the message object to log.     * @param t the exception to log, including its stack trace.     * @since 1.2.12     */    public void trace(Object message, Throwable t) {      if (repository.isDisabled(Level.TRACE_INT)) {        return;      }      if (Level.TRACE.isGreaterOrEqual(this.getEffectiveLevel())) {        forcedLog(FQCN, Level.TRACE, message, t);      }    }    /**     * Check whether this category is enabled for the TRACE  Level.     * @since 1.2.12     *     * @return boolean - <code>true</code> if this category is enabled for level     *         TRACE, <code>false</code> otherwise.     */    public boolean isTraceEnabled() {        if (repository.isDisabled(Level.TRACE_INT)) {            return false;          }          return Level.TRACE.isGreaterOrEqual(this.getEffectiveLevel());    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一级二级三级在线免费观看| 99精品国产99久久久久久白柏| 国产精品911| 欧美精品色一区二区三区| 久久久久久麻豆| 亚洲国产成人91porn| 波多野结衣在线aⅴ中文字幕不卡| 欧美三级资源在线| 日韩一区在线播放| 国产露脸91国语对白| 日韩一二在线观看| 亚洲成人自拍一区| 在线观看亚洲精品视频| 成人免费视频在线观看| 国产精品影音先锋| 久久久久久久久久久黄色| 奇米影视一区二区三区| 在线视频中文字幕一区二区| 国产精品网站在线观看| 国产一区二区调教| 亚洲精品在线观看网站| 免费成人av在线| 91精品欧美久久久久久动漫| 亚洲永久免费视频| 色婷婷精品久久二区二区蜜臂av| 欧美国产亚洲另类动漫| 国产成人精品1024| 国产欧美视频一区二区| 国产精品羞羞答答xxdd| 久久久噜噜噜久噜久久综合| 精品写真视频在线观看| 精品国产91久久久久久久妲己| 亚洲成人精品一区| 日韩一级片网址| 久久精品国产亚洲a| 精品久久久久久久人人人人传媒| 精品一区二区在线播放| 日韩美女视频在线| 国产精品一区二区视频| 国产精品毛片大码女人| 93久久精品日日躁夜夜躁欧美| 成人欧美一区二区三区小说| 色综合久久中文字幕综合网| 亚洲精品老司机| 欧美婷婷六月丁香综合色| 香蕉久久夜色精品国产使用方法| 3751色影院一区二区三区| 奇米在线7777在线精品| 久久综合九色综合97婷婷| 国产乱子轮精品视频| 欧美激情在线免费观看| 色综合天天视频在线观看| 亚洲成人动漫在线免费观看| 日韩一区和二区| 国产不卡在线视频| 亚洲三级久久久| 欧美巨大另类极品videosbest| 美女视频黄 久久| 久久久91精品国产一区二区精品 | 国产欧美日本一区视频| 成人国产免费视频| 亚洲午夜激情网页| 国产午夜精品一区二区三区四区| 99综合电影在线视频| 性感美女久久精品| 久久精品人人做| 欧美专区在线观看一区| 国产在线精品一区二区不卡了| 1024国产精品| 日韩免费在线观看| 99精品国产视频| 国产在线精品国自产拍免费| 亚洲精品国产品国语在线app| 欧美一级日韩一级| av电影天堂一区二区在线| 蜜臀av在线播放一区二区三区| 亚洲欧洲另类国产综合| 欧美一卡二卡三卡| 色综合色综合色综合色综合色综合| 蜜臀av国产精品久久久久 | 99精品视频一区二区| 日韩**一区毛片| 中文字幕制服丝袜成人av| 欧美一区二区免费视频| 91浏览器在线视频| 丰满岳乱妇一区二区三区| 日韩成人一级大片| 亚洲国产欧美在线| 亚洲欧美一区二区久久| 久久久久国产精品人| 91精品在线观看入口| 欧美色综合天天久久综合精品| 成人综合激情网| 久久精品国产精品青草| 日韩av一区二| 亚洲午夜在线视频| 亚洲黄色av一区| 中文字幕亚洲精品在线观看| 国产欧美一区二区精品性色| 精品精品欲导航| 日韩精品一区二区三区在线| 欧美体内she精视频| 日本道免费精品一区二区三区| 成人久久久精品乱码一区二区三区 | 日本va欧美va欧美va精品| 亚洲宅男天堂在线观看无病毒| 亚洲色图视频网| 国产精品久久久久一区 | 一区二区三区高清在线| 亚洲欧美综合色| 亚洲欧美另类小说| 亚洲欧美区自拍先锋| 一区二区三区四区国产精品| 亚洲色图在线视频| 亚洲乱码国产乱码精品精小说| 国产精品美女久久久久久久久久久| 国产视频一区二区三区在线观看| 欧美成人高清电影在线| 日韩免费观看2025年上映的电影| 91麻豆精品国产91久久久使用方法| 欧美军同video69gay| 欧美日韩国产小视频在线观看| 在线观看亚洲一区| 欧美一区二区三区播放老司机| 日韩精品一区二区在线| 久久久久久久网| 国产精品久久毛片a| 成人免费视频在线观看| 亚洲一区二区三区美女| 天天综合日日夜夜精品| 五月天视频一区| 精品午夜久久福利影院| 国产高清精品网站| 91老师国产黑色丝袜在线| 一本久久a久久精品亚洲| 欧美日韩一级二级三级| 日韩一级在线观看| 中文字幕乱码日本亚洲一区二区| 国产精品久久久久天堂| 亚洲第一会所有码转帖| 麻豆成人久久精品二区三区红| 国产不卡在线播放| 精品视频色一区| 久久精品欧美一区二区三区不卡 | 97久久人人超碰| 欧美日韩久久一区| 337p粉嫩大胆噜噜噜噜噜91av| 国产农村妇女精品| 日韩影院免费视频| 国产麻豆一精品一av一免费| 91在线视频免费观看| 日韩一区二区在线免费观看| 欧美国产成人在线| 亚洲午夜精品网| 成人免费毛片嘿嘿连载视频| 欧洲在线/亚洲| 久久久久久日产精品| 亚洲在线视频网站| 成人免费视频一区| 欧美一区二区三区人| 亚洲品质自拍视频| 国产精品白丝jk白祙喷水网站| 欧美性大战久久久久久久蜜臀| 2021久久国产精品不只是精品| 亚洲欧美一区二区三区久本道91| 麻豆一区二区99久久久久| 一本高清dvd不卡在线观看| 久久亚洲一区二区三区四区| 亚洲自拍偷拍综合| 国产成人精品一区二区三区四区| 欧美区视频在线观看| 亚洲欧洲日韩综合一区二区| 韩国v欧美v日本v亚洲v| 欧美精品色一区二区三区| 亚洲视频一区在线| 国产成人精品一区二| 欧美xxxxx牲另类人与| 午夜精品久久久久久久久| 色综合久久久网| 国产精品久久毛片a| 豆国产96在线|亚洲| 欧美刺激脚交jootjob| 性欧美疯狂xxxxbbbb| 欧美性猛片aaaaaaa做受| 亚洲日穴在线视频| 丁香婷婷综合五月| 久久久国产精华| 激情综合网最新| 精品久久久久久无| 激情伊人五月天久久综合| 日韩一卡二卡三卡国产欧美| 肉色丝袜一区二区| 欧美一区二区人人喊爽| 日韩1区2区3区| 欧美成人国产一区二区| 国模娜娜一区二区三区| 亚洲精品一区二区三区影院| 久久er99热精品一区二区| 日韩欧美中文字幕公布| 老汉av免费一区二区三区|