Metabase 日志
默认情况下,Metabase记录大量信息。它使用Log4j 2,因此您可以配置Metabase记录的信息量。
配置日志级别
以下是 Metabase 的默认日志配置文件 默认日志配置。您可以通过在运行 Metabase 时传递一个 -Dlog4j.configurationFile
参数来覆盖此 XML 文件,并告诉 Metabase 使用您自己的日志配置文件。例如,如果您的自定义 XML 文件位于 /path/to/custom/log4j2.xml
,您可以如此使用它:
java -Dlog4j.configurationFile=file:/path/to/custom/log4j2.xml -jar metabase.jar
要开始自定义日志,请复制默认的 log4j2.xml 文件 并调整它以满足您的需求。您需要重新启动 Metabase 才能使文件更改生效。有关日志级别的信息,请参阅 Log4j 的文档 日志级别。
您可以为应用程序的不同区域设置不同的日志级别,例如:
<Loggers>
<Logger name="metabase" level="INFO"/>
<Logger name="metabase-enterprise" level="INFO"/>
<Logger name="metabase.plugins" level="DEBUG"/>
<Logger name="metabase.server.middleware" level="DEBUG"/>
<Logger name="com.mchange" level="ERROR"/>
<!-- Example: Add trace logging to the Metabase analysis process, which can help debugging trouble with syncing, fingerprinting and scanning -->
<Logger name="metabase.sync" level="TRACE"/>
<Root level="WARN">
<AppenderRef ref="STDOUT"/>
</Root>
</Loggers>
查看 如何读取日志。
Jetty 日志
您可以通过将日志级别设置为 DEBUG
来配置 Metabase 的 Web 服务器以在日志中提供更多详细信息。但请记住,Jetty 的调试日志可能非常详细,这可能使您难以找到所需的数据。
要获取 Jetty 日志,请将以下行添加到 Log4J2 XML 文件中的
<Logger name="org.eclipse.jetty" level="DEBUG"/>
在 Docker 中使用 Log4j 2
在运行 Metabase Docker 映像之前,您需要传递自定义的 log4j.configurationFile
参数。将 JAVA_OPTS=-Dlog4j.configurationFile=file:/path/to/custom/log4j2.xml
添加到容器的环境变量中,如下所示:
docker run -p 3000:3000 -v $PWD/my_log4j2.xml:/tmp/my_log4j2.xml -e JAVA_OPTS=-Dlog4j.configurationFile=file:///tmp/my_log4j2.xml metabase/metabase`
禁用表情符号或彩色日志
默认情况下,Metabase 将在日志中包含表情符号。您可以使用 MB_EMOJI_IN_LOGS
环境变量来禁用表情符号。
配置表情符号日志
export MB_EMOJI_IN_LOGS="false"
java -jar metabase.jar
阅读其他 Metabase 版本的文档。