Java Code Examples for com.alibaba.csp.sentinel.log.RecordLog#debug()

The following examples show how to use com.alibaba.csp.sentinel.log.RecordLog#debug() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: SpiLoader.java    From Sentinel with Apache License 2.0 6 votes vote down vote up
/**
 * Load the sorted and prototype SPI instance list for provided SPI interface.
 *
 * Note: each call return different instances, i.e. prototype instance, not singleton instance.
 *
 * @param clazz class of the SPI
 * @param <T>   SPI type
 * @return sorted and different SPI instance list
 * @since 1.7.2
 */
public static <T> List<T> loadPrototypeInstanceListSorted(Class<T> clazz) {
    try {
        // Not use SERVICE_LOADER_MAP, to make sure the instances loaded are different.
        ServiceLoader<T> serviceLoader = ServiceLoaderUtil.getServiceLoader(clazz);

        List<SpiOrderWrapper<T>> orderWrappers = new ArrayList<>();
        for (T spi : serviceLoader) {
            int order = SpiOrderResolver.resolveOrder(spi);
            // Since SPI is lazy initialized in ServiceLoader, we use online sort algorithm here.
            SpiOrderResolver.insertSorted(orderWrappers, spi, order);
            RecordLog.debug("[SpiLoader] Found {} SPI: {} with order {}", clazz.getSimpleName(),
                    spi.getClass().getCanonicalName(), order);
        }
        List<T> list = new ArrayList<>(orderWrappers.size());
        for (int i = 0; i < orderWrappers.size(); i++) {
            list.add(orderWrappers.get(i).spi);
        }
        return list;
    } catch (Throwable t) {
        RecordLog.error("[SpiLoader] ERROR: loadPrototypeInstanceListSorted failed", t);
        t.printStackTrace();
        return new ArrayList<>();
    }
}
 
Example 2
Source File: RecordLogTest.java    From Sentinel with Apache License 2.0 5 votes vote down vote up
@Test
public void testLogException() {
    RecordLog.info("init");
    log.clearLog();
    Exception e = new Exception("ex");

    // info test
    RecordLog.info("Error", e);
    // split the log for test
    String[] logSplit = log.getLog().split(System.lineSeparator());
    Assert.assertEquals("INFO  sentinelRecordLogger - Error", logSplit[0]);

    // warn test
    log.clearLog();
    RecordLog.warn("Error", e);
    logSplit = log.getLog().split(System.lineSeparator());
    Assert.assertEquals("WARN  sentinelRecordLogger - Error", logSplit[0]);

    // trace test
    log.clearLog();
    RecordLog.trace("Error", e);
    logSplit = log.getLog().split(System.lineSeparator());
    Assert.assertEquals("TRACE sentinelRecordLogger - Error", logSplit[0]);

    // debug test
    log.clearLog();
    RecordLog.debug("Error", e);
    logSplit = log.getLog().split(System.lineSeparator());
    Assert.assertEquals("DEBUG sentinelRecordLogger - Error", logSplit[0]);

    // error test
    log.clearLog();
    RecordLog.error("Error", e);
    logSplit = log.getLog().split(System.lineSeparator());
    Assert.assertEquals("ERROR sentinelRecordLogger - Error", logSplit[0]);
}
 
Example 3
Source File: RecordLogTest.java    From Sentinel with Apache License 2.0 4 votes vote down vote up
@Override
protected void debug(String msg, Object... args) {
    RecordLog.debug(msg, args);
}