Nó de geração de relatórios: Resolver diferenciação de maiúsculas e minúsculas do nome do coletor de dados após ServerDR
Summary: Depois de reimplementar um nó de geração de relatórios e executar a recuperação de desastres do servidor (ServerDR), os novos dados não são sincronizados porque o nome do coletor de dados diferencia maiúsculas de minúsculas. O banco de dados armazenou "data-collector@report" (minúsculas) enquanto o nome de host do nó é maiúsculo. O log mostra java.net.ConnectException: Falha ao conectar a localhost/127.0.0.1:18455. Resolva reimplantando com o nome do host no mesmo caso que o ServerDR original e execute novamente. Ou atualize o data_collector_name no PostgreSQL (tabela collected_system) com o uso correto de maiúsculas e minúsculas e reinicie o serviço do coletor de dados. ...
Symptoms
Problemas observados após a geração de relatórios de reimplementação de nó e ServerDR.
Os seguintes sintomas foram identificados:
- Novos dados coletados após a execução do ServerDR não aparecem em nenhum relatório.
- Somente os dados históricos permanecem visíveis no Report Browser.
- Os registros de serviço do coletor de dados contêm uma falha de conexão.
- Uma consulta ao banco de dados mostra o nome do coletor de dados armazenado em minúsculas/maiúsculas (por exemplo,
data-collector@report). - O nome de host atual do nó de geração de relatórios está em maiúsculas e minúsculas (maiúsculas vs. minúsculas) diferente do nome registrado no banco de dados.
Entradas de log relevantes de /var/log/reporting/logs/data-collector/data-collector.log :
2026-02-10T06:45:00.006Z INFO [] [DataCollectionQuartzScheduler_Worker-1] [c.e.b.d.c.s.DataCollectionJob.execute(17)] - Start to perform data collection.
2026-02-10T06:45:00.007Z INFO [] [DataCollectionQuartzScheduler_Worker-1] [c.e.b.d.c.s.d.c.DataCollectionService.doCollect(93)] - Query systems by data collector data-collector@REPORT.
2026-02-10T06:45:00.113Z ERROR [] [DataCollectionQuartzScheduler_Worker-1] [c.e.b.d.c.a.CollectedSystemApiServiceImpl.findAllByDataCollectorName(227)] - Error finding all by data collector name: data-collector@gcntnb05
java.net.ConnectException: Failed to connect to localhost/127.0.0.1:18455
at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.kt:297)
at okhttp3.internal.connection.RealConnection.connect(RealConnection.kt:207)
at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.kt:226)
at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.kt:106)
at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.kt:74)
at okhttp3.internal.connection.RealCall.initExchange$okhttp(RealCall.kt:255)
Comando usado para inspecionar os registros do coletor no banco de dados:
psql postgresql://reporting:Password123\!@127.0.0.1:9003/collected_business_data -c "select * from public.collected_system"
Cause
Disparidade do nome do coletor de dados com diferenciação de maiúsculas e minúsculas
O problema ocorre porque o data_collector_name O banco de dados do nó de geração de relatórios diferencia maiúsculas de minúsculas. Depois de reimplementar o nó de geração de relatórios, seu nome de host fica em maiúsculas, enquanto o nome de host original registrado durante o ServerDR estava em minúsculas. Essa discrepância impede que o serviço do coletor de dados localize a entrada correta, causando falhas de sincronização de dados.
- A entrada do banco de dados para
data_collector_nameé armazenado em letras minúsculas (por exemplo,data-collector@report ). - O nome de host atual do nó de geração de relatórios é maiúsculo, mas o nome de host anterior do ServerDR é minúsculo (por exemplo,
REPORT). - Como a comparação de nomes diferencia maiúsculas de minúsculas, o serviço não pode corresponder o nome armazenado com o nome de host atual.
Erro de conexão resultante
2026-02-10T06:45:00.113Z ERROR [] [DataCollectionQuartzScheduler_Worker-1] [c.e.b.d.c.a.CollectedSystemApiServiceImpl.findAllByDataCollectorName(227)] - Error finding all by data collector name: data-collector@REPORT
java.net.ConnectException: Failed to connect to localhost/127.0.0.1:18455
at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.kt:297)
at okhttp3.internal.connection.RealConnection.connect(RealConnection.kt:207)
at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.kt:226)
at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.kt:106)
at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.kt:74)
at okhttp3.internal.connection.RealCall.initExchange$okhttp(RealCall.kt:255)Resolution
Recupere os dados do nó de geração de relatórios após o ServerDR.
Opção 1 – Reimplementar o nó de geração de relatórios com o nome de host correto.
Use esse método quando preferir uma reimplementação limpa.
- Certifique-se de que o novo nome de host do nó de geração de relatórios corresponda ao nome de host original **exatamente**, incluindo maiúsculas e minúsculas (por exemplo, RELATÓRIO vs. relatório).
- Reimplemente o nó de geração de relatórios usando o nome de host correto.
- Execute novamente o ServerDR (Server Disaster Recovery) no nó de geração de relatórios.
Opção 2 – Atualizar o nome do coletor de dados diretamente no banco de dados
Use esse método para evitar uma reimplementação completa.
- Faça log-in no nó de geração de relatórios com os privilégios apropriados.
- Verifique as entradas atuais do coletor de dados:
psql postgresql://reporting:[PASSWORD]@127.0.0.1:9003/collected_business_data -c "SELECT * FROM public.collected_system;"
- Identifique a linha que contém o nome de host antigo e observe seu valor de endereço (por exemplo, 192.168.1.15 ).
- Para corresponder ao caso do nome de host atual:
postgresql://reporting:[PASSWORD]@127.0.0.1:9003/collected_business_data -c "UPDATE public.collected_system SET data_collector_name='data-collector@[HOSTNAME]' WHERE address='[IP_ADDRESS]';"
Substitua [HOSTNAME] pelo nome de host exato do nó de geração de relatórios (diferencia maiúsculas de minúsculas) e [IP_ADDRESS] pelo endereço identificado na etapa 2. - Reinicie o serviço do coletor de dados para aplicar a alteração:
systemctl restart data-collector.service
Verificação
- Verifique o log do coletor de dados para obter consultas bem-sucedidas:
cat /var/log/reporting/logs/data-collector/data-collector.log | grep -i "Start to perform data collection"
NãoConnectExceptionerros devem aparecer. - Aguarde cerca de uma hora, abra o Report Browser e verifique se os dados recém-coletados são exibidos junto com os dados históricos.
data_collector_name O campo diferencia maiúsculas de minúsculas. Uma disparidade entre o caso do nome de host e a entrada do banco de dados impede a sincronização de dados.