Histórico da Página
| Expandir | ||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||
01. COMO RESOLVER O PROBLEMA DE DADOS QUE NÃO ESTÃO APARECENDO NO APP MINHA BORRACHARIA1. Verificar se os Serviços Estão Funcionando NormalmenteAntes de iniciar o processo, é essencial garantir que todos os serviços estão funcionando normalmenteenvolvidos estão operando sem problemas.
2. Efetuar a Consulta na Base de Dados de Origem (BIOENERGIA)Realize uma consulta na base origem, e guardarde dados de origem para obter a quantidade de registros . Ex:presentes na tabela relevante. Exemplo de comando para consulta:
Guarde a quantidade de registros retornada para referência. 3. Efetuar a Consulta na Base de Dados de Destino (Minha Borracharia)Em seguida, faça a mesma consulta na base de destino, e guardar a quantidade de registros. Ex:dados de destino, para comparar os dados. Exemplo de comando para consulta:
Guarde a quantidade de registros da base de destino para comparação. 4. Verificar se no RabbitMQ (gerenciador de mensagens) existe itens a serem processados.método 1: pelo Painel de Administração (Management UI):
método 2: Usando a CLI do RabbitMQ ( |
| Bloco de código | ||||
|---|---|---|---|---|
| ||||
rabbitmqctl list_queues name messages_ready messages_unacknowledged |
- messages_ready: quantidade de mensagens aguardando na fila.
- messages_unacknowledged: mensagens que foram entregues a um consumidor, mas ainda não processadas ou confirmadas.
5. Verificar Diferença de Registros Entre as Tabelas
Compare o número de registros entre as tabelas de origem (BIOENERGIA) e destino(Minha Borracharia). Caso a tabela de destino tenha menos registros que a tabela de origem, siga as etapas abaixo:
- Verifique na base de dados de origem (BIOENERGIA) se há erros de dependência ou a falta de envio do registro na tabela TCC_EVENT, especialmente na coluna MESSAGE.
Exemplo de consulta para verificar dependência:
| Bloco de código | ||||
|---|---|---|---|---|
| ||||
SELECT * FROM TCC_EVENT WHERE TABLE_NAME = 'PNEU' AND ( STATUS IS NOT NULL OR STATUS LIKE ('ERRO%') ); |
Aqui está o que cada status significa:
- PROCESSED: Indica que o dado foi enviado e processado com sucesso.
- UNPROCESSED: Indica que o dado ainda está na fila de processamento e será enviado em breve.
- ERROR: Este status significa que ocorreram falhas no envio, mas serão realizadas até 3 novas tentativas para processar o dado.
- ERROR_EXCEEDED: Indica que todas as tentativas de envio foram excedidas e o dado não será mais processado devido a um problema. Os erros mais comuns incluem:
- TC_ORIGIN_ID inválido: Tabela não registrada para envio de dados.
- Entidade sem originId: Exemplo: "Tabela: TABELA_EXEMPLO - ID: ID_EXEMPLO". Esse erro ocorre quando um registro de chave estrangeira ainda não foi enviado.
- Product Connection Schema não encontrado: Exemplo: "Produto: PRODUTO - Schema: EsquemaExemplo". Esse erro ocorre quando a definição do esquema não está relacionada ao produto.
6. Simular um Update Dependendo da Falta de Registros ou Dependências
Caso 1: Falta de Dependência (Chave Estrangeira - FK)
Se houver dependências ausentes (valores de chave estrangeira não correspondem), simule um UPDATE para corrigir a chave estrangeira.
Exemplo de comando para simular o update da chave estrangeira modelo de pneu:
| Bloco de código | ||||
|---|---|---|---|---|
| ||||
UPDATE MODELO_PNEU SET TC_ORIGIN_ID = TC_ORIGIN_ID; |
Essa simulação força o envio dos registros de modelos de pneu da tabela de origem (BIOENERGIA) para a tabela de destino (Minha Borracharia), corrigindo assim a dependência da chave estrangeira para os registros de pneu.
Caso 2: Falta de Registro
Se for detectada a falta de um registro específico, simule um UPDATE no próprio registro da tabela de origem (BIOENERGIA) para refletir a correção.
Exemplo de comando para simular o update do registro:
| Bloco de código | ||||
|---|---|---|---|---|
| ||||
UPDATE PNEUS SET TC_ORIGIN_ID = TC_ORIGIN_ID WHERE CD_PNEU = '12345'; |
Esse UPDATE simula a inserção ou alteração dos dados que estão ausentes na tabela de destino(Minha Borracharia).
7. Enviar os Registros Novamente e Atualizar o Aplicativo
Após corrigir as dependências ou registros ausentes e garantir que todos os dados necessários estão na base de dados de destino (Minha Borracharia), execute novamente o processo de sincronização de dados no aplicativo para refletir as alterações realizadas.
4. Se na tabela da base de dados de destino, estiver com menos informações que a tabela da base de origem, verificar na base de origem a tabela TCC_EVENT se está ocorrendo algum erro de dependência na coluna STATUS.
5. Se no item (4) a resposta for sim, efetuar a simulação de update para enviar as dependências restantes.
6. Efetuar o envio dos registros novamente e atualizar o aplicativo| Expandir | ||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||
02. COMO CRIAR E INSTALAR UM CERTIFICADO HTTPS AUTOASSINADO NO DISPOSITIVOPara criar e instalar um certificado HTTPS auto assinado no dispositivo 1.Instalar o OpenSSL (caso não tenha)Se o OpenSSL ainda não estiver instalado, execute o seguinte comando:
| DJango |
| ||
choco install openssl |
2.Para Android
2.1 Gerar um Certificado Autoassinado com Suas Credenciais
Para gerar um certificado autoassinado, você pode personalizar as credenciais (como o nome da empresa, o país, etc.). Execute o seguinte comando:
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes |
Aqui está o que cada parâmetro significa:
-x509: Especifica que você quer gerar um certificado X.509 (formato de certificado padrão).-newkey rsa:2048: Cria uma nova chave privada com o algoritmo RSA e 2048 bits.-keyout key.pem: Define o nome do arquivo de saída da chave privada (neste caso,key.pem).-out cert.pem: Define o nome do arquivo de saída do certificado (neste caso,cert.pem).-days 365: Define o período de validade do certificado em dias (neste caso, 365 dias).-nodes: Impede a criptografia da chave privada, facilitando o uso em ambientes automatizados.
Após executar o comando, o OpenSSL irá solicitar as seguintes informações para personalizar seu certificado:
- País (Country Name): Insira o código do país (exemplo: BR para Brasil).
- Estado ou Província (State or Province Name): O nome do estado ou província onde sua organização está localizada.
- Localidade (Locality Name): O nome da cidade onde sua organização está localizada.
- Organização (Organization Name): O nome da sua organização.
- Unidade Organizacional (Organizational Unit Name): O nome do departamento ou unidade dentro da sua organização (opcional).
- Nome Comum (Common Name): O nome do domínio ou serviço para o qual o certificado será emitido (por exemplo,
www.seudominio.comou o nome do seu servidor). - Endereço de e-mail (Email Address): O e-mail associado ao certificado (opcional).
2.2 Converter para PKCS12
Após gerar o certificado e a chave privada, converta-os para o formato PKCS12 com o comando:
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
openssl pkcs12 -export -out keystore.p12 -inkey key.pem -in cert.pem |
Aqui está o que cada parâmetro faz:
-export: Indica que você deseja exportar o certificado para o formato PKCS12.-out keystore.p12: Define o nome do arquivo de saída do keystore (neste caso,keystore.p12).-inkey key.pem: Especifica o arquivo da chave privada.-in cert.pem: Especifica o arquivo do certificado.
2.3 Transferir o arquivo keystore.p12 para o dispositivo Android
Transfira o arquivo keystore.p12 para o seu dispositivo Android utilizando USB, e-mail ou outro método.
2.4 Instalar o Certificado no Android
- No dispositivo Android, acesse Configurações.
- Navegue até Segurança > Instalar a partir do armazenamento.
- Localize o arquivo
keystore.p12e selecione-o. - Siga as instruções na tela para completar a instalação. Se necessário, configure um bloqueio de tela.
3.Para iOS
3.1 Gerar um Certificado Autoassinado com Suas Credenciais
Siga o mesmo procedimento descrito para Android para gerar os arquivos key.pem e cert.pem. Você pode usar o mesmo comando do Android, mas alterando as informações de credenciais conforme necessário.
3.2 Converter para PKCS12
Converta o certificado para o formato PKCS12 com o comando:
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
openssl pkcs12 -export -out keystore.p12 -inkey key.pem -in cert.pem |
3.3 Transferir o arquivo keystore.p12 para o dispositivo iOS
Transfira o arquivo keystore.p12 para o dispositivo iOS, utilizando métodos como AirDrop ou e-mail.
3.4 Instalar o Certificado no iOS
- No dispositivo iOS, abra o arquivo
keystore.p12. - O dispositivo o redirecionará automaticamente para as configurações de instalação do certificado.
- Siga as instruções para concluir a instalação.
- Para garantir a confiança no certificado, vá para Ajustes > Geral > Sobre > Certificados Confiáveis e ative o seu certificado.