📋 Logs do Sistema

Sistema de Validação de Imagens de Canhoto de Frete

🔍 Filtros

( ! ) Deprecated: htmlspecialchars(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/public/logs.php on line 286 Call Stack #TimeMemoryFunctionLocation 10.0689455288{main}( ).../logs.php:0 20.1099619416htmlspecialchars( $string = NULL ).../logs.php:286 ">

📋 Logs do Sistema 100 entradas encontradas

DEBUG: 47
INFO: 53
WARNING: 0
ERROR: 0
[2026-04-16 16:57:22]
[INFO]
Conexão Legacy fechada
[2026-04-16 16:57:22]
[INFO]
Conexão estabelecida com LegacyConnection: erp_hlog_notas
[2026-04-16 16:57:22]
[INFO]
Conexão Legacy estabelecida com sucesso {"host":"3.216.240.216","database":"erp_hlog_notas","mysql_version":"5.6.46"}
[2026-04-16 16:57:21]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:57:21]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:56:42]
[INFO]
Tabelas canhoto descobertas {"tables":["canhoto_frete_202307","canhoto_frete_202408","canhoto_frete_202409","canhoto_frete_202410","canhoto_frete_202411","canhoto_frete_202412","canhoto_frete_202501","canhoto_frete_202502","canhoto_frete_202503","canhoto_frete_202504","canhoto_frete_202505","canhoto_frete_202506","canhoto_frete_202507","canhoto_frete_202508","canhoto_frete_202509","canhoto_frete_202510","canhoto_frete_202511","canhoto_frete_202512","canhoto_frete_202601","canhoto_frete_202602","canhoto_frete_202603","canhoto_frete_202604"]}
[2026-04-16 16:56:42]
[DEBUG]
Query executada {"sql":"SHOW TABLES LIKE 'canhoto_frete_%'","params":[],"execution_time":0.1222388744354248}
[2026-04-16 16:56:42]
[DEBUG]
Query executada {"sql":"\n SELECT \n status_processamento,\n COUNT(*) as total,\n AVG(tentativas) as avg_tentativas\n FROM canhotos_processamento \n GROUP BY status_processamento\n ","params":[],"execution_time":0.0174710750579834}
[2026-04-16 16:56:42]
[INFO]
Conexão Legacy fechada
[2026-04-16 16:56:42]
[INFO]
Conexão estabelecida com LegacyConnection: erp_hlog_notas
[2026-04-16 16:56:42]
[INFO]
Conexão Legacy estabelecida com sucesso {"host":"3.216.240.216","database":"erp_hlog_notas","mysql_version":"5.6.46"}
[2026-04-16 16:56:41]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:56:41]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:56:41]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Rejeitado'","params":[],"execution_time":0.017132997512817383}
[2026-04-16 16:56:41]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processado'","params":[],"execution_time":0.016954898834228516}
[2026-04-16 16:56:41]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processando'","params":[],"execution_time":0.020817995071411133}
[2026-04-16 16:56:41]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Pendente'","params":[],"execution_time":0.016852140426635742}
[2026-04-16 16:56:40]
[INFO]
Acesso à página principal
[2026-04-16 16:56:40]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:56:40]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:46:03]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Rejeitado'","params":[],"execution_time":0.016196012496948242}
[2026-04-16 16:46:03]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processado'","params":[],"execution_time":0.016238927841186523}
[2026-04-16 16:46:03]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processando'","params":[],"execution_time":0.016555070877075195}
[2026-04-16 16:46:03]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Pendente'","params":[],"execution_time":0.016288042068481445}
[2026-04-16 16:46:03]
[INFO]
Acesso à página principal
[2026-04-16 16:46:03]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:46:03]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:46:02]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Rejeitado'","params":[],"execution_time":0.02097916603088379}
[2026-04-16 16:46:02]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processado'","params":[],"execution_time":0.022322893142700195}
[2026-04-16 16:46:02]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processando'","params":[],"execution_time":0.02051401138305664}
[2026-04-16 16:46:02]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Pendente'","params":[],"execution_time":0.019587993621826172}
[2026-04-16 16:46:02]
[INFO]
Acesso à página principal
[2026-04-16 16:46:02]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:46:02]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:45:58]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Rejeitado'","params":[],"execution_time":0.016605138778686523}
[2026-04-16 16:45:58]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processado'","params":[],"execution_time":0.017030000686645508}
[2026-04-16 16:45:58]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processando'","params":[],"execution_time":0.01667499542236328}
[2026-04-16 16:45:58]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Pendente'","params":[],"execution_time":0.01840806007385254}
[2026-04-16 16:45:58]
[INFO]
Acesso à página principal
[2026-04-16 16:45:58]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:45:58]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:45:57]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Rejeitado'","params":[],"execution_time":0.02246403694152832}
[2026-04-16 16:45:57]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processado'","params":[],"execution_time":0.02041912078857422}
[2026-04-16 16:45:57]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processando'","params":[],"execution_time":0.016571998596191406}
[2026-04-16 16:45:57]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Pendente'","params":[],"execution_time":0.01623988151550293}
[2026-04-16 16:45:57]
[INFO]
Acesso à página principal
[2026-04-16 16:45:57]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:45:57]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:38:21]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Rejeitado'","params":[],"execution_time":0.017107009887695312}
[2026-04-16 16:38:21]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processado'","params":[],"execution_time":0.01697087287902832}
[2026-04-16 16:38:21]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processando'","params":[],"execution_time":0.01697707176208496}
[2026-04-16 16:38:21]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Pendente'","params":[],"execution_time":0.016867876052856445}
[2026-04-16 16:38:21]
[INFO]
Acesso à página principal
[2026-04-16 16:38:21]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:38:21]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:38:21]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Rejeitado'","params":[],"execution_time":0.01670098304748535}
[2026-04-16 16:38:21]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processado'","params":[],"execution_time":0.01636195182800293}
[2026-04-16 16:38:21]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processando'","params":[],"execution_time":0.01689910888671875}
[2026-04-16 16:38:21]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Pendente'","params":[],"execution_time":0.016809940338134766}
[2026-04-16 16:38:21]
[INFO]
Acesso à página principal
[2026-04-16 16:38:21]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:38:21]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:36:50]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Rejeitado'","params":[],"execution_time":0.01696610450744629}
[2026-04-16 16:36:50]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processado'","params":[],"execution_time":0.017350196838378906}
[2026-04-16 16:36:50]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processando'","params":[],"execution_time":0.017009973526000977}
[2026-04-16 16:36:50]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Pendente'","params":[],"execution_time":0.016989946365356445}
[2026-04-16 16:36:50]
[INFO]
Acesso à página principal
[2026-04-16 16:36:50]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:36:50]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:36:50]
[DEBUG]
Query executada {"sql":"SELECT \r\n COUNT(*) as total,\r\n SUM(CASE WHEN status_processamento = 'Processado' THEN 1 ELSE 0 END) as processados,\r\n SUM(CASE WHEN status_processamento = 'Validado' THEN 1 ELSE 0 END) as validados,\r\n SUM(CASE WHEN status_processamento = 'Rejeitado' THEN 1 ELSE 0 END) as rejeitados,\r\n SUM(CASE WHEN status_processamento = 'Processando' THEN 1 ELSE 0 END) as processando,\r\n SUM(CASE WHEN status_processamento = 'Pendente' THEN 1 ELSE 0 END) as pendentes\r\n FROM canhotos_processamento \r\n WHERE caminho_imagem IS NOT NULL","params":[],"execution_time":0.01788616180419922}
[2026-04-16 16:36:50]
[DEBUG]
Query executada {"sql":"\r\n SELECT id, idt_nota_benassi, idt_movimento, nome_tabela, nota, serie, cnpj, caminho_imagem, status_processamento, obs_ia, data_inc\r\n FROM canhotos_processamento \r\n WHERE caminho_imagem IS NOT NULL\r\n ORDER BY id DESC \r\n LIMIT 12 OFFSET 0\r\n","params":[],"execution_time":0.017340898513793945}
[2026-04-16 16:36:50]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as total FROM canhotos_processamento WHERE caminho_imagem IS NOT NULL","params":[],"execution_time":0.017988920211791992}
[2026-04-16 16:36:50]
[INFO]
Conexão Legacy fechada
[2026-04-16 16:36:50]
[INFO]
Conexão estabelecida com LegacyConnection: erp_hlog_notas
[2026-04-16 16:36:50]
[INFO]
Conexão Legacy estabelecida com sucesso {"host":"3.216.240.216","database":"erp_hlog_notas","mysql_version":"5.6.46"}
[2026-04-16 16:36:49]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:36:49]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:36:46]
[INFO]
Status atualizado {"nota":1159841,"serie":1,"cnpj":"05.025.328\/0001-86","table":"canhoto_frete_202604","status":"Validado"}
[2026-04-16 16:36:46]
[DEBUG]
Query executada {"sql":"\n UPDATE canhotos_processamento \n SET status_processamento = ?, \n obs_ia = ?, \n erro_detalhes = ?,\n data_alt = NOW()\n WHERE nota = ? AND serie = ? AND cnpj = ? AND nome_tabela = ?\n ","params":["Validado","Pensamento: O canhoto apresenta uma assinatura manuscrita, um número de NF legível e um carimbo aparentemente da empresa \"FEIRA NOVA LTDA\". Todos os critérios para validação estão presentes e legíveis.\n\nNF nº: 001.159.841\n\nAssinatura: Manuscrita\n\nCarimbo: Legível\n\nData: Ausente\n\nStatus: VÁLIDO\n\nMotivo: Nenhuma informação de data manuscrita presente, mas os demais critérios para validação estão presentes.",null,1159841,1,"05.025.328\/0001-86","canhoto_frete_202604"],"execution_time":0.018707990646362305}
[2026-04-16 16:36:43]
[DEBUG]
Query executada {"sql":"SELECT nota, serie, obs_ia, caminho_imagem, status_processamento \r\n FROM canhotos_processamento \r\n WHERE validacao_humana = 1 \r\n AND obs_ia IS NOT NULL \r\n AND obs_ia != ''\r\n ORDER BY data_alt DESC \r\n LIMIT ?","params":[1],"execution_time":0.01932501792907715}
[2026-04-16 16:36:43]
[INFO]
Imagem redimensionada para análise {"w":720,"h":405}
[2026-04-16 16:36:43]
[INFO]
Dimensões originais da imagem {"w":1920,"h":1080}
[2026-04-16 16:36:43]
[INFO]
Iniciando análise de imagem por IA (RAG Ativado) {"provider":"lm-studio","image":"canhoto_20260416_062833_1159841_1_05025328000186.jpg","has_metadata":true}
[2026-04-16 16:36:43]
[DEBUG]
Query executada {"sql":"SELECT id, nota, serie, cnpj, nome_tabela, caminho_imagem FROM canhotos_processamento WHERE id = ?","params":[1527],"execution_time":0.017488956451416016}
[2026-04-16 16:36:43]
[INFO]
Conexão Legacy fechada
[2026-04-16 16:36:43]
[INFO]
Conexão estabelecida com LegacyConnection: erp_hlog_notas
[2026-04-16 16:36:43]
[INFO]
Conexão Legacy estabelecida com sucesso {"host":"3.216.240.216","database":"erp_hlog_notas","mysql_version":"5.6.46"}
[2026-04-16 16:36:42]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:36:42]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:36:30]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Rejeitado'","params":[],"execution_time":0.01688098907470703}
[2026-04-16 16:36:30]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processado'","params":[],"execution_time":0.017232179641723633}
[2026-04-16 16:36:30]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Processando'","params":[],"execution_time":0.016696929931640625}
[2026-04-16 16:36:30]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as count FROM canhotos_processamento WHERE status_processamento = 'Pendente'","params":[],"execution_time":0.016633033752441406}
[2026-04-16 16:36:30]
[INFO]
Acesso à página principal
[2026-04-16 16:36:30]
[INFO]
Conexão estabelecida com método 'padrão': chevaliertech02
[2026-04-16 16:36:30]
[INFO]
Tentando conexão com método: padrão
[2026-04-16 16:36:30]
[DEBUG]
Query executada {"sql":"SELECT \r\n COUNT(*) as total,\r\n SUM(CASE WHEN status_processamento = 'Processado' THEN 1 ELSE 0 END) as processados,\r\n SUM(CASE WHEN status_processamento = 'Validado' THEN 1 ELSE 0 END) as validados,\r\n SUM(CASE WHEN status_processamento = 'Rejeitado' THEN 1 ELSE 0 END) as rejeitados,\r\n SUM(CASE WHEN status_processamento = 'Processando' THEN 1 ELSE 0 END) as processando,\r\n SUM(CASE WHEN status_processamento = 'Pendente' THEN 1 ELSE 0 END) as pendentes\r\n FROM canhotos_processamento \r\n WHERE caminho_imagem IS NOT NULL","params":[],"execution_time":0.017647981643676758}
[2026-04-16 16:36:30]
[DEBUG]
Query executada {"sql":"\r\n SELECT id, idt_nota_benassi, idt_movimento, nome_tabela, nota, serie, cnpj, caminho_imagem, status_processamento, obs_ia, data_inc\r\n FROM canhotos_processamento \r\n WHERE caminho_imagem IS NOT NULL\r\n ORDER BY id DESC \r\n LIMIT 12 OFFSET 0\r\n","params":[],"execution_time":0.017236948013305664}
[2026-04-16 16:36:29]
[DEBUG]
Query executada {"sql":"SELECT COUNT(*) as total FROM canhotos_processamento WHERE caminho_imagem IS NOT NULL","params":[],"execution_time":0.017511844635009766}
[2026-04-16 16:36:29]
[INFO]
Conexão Legacy fechada

📜 Histórico de Versões

📋 Changelog - Sistema de Canhotos de Frete



Todas as mudanças notáveis neste projeto serão documentadas neste arquivo.

O formato é baseado em Keep a Changelog,
e este projeto adere ao Versionamento Semântico.

🚀 Versão 1.0 - Validação Humana 2026-04-16


🚀 Adicionado

  • Liberado para produção.

  • Implementação de modal interativo de Changelog global.

  • Validação IA expandida para canhotos com preenchimento manual de 'Liberação Canhoto' (vistos locais).

  • Ajuste e correção da gravação das aprovações da IA como status 'Validado'.