Spring MVC'да DEBUG даражасида журнал юритишни инсон учун минимал ва қулай тарзда, мувофиқ ва юқори аҳамиятга эга бўлган маълумотларни таъминлайдиган тарзда мўлжалланган. У қайта-қайта қўлланиладиган юқори аҳамиятли маълумотларга диққат қаратади, холоски, бошқа маълумотлар маьлумотларнинг аниқ муаммосини налачиларга қўлланилади.
TRACE даражасидаги журнал юритиш умумий қоидалар DEBUG билан бир хилда бўлади (ва масалан, ортиқча юкламаслик керак), аммо ҳар қандай муаммони таҳлил қилиш мумкин. Шунингдек, журналдаги баъзи хабарлар TRACE ва DEBUG да турли даражадаги деталларни кўрсатиши мумкин.
Муваффақиятли журнал юритиш журналлардан фойдаланиш тажрибасига боғлиқ. Агар сиз эълон қилинган мақсадларга мос келмайдиган бирор нарсани пайқасангиз, илтимос, бизга хабар беринг.
Махфий маълумотлар
DEBUG ва TRACE даражасидаги журнал юритишда махфий маълумотларни қайд этиш мумкин. Шунинг учун сўровларнинг параметрлари ва сарлавҳалари одатда маскирланади, ва уларнинг тўлиқ журнал юритишини фаоллаштириш учун DispatcherServlet учун enableLoggingRequestDetails хоссаси орқали аниқ ёзилиш керак.
Қуйидаги мисолда Java конфигурацияси билан буни қандай амалга ошириш мумкинлиги кўрсатилган:
public class MyInitializer
extends AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Class<?>[] getRootConfigClasses() {
return ... ;
}
@Override
protected Class<?>[] getServletConfigClasses() {
return ... ;
}
@Override
protected String[] getServletMappings() {
return ... ;
}
@Override
protected void customizeRegistration(ServletRegistration.Dynamic registration) {
registration.setInitParameter("enableLoggingRequestDetails", "true");
}
}
class MyInitializer : AbstractAnnotationConfigDispatcherServletInitializer() {
override fun getRootConfigClasses(): Array<Class<*>>? {
return ...
}
override fun getServletConfigClasses(): Array<Class<*>>? {
return ...
}
override fun getServletMappings(): Array<String> {
return ...
}
override fun customizeRegistration(registration: ServletRegistration.Dynamic) {
registration.setInitParameter("enableLoggingRequestDetails", "true")
}
}
GO TO FULL VERSION