Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

O objetivo deste documento é orientar o autoatendimento para sanar problemas de baixa performance.

Bem como, conduzir no levantamento de dados para análise técnica no intuito de rastrear as causas e possíveis formas de tratar.

01. Lentidão generalizada no sistema

...

  • Critérios que devem ser avaliados pontualmente de acordo com a rotina/processamento problemático:
Deck of Cards
effectDuration0.5
idFuncionalidadesEST
effectTypeslide
Card
defaulttrue
effectDuration0.5
labelProcessam CUSTO MÉDIO
effectTypeslide

- Testar se a performance é otimizada com a configuração de parâmetros: MV_M330THR=1 e MV_M330JCM= em branco

Card
effectDuration0.5
labelCONTABILIZAÇÃO do custo
effectTypeslide

DDDDDDDDDDDDDDDDDDDD






03. Levantamento de insumos para análise do Suporte Técnico

Providencie criteriosamente os insumos solicitados na Aba 1ª ETAPA para enviar pra análise do Suporte Técnico. Providencie os artefatos e envie já na abertura do ticket.
Após o analista ténico analisar os insumos, caso não sejam suficientes para rastrear as possívis causas do problema, somente então, lhe será solicitado o levantamento de insumos da Aba 2ª ETAPA.

...

id001
tabLocationleft

...

label1ª ETAPA de análise técnica

ffffffffffffffffffffffffffff

...

label2ª ETAPA de análise técnica

ggggggggggggggggggggggggg

OBSERVAÇÃO

Favor avalie pois é possível que seja reproduzido apenas com sua estrutura de Hardware / Rede; e se for uma limitação de estrutura neste caso, não é caracterizado uma falha no Produto de forma a direcionar para desenvolvimento. Se já foi analisada sua estrutura de Hardware e Rede, verifique em um ambiente de homologação se o problema é reproduzido com o ambiente atualizado de acordo com as últimas disponibilizações no Portal do Cliente e sem compilar customizações / Pontos de entrada.IMPORTANTE

Cada questão contida no formulário e logs log solicitados foram elaborados para agilizar e prover uma análise assertiva e criteriosa em ocorrências de performance, por . Por isso, havendo dúvidas, solicite apoio à seu time de TI para que todas as questões sejam devidamente preenchidas. Elas são essenciais para continuidade neste atendimento.

1. Gere o Profile do processo para analisarmos
A geração é de acordo com a documentação: LogProfiler - Como executar

...

Importante: Se seu ambiente estiver armazenado no Cloud da TOTVS, e você não tiver acesso para obter algum dos insumos abaixo solicitados, através da plataforma TCloud, então, acione primeiramente o Suporte Cloud solicitando a geração dos insumos. Com eles disponíveis, então solicite o Suporte Técnico da área enviando os dados levantados.


Deck of Cards
id001
tabLocationleft
Card
label1ª ETAPA de análise técnica

FORNECER AS SEGUINTES INFORMAÇÕES:

1) A lentidão ocorre isoladamente em qual processamento? (Exemplo: ocorre isoladamente no processamento do custo médio)

2) Qual o atual tempo de processamento, para qual quantidade de registros? E qual a sua expectativa de tempo considerável para esse mesmo volume de dados?

3) Quando a lentidão começou nesse processamento? Sempre existiu ou foi a partir de 'alguma mudança em sua estrutura do sistema' / 'alguma atualização específica aplicada'?


PROVIDENCIAR OS SEGUINTES INSUMOS:

1) Gerar o LogProfiler e o log Dbtrace para coleta do processamento de execução da rotina, extamente conforme o boletim: SIGAEST LogProfiler e Dbtrace

2) Inspetor de objetos "Exportar dados", extamente conforme a instrução: Exportar Dados - Linha Protheus

3) Print da tela de geração MallocIO  (onde aloca a memória para ganho de performance)


Expandir
titleSE a lentidão for no processamento do CUSTO MÉDIO

1) Tabela CV8 completa em formato .dtc filtrada com CV8_PROC = Nome da rotina (Obs: efetuar pelas rotinas legados, no caso, MATA330)

2) Informar se utiliza procedures, e qual o comportamento obtido sem procedures.



Card
label2ª ETAPA de análise técnica

Análises de performance podem ser

...

complexas pois envolvem uma diversidade grande de fatores e variáveis, distribuídas entre

...

: 1) O Banco de dados,

...

2) Configurações e detalhes estruturais do ambiente, e

...

3) O Produto em si (códigos padrões).

Deste modo,

...

  • Verificações prévias para seguir em análise de performance/lentidão no Suporte:

1 - Por favor validar em ambiente de teste se o problema é simulado em ambiente devidamente atualizado com expedição contínua, procedures, binário, Appserver, LIB e DbAccess, e ambiente padrão desabilitando customizações. Para análise de performance pelo suporte é crucial que a ocorrência seja em ambiente atualizado e padrão, eliminando a possibilidade de o problema ser ocasionado devido customizações ou fontes desatualizados que não contemplas as últimos correções.

...

  • Caso se certifique de a ocorrência não ser sanada com as recomendações acima, prossiga com a análise do ambiente:

...

caso o analiste de Suporte Técnico realize a primeira análise e os insumos não forneçam indícios concretos da causa do problema, estão será necessário seguir os passos:


  • Caso se certifique de a ocorrência não ser sanada com as recomendações acima, prossiga com a análise do ambiente:

1 -Avalie junto à sua equipe de infraestrutura e DBA pois é possível que o problema seja reproduzido apenas com sua estrutura de Hardware / Rede, bem como, especificamente com sua base de dados; e se for uma limitação de estrutura/banco de dados, neste caso, não é caracterizado uma falha no Produto de forma a direcionar o caso para correção.

...

 

Verifique o boletim FRAME - Lentidão no Protheus 12 e siga criteriosamente as recomendações para validação do ambiente Protheus

2 - Efetuar a configuração correta do arquivo Dbapii.dll

...

4 - Utilizar a chave DBPulse ativa, caso o ambiente esteja em um servidor Cloud

1) Verifique como está configurada a conexão do ambiente no ODBC (Imagem em anexo)
A orientação da Tecnologia Protheus é de que seja criado com o SQL Server Native Client para melhor performance.

5 - Validar o comportamento em ambiente teste com os dicionários de dados (SXs) padrões.

6 - Solicitar o apoio de um DBA para acompanhar a execução da rotina e verificar os possíveis pontos de manutenção no data-base para otimizar o processamento, caso sua base de dados esteja em um banco de dados e não em CTREE.

  • Caso se certifique de a ocorrência não ser sanada com as recomendações acima, prossiga com a análise do processamento rotina:

1 - Validar se os registros do banco de dados estão consistentes. Exemplo: se as tabelas SB2, SB9, SB6, SD1, SD2 e SD3 entre outras, não estão com campo de código, filial e armazém em Branco (se existir é necessário manutenção, junto ao DBA responsável)

2 - Avaliação das principais parametrizações relacionadas à Performance: MV_M330THR, MV_M330JCM, MV_THRSEQ, MV_A330GRV, MV_A330DRV conforme detalhes aqui


  • Caso se certifique de a ocorrência não ser sanada com as recomendações acima, prossiga com a preparação do ambiente e forneça os seguintes artefatos para análise do Suporte:

1 - Print do arquivo DBAPI.dll nas pastas DBAcess e Appserver;

2 - Print do Select realizado nas tabelas SB2, SB9, SB6, SD1, SD2 e SD3 conforme abordado acima;

3 - Print da tela de geração do MALLOC-IO

4 - Sua tabela SX6 em formato .dtc

5 - Tabela CV8 completa em formato .dtc filtrada com CV8_PROC = Nome da rotina

6 - Gerar Logprofiler + Dbtrace para coleta do processamento de execução da rotina, conforme boletim: https://centraldeatendimento.totvs.com/hc/pt-br/articles/360019902592-Cross-Segmento-Backoffice-Linha-Protheus-SIGAEST-Como-habilitar-e-gerar-o-LogProfiler-

IMPORTANTE

Cada questão contida no formulário e logs solicitados foram elaborados para agilizar e prover uma análise assertiva e criteriosa em ocorrências de performance, por isso, havendo dúvidas, solicite apoio à seu time de TI para que todas as questões sejam devidamente preenchidas. Elas são essenciais para continuidade neste atendimento.

02. Necessidades.

  1. Avaliação Nivel de Suporte Técnico do cliente (equipe de infraestutura/ T.I )
  2. Acesso ao Banco de dados / Dbaccess / Logs

03. Primeira camada de analise.

Caso tenham efetuado ajuste no tamanho de campos, valide se os campos de custos e quantidades, estão com tamanhos uniformes, é importante que os campos decimais tenham o mesmo tamanho e decimais, abaixo uma relação dos campos de custos.

https://tdn.totvs.com/display/public/PROT/PEST06012+-+MATA330+-+Como+aumentar+a+quantidade+de+Casas+Decimais+para+os+campos+de+CUSTOS 

Aviso

O erro "Erro na chamada do processo" em processamento de rotinas ADVPL (Advanced Protheus Language) com procedures no banco de dados geralmente indica um problema durante a execução de um processo que envolve a chamada de uma procedure no banco de dados.

A mensagem de erro sugere que houve uma falha ao chamar ou executar um procedimento armazenado (procedure) no banco de dados a partir do código ADVPL. Várias razões podem causar esse tipo de erro, e a resolução pode depender do contexto específico da aplicação e do ambiente de execução.

Valide se a rotina em questão utiliza THREADS, caso utilize, efetue o teste sem a utilização de threads.

Exemplo: 

-Custo médio > parametro MV_M330THR, deixar como 1.

1º Desinstale a procedure da rotina em questão.

Efetue a desinstalação da procedure da rotina com erro, para que realize o processamento da rotina sem a procedure, e então constatar se o erro esta somente relacionado a procedure ou não, e caso seja gerado error.log durante o processamento da rotina, basta anexar o arquivo para avaliação do suporte.

Descobrindo qual é a procedure referente a rotina, através do configurador da gestão de procedure:

(SIGACFG > Base de dados > Dicionario > Stored Procedure, aqui vamos supor que o Erro na chamada do processo, ocorre na rotina de custo médio, então desinstalar a procedure 19.

mata330desinstal.gifImage Removed

O erro mais comum nesses casos, é vinculado ao Estouro de campo (Como avaliar o estouro e corrigir):

Cross Segmento - Backoffice (Linha Protheus) - SIGAEST - Como avaliar o erro Data width error em rotinas de processamento?

Cross Segmento - Backoffice (Linha Protheus) - SIGAEST - Arithmetic overflow error converting float to data type numeric

2º Valide se a procedure e rotina estão atualizadas.

Verifique se a rotina e sua procedure vinculada a mesma, estão contempladas das ultimas atualizações, disponibilizadas no portal do cliente, pois o processo que esteja enfrentando, ja pode ter sido mapeado e corrigido, então efetue a reinstalação da procedure conforme passos abaixo e realize um novo teste.

- 1passo Acumulado SIGAEST conforme sua versão (Acumulado estoque)

- 2passo https://suporte.totvs.com/portal/p/10098/download?e=946864 (Versão da central de procedure)

- 3passo Cross Segmento - Backoffice (Linha Protheus) - SIGAEST - Procedure Desatualizada e Incompatível, quais as diferenças? É possível utilizar as rotinas? (Processo para REINSTALAR as procedures, sem necessidade de DESINSTALAÇÃO)

Efetuar o Backup antes da atualização.
Todos os procedimentos devem ser realizados primeiro em ambiente TESTE atualizado.

04. Procedimentos.

...

defaulttrue
effectDuration0.5
idProcessoEST1
labelProcessoEST1
titleProcessoEST1
effectTypeslide

...

effectDuration0.5
idConfiguraçãoEST
labelConfiguraçãoEST
titleConfiguraçãoEST
effectTypeslide

...

effectDuration0.5
idFuncionalidadesEST
effectTypeslide

...

defaulttrue
effectDuration0.5
idAmbiente ON-PRIMESE
labelAmbiente ON-PRIMESE
titleAmbiente ON-PRIMESE
effectTypeslide




Aviso

Importante: Em alguns casos, a análise de logs e informações não será definitivo para a solução e será necessária a análise de dados gravados no banco.

Nestes casos o atendimento deve seguir pela modalidade de Consultoria do Suporte na qual é contemplada a análise de ambiente/base do cliente (e não gera custos ao ser identificada inconsistência no produto).


04. ASSUNTOS RELACIONADOS

- Sugerimos executar o teste em ambiente de homologação, com NORUN ativado se possivel, e preferencialmente de forma exclusiva para facilitar a coleta dos logs corretos.

- Habilite a chave "TRACESTACK=1" no seu arquivo appserver.ini (clique aqui para mais informações).

- Acessar a aba de mensagens do DBMonitor e clique em limpar, depois em Sim

Image Removed

- Efetue a limpeza também do arquivo console.log e dbaccess.log em suas respectivas pastas. (abaixo exemplo de onde os arquivos se encontram no ambiente padrão, validar em seu ambiente)

DBACCESS.LOG

Image Removed

CONSOLE.LOG

Image Removed

- Em seguida, acesse a rotina que ocorre o Erro na Chamada do Processo, e ative o rastreio do DBMONITOR e execute a mesma até apresentar o erro (aqui vamos demonstrar o recalculo de custo medio)

Abra o Dbmonitor > Clique em Rastrear > Selecione o usuario e Rotina ja abertas, e ficara assim a sua tela.

Image Removed

- Após ativar o rastreio, execute a rotina até gerar o erro, salve o Dbtrace e log da aba de mensagens.

...

- Com os dados coletados, anexe e envie para avaliação do time de suporte tecnico, juntamente do inspetor de objetos, da seguinte maneira como exemplo:

Olá Suporte,

Estou enfrentando o Erro na chamada do processo, ao utilizar a rotina (Nome da rotina), e ja segui o procedimento do boletim (Cross Segmento - Backoffice (Linha Protheus) - SIGAEST - Erro na chamada do processo em rotinas de Processamento), porém sem sucesso, segue anexos:

-Dbtrace; Dbconsole.log; Console.log; Dbaccess.log; Inspetor de objetos

- E TAMBÉM O ARQUIVO DA PROCEDURE DE SUA BASE DE DADOS, SOLICITAR APOIO AO SEU DBA PARA COLETA DESSE ARQUIVO(CORPO DA PROCEDURE COM ERRO), ABAIXO SEGUE EXEMPLO DE COMO COLETAR NO SQL-MANAGEMENT

Image Removed

...

effectDuration0.5
idAmbiente CLOUD-TOTVS
labelAmbiente CLOUD-TOTVS
titleAmbiente CLOUD-TOTVS
effectTypeslide

Olá Suporte,

Estou enfrentando o Erro na chamada do processo, ao utilizar a rotina (Nome da rotina), porém meu ambiente é CLOUD e não tenho acesso aos logs para realização de coleta de dados.

Segue dados do ambiente:

(ATENÇÃO: O suporte só efetuara a avaliação somente em ambiente de Homologação, portanto sugerimos que o cenario esteja apresentado em ambiente de homologação, e caso não esteja, deve-se solicitar a replica do ambiente de produção para o ambiente de homologação, de forma que possamos prosseguir com as analises )

Ambiente teste deve estar configurado em modo EXCLUSIVO.

-Nome do ambiente 

-Arquivo Smartclient.ini do ambiente que esta acessando

-Informar qual a "Comunicacao do cliente" esta usando (ex: TCP)
-ID do ambiente​
-Nome e código da filial que se encontra com o erro​
-nome de usuário e senha adm https://getmypassword.cloudtotvs.com.br/ (sugerimos um usuario para o suporte, informe a senha desse usuario no link, não é para gerar uma senha exemplo de como colocar abaixo, para termos a senha do USUARIO de acesso ao ambiente)

...

Importante: Aqui estão listados alguns exemplos recorrentes, porém, não há como indicar com precisão qual o dado incorreto em sua base, sem a devida análise.

Em alguns casos sera necessário que analise os dados gravados no banco (obs: essa análise de registros no banco não é contemplada pelo atendimento de Suporte técnico na modalidade padrão. Havendo necessidade de análise da base, na falta de uma equipe interna de TI, recomenda-se a solicitação de consultor à seu ESN).

É importante esclarecer que o Suporte Técnico visa análise de possíveis Inconsistências / não conformidades no Produto. Para possíveis inconsistências de dicionário ou de base, o atendimento deve ser avaliado em modo de Consultoria (mais detalhes sobre o escopo de atendimento do Suporte e Consultoria, aqui: Modalidades e Escopo de Atendimento do Suporte Técnico). Após eliminar as principais causas aqui mapeadas, havendo necessidade de acionar o Suporte técnico, envie o parecer de cada etapa abordada neste documento no ticket.

05. ASSUNTOS RELACIONADOS

Cross Segmento - Backoffice (Linha Protheus) - SIGAEST - Como avaliar o erro Data width error em rotinas de processamento?

...