You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Quarkus GELF日志配置应用名称与版本及避免重复配置

Quarkus GELF 日志携带应用名与版本的优化配置方案

一、避免版本与名称重复配置:复用Maven属性

通过Maven资源过滤+占位符引用,直接复用pom.xml中的配置,彻底告别重复维护。

1. 开启Maven资源过滤

在pom.xml的<build>节点下添加配置,确保application.yml中的Maven占位符在构建时被自动替换:

<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
            <includes>
                <include>application.yml</include>
            </includes>
        </resource>
    </resources>
    <!-- 保留原有build配置 -->
</build>

2. 在application.yml中引用Maven属性

直接用${project.artifactId}(对应pom中的artifactId)作为应用名,${project.version}作为版本,配置GELF的额外字段:

quarkus:
  log:
    level: INFO
    handler:
      gelf:
        enabled: true
        host: localhost
        port: 12201
        include-log-message-parameters: false
        additional-field:
          app_name:
            value: "${project.artifactId}"
            type: string
          app_version:
            value: "${project.version}"
            type: string

构建后,占位符会自动替换为pom.xml中对应的实际值,无需手动同步版本或名称。

二、更灵活的配置:复用Quarkus内置应用属性

Quarkus默认会从pom.xml加载quarkus.application.name(默认值为artifactId)和quarkus.application.version(默认值为pom的version),你可以直接在GELF配置中引用这些内置属性:

quarkus:
  # 可选:若需自定义应用名,可在此覆盖默认的artifactId
  # application:
  #   name: "custom-testApp"
  log:
    level: INFO
    handler:
      gelf:
        enabled: true
        host: localhost
        port: 12201
        include-log-message-parameters: false
        additional-field:
          app_name:
            value: "${quarkus.application.name}"
            type: string
          app_version:
            value: "${quarkus.application.version}"
            type: string

这种方式的优势是:如果后续通过环境变量或其他方式修改quarkus.application.name/version,日志中的字段会自动同步,无需修改GELF配置。

三、关于之前配置未生效的说明

你添加的quarkus.application.name和version本身是生效的,但GELF日志组件不会自动将这些Quarkus内置属性添加到日志字段中,必须通过additional-field明确配置引用这些属性,才能让它们出现在发送给Logstash的GELF日志里。

内容的提问来源于stack exchange,提问作者Matthew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 01:18:32