gpt4 book ai didi

java - 如何将slf4j日志更改为html链接

转载 作者:太空宇宙 更新时间:2023-11-04 12:58:47 24 4
gpt4 key购买 nike

我的java代码为:

final URI myUri = new URIBuilder()
.setScheme(azkabanHostProtocol)
.setHost(azkabanHost + ":" + azkabanPort)
.setPath("/executor")
.setParameter("execid", executionID).build();

logger.info(myUri.toString());

我想以 url/html 链接的形式将 myURI 显示到 Azkaban 的日志中,以便通过单击 url 将其打开。我正在使用 log4j 进行日志记录。

最佳答案

您可以创建自己的布局类来扩展 HTMLLayout .

然后重写 format 方法以满足您的需求。

实际实现有以下几行,您可能需要替换它们:

sbuf.append(Transform.escapeTags(event.getRenderedMessage()));

看到消息字符串中的所有标签默认都会被转义。

您的版本可能基于一种标记,例如 String mark = "[LINK]";

if(event.getRenderedMessage().startsWith(mark)){
String uri = event.getRenderedMessage().substring(mark.length());
String link = "<a href=\"" + uri + "\">" + uri + "</a>";
sbuf.append(link);
}
else
sbuf.append(Transform.escapeTags(event.getRenderedMessage()));

你可以这样调用记录器:

logger.info(mark + myUri.toString());

以下主题将帮助您使用自定义 HTMLLayout :how to change htmllayout in log4j2

这里是默认 HTMLLayout 的源代码,作为首发。

关于java - 如何将slf4j日志更改为html链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35127537/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com