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

应用日志优化建议

Abierto
#238 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
25/100
Tipo de issue
Nueva funcionalidad
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
java

Línea de trabajo

Start by tracing the three proposed entry points: the global /** HTTP interceptor, KeyCallable for asynchronous MDC context, and CacheBaseJob.execute for Quartz jobs. Review how MDC and TransIdUtils are currently used, then define a focused scope and acceptance checks for correlating related logs without losing context across threads or scheduled tasks.

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

Descripción

由于项目采取大量的异步线程池执行,所以说一个流程的日志散落到了多行,线上出现异常的时候不好定位问题,建议给每个流程添加一个追踪id,用于在出现异常时能很快把相关日志全部查出,暂时看到了三个切入点:
1.http请求可添加一个全局的/**的拦截器
MDC.put("TansId", TransIdUtils.generateDateTimeInnerTransId());
2.异步线程池mdc跟踪,KeyCallable中添加变量mdc上下文内容
private final Map<String, String> logContextMap;
logContextMap = MDC.getCopyOfContextMap();
if (this.logContextMap != null) { MDC.setContextMap(this.logContextMap); }
3.quartz定时任务,CacheBaseJob的excute函数中添加追踪id
MDC.put("TansId", TransIdUtils.generateDateTimeInnerTransId());
4.应用日志异步打印,实时刷盘会局限于磁盘io性能
5.日志格式、存放路径之类的可配置化

Lenguaje dominante
HTML
Estrellas
9k
Forks
2k
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

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 sohutv/cachecloud

Todos los issues de sohutv/cachecloud

Issues similares

Más issues de Backend & API Design

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.