Questão de Programação — Servidores de aplicação — FGV 2024
Programação›Servidores de aplicação
Código
fg098529
Banca
FGV
Órgão
TJ-MS
Ano
2024
Nível
Superior
Cargo
Técnico de Nível Superior - Analista de Sistemas Computacionais - Analista de Sistemas
A analista Laura está configurando o log de um servidor Tomcat. Ela optou por utilizar a implementação de log padrão do Tomcat, que é baseada em loggers e handlers. Optou ainda por concentrar toda a configuração no arquivo global de configuração de log. Os requisitos de log passados para a analista exigem que determinada classe de handler apresente duas instâncias com configurações diferentes.Para configurar de forma distinta dois handlers de uma mesma classe, Laura deve:
Ahabilitar o atributo global useParentHandlers;
Badicionar aos nomes dos handlers o prefixo “multi”;
Cadicionar ao nome de cada handler um prefixo diferente;
Ddefinir em cada handler um valor diferente para o atributo level;
Edefinir em cada handler um valor diferente para o atributo prefix.
Revelar gabarito e comentário▾
GabaritoC — adicionar ao nome de cada handler um prefixo diferente;
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Configuração de logging no Apache Tomcat
Gabarito: letra C. Para configurar dois handlers da mesma classe com configurações diferentes no Tomcat, é necessário adicionar um prefixo único a cada handler. O mecanismo de logging do Tomcat (baseado em java.util.logging) utiliza um prefixo antes do nome do handler para identificar instâncias distintas. Por exemplo, no arquivo logging.properties, pode-se definir:
1catalina.org.apache.juli.AsyncFileHandler.level = FINE
1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.AsyncFileHandler.level = INFO
2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
O prefixo ("1catalina" e "2localhost") diferencia as instâncias. A opção C é a única que atende a esse requisito.
Alternativa A — ❌ Incorreta
Habilitar useParentHandlers (atributo global) não cria instâncias distintas; apenas define se os handlers herdados pelo logger pai devem ser utilizados.
Alternativa B — ❌ Incorreta
Adicionar o prefixo "multi" (prefixo fixo) a todos os handlers não os diferencia; seria necessário um prefixo variado.
Alternativa C — ✅ Correta ⟵ GABARITO
Conforme explicado, cada handler precisa de um prefixo diferente para ser tratado como instância separada.
Alternativa D — ❌ Incorreta
Definir valores diferentes para o atributo level apenas altera o nível de log, mas não resolve a necessidade de identificar múltiplas instâncias da mesma classe de handler sem prefixos distintos.
Alternativa E — ❌ Incorreta
O atributo prefix não é um identificador de instância de handler; refere-se ao prefixo dos arquivos de log gerados, não ao nome do handler.
NÃO CAIA NESSA!
A banca tenta confundir com a opção D (alterar o level). Embora handlers diferentes possam ter níveis diferentes, a distinção entre eles exige prefixos únicos, não apenas atributos diferentes.