当前位置: 首页 > 知识库问答 >
问题:

使用Spring Boot更改生成的CXF服务器的日志级别

越新霁
2023-03-14

我已经使用wsdl2java生成了一个CXF服务器,由于外部原因,我面临着由此产生的web服务的问题。为了正确地调试它,我想将这个CXF服务器的日志级别从默认更改为非常详细的(调试?)。

我已经检查了这里和那里,但我不明白,而且解决方案似乎不适合我的代码。我不知道将给定的代码片段放在哪里,而且我没有使用XML文件配置我的Spring应用程序。

以下是wsdl2java生成的ValidationPort\u BasicHttpBindingValidation\u服务器:

// I have edited this WS a little to run it with spring instead of a main.
@Component
@Slf4j
public class ValidationPort_BasicHttpBindingValidation_Server {
    public final static String ADDRESS = "http://localhost/PRE-VAROTH/Validation/V1";

    protected ValidationPort_BasicHttpBindingValidation_Server() {
        log.info("Starting Server");
        Endpoint.publish(ADDRESS, new BasicHttpBinding_ValidationImpl());
    }
}

我的日志框架是Slf4j,我希望将日志传递给该框架。我想我可以使这部分正常工作,但当我启动服务器并尝试示例SOAP请求时,我在日志或控制台上看不到任何东西......

这是我的Spring Boot切入点:

@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

    @Value("${server.http.port}")
    private int serverPortHttp;

    @Value("${server.port}")
    private int serverPortHttps;

    private Connector createHttpConnector() {
        Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
        connector.setScheme("http");
        connector.setSecure(false);
        connector.setPort(serverPortHttp);
        connector.setRedirectPort(serverPortHttps);
        return connector;
    }
}

如何正确更改此CXF服务器的日志记录级别?

共有1个答案

武友樵
2023-03-14

默认情况下,Spring Boot将日志记录配置为以INFO级别登录到控制台。要将日志记录级别设置为DEBUG,您应该在application.properties中创建以logging.level为前缀的属性:

logging.level.root=DEBUG

可以在此处找到有关Spring Boot日志记录的更多信息。

 类似资料:
  • 问题内容: 我在这里浏览了python日志记录类的教程,没有发现任何东西可以让我为同一输出制作多个不同级别的日志。最后,我想拥有三个日志:( 调试级别) (信息级别) (错误级别) 有没有一种方法可以在一个脚本中为同一输入生成多个日志文件? <------------- UPDATE#1 --------------------------> 因此,在实现@robert的建议时,我现在有一个小问题

  • IBM WAS8允许通过API在运行时更改日志级别。如何在不改变server.xml的情况下对IBM Liberty server做同样的事情?我认为这是可能的,通过定义自定义API,例如RESTendpoint将做到这一点。供应商推荐这样做吗?

  • 在我的应用程序中,我想用业务逻辑记录请求和响应。应用程序使用SOAP通信执行一些后端逻辑,这就是我要记录的内容。 不幸的是,在同一个应用程序中,我必须提供数据(平均为4个请求/秒),让我们假设这个服务名称是PlatformDataService。 如何仅为一个web服务关闭cxf日志记录? 环境: JDK 8 cxf 2.7.14 AS:Jboss EAP 6.4 我通过以下方式打开服务器登录:

  • 我正在我的应用程序中使用 ESAPI 记录器。Logger logger= ESAPI.getLogger(ABC.class) 在ABC课堂上。java,我们使用INFO级别打印日志。根据我们所知的定义,Info接受: 两个参数:信息(Logger.EventType type, java.lang.字符串消息) 三个参数:信息(Logger.EventType type, java.lang.

  • 我一直在尝试更改用户日志的日志级别,即出现在

  • 我怎么能那样做 直接使用JDK日志记录(我看到可以使用ResourceBundle,但我没有设法使其工作,而且我也不知道该文件中的内容) 使用SLF4 facade(我想这将意味着调整SLF4J的函数,它是我用来获取记录器的函数)