Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

AOT health chek 404 Unknown check ID for 4.2.1

Abierto
#849 2 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
25/100
Tipo de issue
Error
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
java, spring-boot
Área
backend, cloud

Línea de trabajo

Comienza con org.springframework.cloud.consul.discovery.TtlScheduler, especialmente con las llamadas en TtlScheduler.java en las líneas 131 y 156, y compáralas con el registro de registro y el error de AgentConsulClient. Reproduce la aplicación AOT usando la configuración de heartbeat mostrada; el trabajo estará terminado cuando el heartbeat programado ya no reciba el error 404 Unknown check ID.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

waiting-for-triage

spring:
application:
name: demo
cloud:
consul:
discovery:
preferIpAddress: true
heartbeat:
enabled: true

2025-04-02T22:59:09.530+08:00 INFO 7280 --- [demo] [ main] com.example.demo.DemoApplication : Starting AOT-processed DemoApplication using Java 22.0.1 with PID 7280 (D:\kn\demo\build\native\nativeCompile\demo.exe started by wdubaiyu in D:\kn\demo\build\native\nativeCompile)
2025-04-02T22:59:09.530+08:00 INFO 7280 --- [demo] [ main] com.example.demo.DemoApplication : No active profile set, falling back to 1 default profile: "default"
2025-04-02T22:59:09.531+08:00 INFO 7280 --- [demo] [ main] o.s.cloud.context.scope.GenericScope : BeanFactory id=7389954d-47ba-315d-8456-723ce320eccc
2025-04-02T22:59:09.557+08:00 INFO 7280 --- [demo] [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port 8080 (http)
2025-04-02T22:59:09.558+08:00 INFO 7280 --- [demo] [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2025-04-02T22:59:09.558+08:00 INFO 7280 --- [demo] [ main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.39]
2025-04-02T22:59:09.563+08:00 INFO 7280 --- [demo] [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2025-04-02T22:59:09.563+08:00 INFO 7280 --- [demo] [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 33 ms
2025-04-02T22:59:10.582+08:00 INFO 7280 --- [demo] [ main] o.s.cloud.commons.util.InetUtils : Cannot determine local hostname
2025-04-02T22:59:11.599+08:00 INFO 7280 --- [demo] [ main] o.s.cloud.commons.util.InetUtils : Cannot determine local hostname
2025-04-02T22:59:11.607+08:00 WARN 7280 --- [demo] [ main] iguration$LoadBalancerCaffeineWarnLogger : Spring Cloud LoadBalancer is currently working wit
h the default cache. While this cache implementation is useful for development and tests, it's recommended to use Caffeine cache in production.You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
2025-04-02T22:59:11.610+08:00 INFO 7280 --- [demo] [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port 8080 (http) with context path '/'
2025-04-02T22:59:11.611+08:00 INFO 7280 --- [demo] [ main] o.s.c.c.s.ConsulServiceRegistry : Registering service with consul: NewService{id='de
mo', name='demo', tags=[], address='localhost', meta={secure=false}, port=8080, enableTagOverride=null, check=Check{script='null', dockerContainerID='null', shell=
'null', interval='null', ttl='30s', http='null', method='null', header=null, tcp='null', timeout='null', deregisterCriticalServiceAfter='null', tlsSkipVerify=null, status='null', grpc='null', grpcUseTLS=null}, checks=null}
2025-04-02T22:59:11.617+08:00 ERROR 7280 --- [demo] [pool-5-thread-1] o.s.s.s.TaskUtils$LoggingErrorHandler : Unexpected error occurred in scheduled task

com.ecwid.consul.v1.OperationException: OperationException(statusCode=404, statusMessage='Not Found', statusContent='Unknown check ID "service:demo". Ensure that the check ID is passed, not the check name.')
at com.ecwid.consul.v1.agent.AgentConsulClient.agentCheckPass(AgentConsulClient.java:211) ~[demo.exe:na]
at com.ecwid.consul.v1.ConsulClient.agentCheckPass(ConsulClient.java:270) ~[demo.exe:na]
at org.springframework.cloud.consul.discovery.TtlScheduler$ConsulHeartbeatTask.lambda$run$0(TtlScheduler.java:131) ~[na:na]
at org.springframework.cloud.consul.discovery.TtlScheduler$ConsulHeartbeatTask.possiblyReregisterIfFails(TtlScheduler.java:156) ~[na:na]
at org.springframework.cloud.consul.discovery.TtlScheduler$ConsulHeartbeatTask.run(TtlScheduler.java:131) ~[na:na]
at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) ~[na:na]
at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) ~[na:na]
at [email protected]/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:358) ~[demo.exe:na]
at [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) ~[na:na]
at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[demo.exe:na]
at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[na:na]
at [email protected]/java.lang.Thread.runWith(Thread.java:1583) ~[demo.exe:na]
at [email protected]/java.lang.Thread.run(Thread.java:1570) ~[demo.exe:na]
at org.graalvm.nativeimage.builder/com.oracle.svm.core.thread.PlatformThreads.threadStartRoutine(PlatformThreads.java:853) ~[demo.exe:na]
at org.graalvm.nativeimage.builder/com.oracle.svm.core.thread.PlatformThreads.threadStartRoutine(PlatformThreads.java:829) ~[demo.exe:na]

Lenguaje dominante
Java
Estrellas
821
Forks
540
Merge medio
14 h 22 min
PR fusionados (30 d)
16

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de spring-cloud/spring-cloud-consul

Todos los issues de spring-cloud/spring-cloud-consul

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.