繁体   English   中英

春季启动。错过/日志文件端点

[英]Spring Boot. Missed /logfile endpoint

我在Spring启动应用程序中遇到logfile端点问题 - 它已经错过了。 这是我的应用程序配置:

server:
  port: 8081

info:
  app:
    name: Foo Service
    component: Foo Service

secret-message: "{cipher}a702d2b5b0c6bc2db67e7d487c6142e7c23254108503d1856ff516d0a64bbd3663a2514a86647dcf8467d042abcb8a6e"

logging:
  file: "target/foo.log"

management:
  context-path: "/actuator"

spring:
  application:
    name: "foo-service"
  boot:
    admin:
      url: http://spring-boot-admin-url:9000
      client:
        health-url: http://app-url:8081/actuator/health
        management-url: http://app-url:8081/actuator
        service-url: http://app-url:8081
        metadata:
          user.name: "${security.user.name}"
          user.password:  "${security.user.password}"
      username: "${security.user.name}"
      password: "${security.user.password}"

security:
  user:
    name: name
    password: password

弹簧启动器启动器执行器版本为1.5.2 另外/info/health端点也可以很好地工作。

你有404(未找到)或401(未经授权)吗? 如果是后者,请添加

endpoints:
   logfile:
      sensitive: false

否则,您可以通过将级别设置为DEBUG并搜索“logfile”来启用自动配置日志记录。 这可能会为您提供一些提示,说明端点是否以及为何未启用。

logging.level.org.springframework.boot.autoconfigure.logging=DEBUG

如果您未经授权使用401,请先阅读本文档

默认情况下,所有敏感HTTP端点都是安全的,这样只有具有ACTUATOR角色的用户才能访问它们。 使用标准HttpServletRequest.isUserInRole方法强制执行安全性。

[Tip]如果你想要与ACTUATOR不同的东西,请使用management.security.roles属性。

如果要在防火墙后部署应用程序,您可能希望无需身份验证即可访问所有执行器端点。 您可以通过更改management.security.enabled属性来执行此操作:

application.properties。

management.security.enabled = FALSE

如果得到的是404,请确保在application.properties中添加logging.file或logging.path属性,如Endpoints (logfile)文档中所述:

返回日志文件的内容( 如果已设置logging.file或logging.path属性 )。 支持使用HTTP Range标头来检索部分日志文件的内容。

我不明白为什么接受的答案有效,但在大多数情况下,这就是logfile端点给出404响应的原因。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM