|
|
|
|
<!DOCTYPE html>
|
|
|
|
|
<html lang="zh-CN">
|
|
|
|
|
<head>
|
|
|
|
|
<meta charset="utf-8">
|
|
|
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
|
|
|
<meta name="generator" content="VuePress 2.0.0-beta.49">
|
|
|
|
|
<style>
|
|
|
|
|
:root {
|
|
|
|
|
--c-bg: #fff;
|
|
|
|
|
}
|
|
|
|
|
html.dark {
|
|
|
|
|
--c-bg: #22272e;
|
|
|
|
|
}
|
|
|
|
|
html, body {
|
|
|
|
|
background-color: var(--c-bg);
|
|
|
|
|
}
|
|
|
|
|
</style>
|
|
|
|
|
<script>
|
|
|
|
|
const userMode = localStorage.getItem('vuepress-color-scheme');
|
|
|
|
|
const systemDarkMode = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
|
|
|
if (userMode === 'dark' || (userMode !== 'light' && systemDarkMode)) {
|
|
|
|
|
document.documentElement.classList.toggle('dark', true);
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
<link rel="icon" href="/images/favicon.ico"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta property="og:title" content="Arthas"><meta property="og:image:alt" content="Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas - alibaba/arthas: Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas"><meta property="og:image" content="/images/arthas_mate_image.png"><meta property="og:description" content="Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas - alibaba/arthas: Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas"><meta property="og:image:width" content="1200"><meta property="og:image:height" content="600"><meta property="twitter:image:src" content="/images/arthas_mate_image.png"><meta property="twitter:image:alt" content="Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas - alibaba/arthas: Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas"><meta itemprop="name" content="Arthas"><meta itemprop="image" content="/images/arthas_mate_image.png"><meta itemprop="description" content="Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas - alibaba/arthas: Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas"><script>
|
|
|
|
|
var _hmt = _hmt || [];
|
|
|
|
|
(function() {
|
|
|
|
|
var hm = document.createElement("script");
|
|
|
|
|
hm.src = "https://hm.baidu.com/hm.js?d5c5e25b100f0eb51a4c35c8a86ea9b4";
|
|
|
|
|
var s = document.getElementsByTagName("script")[0];
|
|
|
|
|
s.parentNode.insertBefore(hm, s);
|
|
|
|
|
})();
|
|
|
|
|
</script><meta name="aes-config" content="pid=xux-opensource&user_type=101&uid=&username="><script src="//g.alicdn.com/alilog/mlog/aplus_v2.js" id="beacon-aplus" exparams="clog=o&aplus&sidx=aplusSidx&ckx=aplusCkx"></script><script src="//g.alicdn.com/aes/??tracker/1.0.34/index.js,tracker-plugin-pv/2.4.5/index.js,tracker-plugin-event/1.2.5/index.js,tracker-plugin-jserror/1.0.13/index.js,tracker-plugin-api/1.1.14/index.js,tracker-plugin-perf/1.1.8/index.js,tracker-plugin-eventTiming/1.0.4/index.js"></script><title>logger | arthas</title><meta name="description" content="arthas 使用文档">
|
|
|
|
|
<link rel="modulepreload" href="/assets/app.e9adadd6.js"><link rel="modulepreload" href="/assets/logger.html.78bdd8bf.js"><link rel="modulepreload" href="/assets/logger.html.1c7e6fb8.js"><link rel="prefetch" href="/assets/index.html.fc6fe773.js"><link rel="prefetch" href="/assets/index.html.303ae9ec.js"><link rel="prefetch" href="/assets/index.html.5be10814.js"><link rel="prefetch" href="/assets/advanced-use.html.80c572ab.js"><link rel="prefetch" href="/assets/advice-class.html.30be8b5c.js"><link rel="prefetch" href="/assets/agent.html.478e63bb.js"><link rel="prefetch" href="/assets/arthas-properties.html.126a2442.js"><link rel="prefetch" href="/assets/arthas3.html.f866a915.js"><link rel="prefetch" href="/assets/async.html.7fc6690f.js"><link rel="prefetch" href="/assets/auth.html.7faa0702.js"><link rel="prefetch" href="/assets/base64.html.91916ad8.js"><link rel="prefetch" href="/assets/batch-support.html.6d8369c7.js"><link rel="prefetch" href="/assets/cat.html.49018237.js"><link rel="prefetch" href="/assets/classloader.html.e5597a48.js"><link rel="prefetch" href="/assets/cls.html.3d057407.js"><link rel="prefetch" href="/assets/commands.html.58e9e974.js"><link rel="prefetch" href="/assets/contact-us.html.e0d74259.js"><link rel="prefetch" href="/assets/dashboard.html.688b447f.js"><link rel="prefetch" href="/assets/docker.html.17503d14.js"><link rel="prefetch" href="/assets/download.html.19809e39.js"><link rel="prefetch" href="/assets/dump.html.35a47ccf.js"><link rel="prefetch" href="/assets/echo.html.81510109.js"><link rel="prefetch" href="/assets/faq.html.e22d74d2.js"><link rel="prefetch" href="/assets/getstatic.html.9ffb9ff2.js"><link rel="prefetch" href="/assets/grep.html.7747b85b.js"><link rel="prefetch" href="/assets/groovy.html.3c2a5669.js"><link rel="prefetch" href="/assets/heapdump.html.98d7b14d.js"><link rel="prefetch" href="/assets/help.html.67db59f7.js"><link rel="prefetch" href="/assets/history.html.f6e93473.js"><link rel="prefetch" href="/assets/http-api.html.8abd260a.js"><link rel="prefetch" href="/assets/idea-plugin.html.68b7d4f4.js"><link rel="prefetch" href="/assets/install-detail.html.666bc4d2.js"><link rel="prefetch" href="/assets/jad.html.a62cf748.js"><link rel="prefetch" href="/assets/jfr.html.fb32b04e.js"><link rel="prefetch" href="/assets/jvm.html.970a2dcd.js"><link rel="prefetch" href="/assets/keymap.html.79b77d01.js"><link rel="prefetch" href="/assets/manual-install.html.5992ea2f.js"><link rel="prefetch" href="/assets/mbean.html.07f7548d.js"><link rel="prefetch" href="/assets/mc.html.4a8fe9c1.js"><link rel="prefetch" href="/assets/memory.html.f3395aa5.js"><link rel="prefetch" href="/assets/monitor.html.f16f1733.js"><link rel="prefetch" href="/assets/ognl.html.e96e8461.js"><link rel="prefetch" href="/assets/options.html.f364e3b1.js"><link rel="prefetch" href="/assets/perfcounter.html.5ac9dd17.js"><link rel="prefetch" href="/assets/profiler.html.8b48b000.js"><link rel="prefetch" href="/assets/pwd.html.0881d938.js"><link rel="prefetch" href="/assets/quick-start.html.d22745bc.js"><link rel="prefetch" href="/assets/quit.html.7ac530c1.js"><link rel="prefetch" href="/assets/redefine.html.7a72fe7b.js"><link rel="prefetch" href="/assets/release-notes.html.dd1cd195.js"><link rel="prefetch" href="/assets/reset.html.452a35fa.js"><link rel="prefetch" href="/assets/retransform.html.fbef0997.js"><link rel="prefetch" href="/assets/save-log.html.c6a45ce2.js"><link rel="prefetch" href="/assets/sc.html.6441d65e.js"><link rel="prefetch" href="/assets/session.html.ebfd8261.js"><link rel="prefetch" href="/assets/sm.html.9e10db61.js"><link rel="prefetch" href="/assets/spring-boot-starter.html.c4118b0a.js"><link rel="prefetch" href="/assets/stack.html.9add4cf4.js"><link rel="prefetch" href="/assets/start-arthas.html.bb492515.js"><link rel="prefetch" href="/assets/stop.html.b66bc06b.js"><link rel="prefetch" href="/assets/sysenv.html.26a8e556.js"><link rel="prefetch" href="/assets/sysprop.html.b7e9f6f3.js"><link rel="prefetch" href="/assets/tee.html.ad9aa342.js"><link rel="prefetch" href="/assets/thread.html.e5d9019c.j
|
|
|
|
|
<link rel="stylesheet" href="/assets/style.3627c3cf.css">
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<div id="app"><!--[--><div class="theme-container"><!--[--><header class="navbar"><div class="toggle-sidebar-button" title="切换侧边栏" aria-expanded="false" role="button" tabindex="0"><div class="icon" aria-hidden="true"><span></span><span></span><span></span></div></div><span><a href="/" class="" data-v-2aa8cc94><!----><span class="site-name can-hide" data-v-2aa8cc94>arthas</span><span class="navbar-version" data-v-2aa8cc94>v3.6.5</span></a></span><div class="navbar-items-wrapper" style=""><!--[--><!--]--><nav class="navbar-items can-hide"><!--[--><div class="navbar-item"><a href="/" class="" aria-label="首页"><!--[--><!--]--> 首页 <!--[--><!--]--></a></div><div class="navbar-item"><a class="external-link" href="/doc/arthas-tutorials.html?language=cn&id=arthas-basics" rel="noopener noreferrer" target="_blank" aria-label="在线教程"><!--[--><!--]--><span>在线教程</span><span><svg class="external-link-icon" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg><span class="external-link-icon-sr-only">在新窗口打开</span></span><!--[--><!--]--></a></div><div class="navbar-item"><a href="/doc/" class="router-link-active" aria-label="文档"><!--[--><!--]--> 文档 <!--[--><!--]--></a></div><div class="navbar-item"><a href="/doc/commands.md" class="" aria-label="命令列表"><!--[--><!--]--> 命令列表 <!--[--><!--]--></a></div><div class="navbar-item"><a href="/doc/download.md" class="" aria-label="下载"><!--[--><!--]--> 下载 <!--[--><!--]--></a></div><div class="navbar-item"><div class="navbar-dropdown-wrapper"><button class="navbar-dropdown-title" type="button" aria-label="解决方案"><span class="title">解决方案</span><span class="arrow down"></span></button><button class="navbar-dropdown-title-mobile" type="button" aria-label="解决方案"><span class="title">解决方案</span><span class="right arrow"></span></button><ul style="display:none;" class="navbar-dropdown"><!--[--><li class="navbar-dropdown-item"><a class="external-link" href="https://cn.aliyun.com/product/aliware/mse?spm=arthas.topbar.0.0.0" rel="noopener noreferrer" target="_blank" aria-label="微服务解决方案"><!--[--><!--]--><span>微服务解决方案</span><span><svg class="external-link-icon" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg><span class="external-link-icon-sr-only">在新窗口打开</span></span><!--[--><!--]--></a></li><li class="navbar-dropdown-item"><a class="external-link" href="https://www.aliyun.com/aliware/txc?spm=arthas.topbar.0.0.0" rel="noopener noreferrer" target="_blank" aria-label="分布式事务解决方案"><!--[--><!--]--><span>分布式事务解决方案</span><span><svg class="external-link-icon" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg><span class="external-link-icon-sr-only">在新窗口打开</span></span><!--[--><!--]--></a></li><li class="navbar-dropdown-item"><a class="external-link" href="https://www.aliyun.com/product/ahas?spm=artha
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>configuration</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>appender</span> <span class="token attr-name">name</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>APPLICATION<span class="token punctuation">"</span></span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ch.qos.logback.core.rolling.RollingFileAppender<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>file</span><span class="token punctuation">></span></span>app.log<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>file</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>rollingPolicy</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>fileNamePattern</span><span class="token punctuation">></span></span>mylog-%d{yyyy-MM-dd}.%i.txt<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>fileNamePattern</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>maxFileSize</span><span class="token punctuation">></span></span>100MB<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>maxFileSize</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>maxHistory</span><span class="token punctuation">></span></span>60<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>maxHistory</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>totalSizeCap</span><span class="token punctuation">></span></span>2GB<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>totalSizeCap</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>rollingPolicy</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>encoder</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>pattern</span><span class="token punctuation">></span></span>%logger{35} - %msg%n<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>pattern</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>encoder</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>appender</span><span class="token punctuation">></span></span>
|
|
|
|
|
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>appender</span> <span class="token attr-name">name</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ASYNC<span class="token punctuation">"</span></span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ch.qos.logback.classic.AsyncAppender<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>appender-ref</span> <span class="token attr-name">ref</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>APPLICATION<span class="token punctuation">"</span></span> <span class="token punctuation">/></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>appender</span><span class="token punctuation">></span></span>
|
|
|
|
|
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>appender</span> <span class="token attr-name">name</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>CONSOLE<span class="token punctuation">"</span></span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ch.qos.logback.core.ConsoleAppender<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>encoder</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>pattern</span><span class="token punctuation">></span></span>%-4relative [%thread] %-5level %logger{35} - %msg %n
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>pattern</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>charset</span><span class="token punctuation">></span></span>utf8<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>charset</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>encoder</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>appender</span><span class="token punctuation">></span></span>
|
|
|
|
|
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>root</span> <span class="token attr-name">level</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>INFO<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>appender-ref</span> <span class="token attr-name">ref</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>CONSOLE<span class="token punctuation">"</span></span> <span class="token punctuation">/></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>appender-ref</span> <span class="token attr-name">ref</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ASYNC<span class="token punctuation">"</span></span> <span class="token punctuation">/></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>root</span><span class="token punctuation">></span></span>
|
|
|
|
|
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>configuration</span><span class="token punctuation">></span></span>
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>使用<code>logger</code>命令打印的结果是:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@2062<span class="token punctuation">]</span>$ logger
|
|
|
|
|
name ROOT
|
|
|
|
|
class ch.qos.logback.classic.Logger
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
level INFO
|
|
|
|
|
effectiveLevel INFO
|
|
|
|
|
additivity <span class="token boolean">true</span>
|
|
|
|
|
codeSource file:/Users/hengyunabc/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar
|
|
|
|
|
appenders name CONSOLE
|
|
|
|
|
class ch.qos.logback.core.ConsoleAppender
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
target System.out
|
|
|
|
|
name APPLICATION
|
|
|
|
|
class ch.qos.logback.core.rolling.RollingFileAppender
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
<span class="token function">file</span> app.log
|
|
|
|
|
name ASYNC
|
|
|
|
|
class ch.qos.logback.classic.AsyncAppender
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
appenderRef <span class="token punctuation">[</span>APPLICATION<span class="token punctuation">]</span>
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>从<code>appenders</code>的信息里,可以看到</p><ul><li><code>CONSOLE</code> logger 的 target 是<code>System.out</code></li><li><code>APPLICATION</code> logger 是<code>RollingFileAppender</code>,它的 file 是<code>app.log</code></li><li><code>ASYNC</code>它的<code>appenderRef</code>是<code>APPLICATION</code>,即异步输出到文件里</li></ul><h3 id="查看指定名字的-logger-信息" tabindex="-1"><a class="header-anchor" href="#查看指定名字的-logger-信息" aria-hidden="true">#</a> 查看指定名字的 logger 信息</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@2062<span class="token punctuation">]</span>$ logger -n org.springframework.web
|
|
|
|
|
name org.springframework.web
|
|
|
|
|
class ch.qos.logback.classic.Logger
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
level null
|
|
|
|
|
effectiveLevel INFO
|
|
|
|
|
additivity <span class="token boolean">true</span>
|
|
|
|
|
codeSource file:/Users/hengyunabc/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="查看指定-classloader-的-logger-信息" tabindex="-1"><a class="header-anchor" href="#查看指定-classloader-的-logger-信息" aria-hidden="true">#</a> 查看指定 classloader 的 logger 信息</h3><p>注意 hashcode 是变化的,需要先查看当前的 ClassLoader 信息,提取对应 ClassLoader 的 hashcode。</p><p>如果你使用<code>-c</code>,你需要手动输入 hashcode:<code>-c <hashcode></code></p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@2062<span class="token punctuation">]</span>$ logger -c 2a139a55
|
|
|
|
|
name ROOT
|
|
|
|
|
class ch.qos.logback.classic.Logger
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
level DEBUG
|
|
|
|
|
effectiveLevel DEBUG
|
|
|
|
|
additivity <span class="token boolean">true</span>
|
|
|
|
|
codeSource file:/Users/hengyunabc/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar
|
|
|
|
|
appenders name CONSOLE
|
|
|
|
|
class ch.qos.logback.core.ConsoleAppender
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
target System.out
|
|
|
|
|
name APPLICATION
|
|
|
|
|
class ch.qos.logback.core.rolling.RollingFileAppender
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
<span class="token function">file</span> app.log
|
|
|
|
|
name ASYNC
|
|
|
|
|
class ch.qos.logback.classic.AsyncAppender
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
appenderRef <span class="token punctuation">[</span>APPLICATION<span class="token punctuation">]</span>
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>对于只有唯一实例的 ClassLoader 可以通过<code>--classLoaderClass</code>指定 class name,使用起来更加方便:</p><p><code>logger --classLoaderClass sun.misc.Launcher$AppClassLoader</code></p><ul><li>注: 这里 classLoaderClass 在 java 8 是 sun.misc.Launcher$AppClassLoader,而java 11的classloader是jdk.internal.loader.ClassLoaders$AppClassLoader。</li></ul><p><code>--classLoaderClass</code> 的值是 ClassLoader 的类名,只有匹配到唯一的 ClassLoader 实例时才能工作,目的是方便输入通用命令,而<code>-c <hashcode></code>是动态变化的。</p><h3 id="更新-logger-level" tabindex="-1"><a class="header-anchor" href="#更新-logger-level" aria-hidden="true">#</a> 更新 logger level</h3><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@2062<span class="token punctuation">]</span>$ logger --name ROOT --level debug
|
|
|
|
|
update logger level success.
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="指定-classloader-更新-logger-level" tabindex="-1"><a class="header-anchor" href="#指定-classloader-更新-logger-level" aria-hidden="true">#</a> 指定 classloader 更新 logger level</h3><p>默认情况下,logger 命令会在 SystemClassloader 下执行,如果应用是传统的<code>war</code>应用,或者 spring boot fat jar 启动的应用,那么需要指定 classloader。</p><p>可以先用 <code>sc -d yourClassName</code> 来查看具体的 classloader hashcode,然后在更新 level 时指定 classloader:</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@2062<span class="token punctuation">]</span>$ logger -c 2a139a55 --name ROOT --level debug
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="查看没有-appender-的-logger-的信息" tabindex="-1"><a class="header-anchor" href="#查看没有-appender-的-logger-的信息" aria-hidden="true">#</a> 查看没有 appender 的 logger 的信息</h3><p>默认情况下,<code>logger</code>命令只打印有 appender 的 logger 的信息。如果想查看没有<code>appender</code>的 logger 的信息,可以加上参数<code>--include-no-appender</code>。</p><p>注意,通常输出结果会很长。</p><div class="language-bash ext-sh line-numbers-mode"><pre class="language-bash"><code><span class="token punctuation">[</span>arthas@2062<span class="token punctuation">]</span>$ logger --include-no-appender
|
|
|
|
|
name ROOT
|
|
|
|
|
class ch.qos.logback.classic.Logger
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
level DEBUG
|
|
|
|
|
effectiveLevel DEBUG
|
|
|
|
|
additivity <span class="token boolean">true</span>
|
|
|
|
|
codeSource file:/Users/hengyunabc/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar
|
|
|
|
|
appenders name CONSOLE
|
|
|
|
|
class ch.qos.logback.core.ConsoleAppender
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
target System.out
|
|
|
|
|
name APPLICATION
|
|
|
|
|
class ch.qos.logback.core.rolling.RollingFileAppender
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
<span class="token function">file</span> app.log
|
|
|
|
|
name ASYNC
|
|
|
|
|
class ch.qos.logback.classic.AsyncAppender
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
appenderRef <span class="token punctuation">[</span>APPLICATION<span class="token punctuation">]</span>
|
|
|
|
|
|
|
|
|
|
name com
|
|
|
|
|
class ch.qos.logback.classic.Logger
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
level null
|
|
|
|
|
effectiveLevel DEBUG
|
|
|
|
|
additivity <span class="token boolean">true</span>
|
|
|
|
|
codeSource file:/Users/hengyunabc/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar
|
|
|
|
|
|
|
|
|
|
name com.alibaba
|
|
|
|
|
class ch.qos.logback.classic.Logger
|
|
|
|
|
classLoader sun.misc.Launcher<span class="token variable">$AppClassLoader</span>@2a139a55
|
|
|
|
|
classLoaderHash 2a139a55
|
|
|
|
|
level null
|
|
|
|
|
effectiveLevel DEBUG
|
|
|
|
|
additivity <span class="token boolean">true</span>
|
|
|
|
|
codeSource file:/Users/hengyunabc/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar
|
|
|
|
|
<span class="token punctuation">..</span>.
|
|
|
|
|
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div></div><!--[--><!--]--></div><footer class="page-meta right-menu-padding" data-v-8e2a76de><div class="meta-item edit-link"><a class="external-link meta-item-label" href="https://github.com/alibaba/arthas/edit/master/site/docs/doc/logger.md" rel="noopener noreferrer" target="_blank" aria-label="在 GitHub 上编辑此页"><!--[--><!--]--><span>在 GitHub 上编辑此页</span><span><svg class="external-link-icon" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg><span class="external-link-icon-sr-only">在新窗口打开</span></span><!--[--><!--]--></a></div><div class="meta-item last-updated"><span class="meta-item-label">Last Updated: </span><!----></div><div class="meta-item contributors"><span class="meta-item-label">贡献者: </span><span class="meta-item-info"><!--[--><!--[--><span class="contributor" title="email: hengyunabc@gmail.com">hengyunabc</span><!--[-->, <!--]--><!--]--><!--[--><span class="contributor" title="email: i@fatpandac.com">Fatpandac</span><!--[-->, <!--]--><!--]--><!--[--><span class="contributor" title="email: hollowman186@vip.qq.com">Hollow Man</span><!--[-->, <!--]--><!--]--><!--[--><span class="contributor" title="email: hollowman@hollowman.ml">Hollow Man</span><!----><!--]--><!--]--></span></div></footer><nav class="page-nav right-menu-padding" data-v-8e2a76de><p class="inner"><span class="prev"><a href="/doc/jvm.html" class="" aria-label="jvm"><!--[--><!--]--> jvm <!--[--><!--]--></a></span><span class="next"><a href="/doc/mbean.html" class="" aria-label="mbean"><!--[--><!--]--> mbean <!--[--><!--]--></a></span></p></nav><!--[--><!--]--></main><!--]--></div><!----><!--]--></div>
|
|
|
|
|
<script type="module" src="/assets/app.e9adadd6.js" defer></script>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|