É possível resolver problemas com versões 2.0 e 2.1 do BigQuery Connector para SAP usando a geração de registros de aplicativos do servidor de replicação de LT SAP e os registros do Google Cloud para analisar mensagens de erro e de registro.
O BigQuery Connector para SAP envia todos os erros para os registros padrão de aplicativos do SAP LT Replication Server.
Também é possível usar a depuração do SAP LT Replication Server para isolar problemas.
Visão geral sobre a solução de problemas
Ao resolver problemas com o BigQuery Connector para SAP, há várias áreas diferentes em que você precisa focar sua atenção, dependendo da área ou do escopo do problema que você está investigando:
- a infraestrutura, como a rede, o hardware ou o sistema operacional;
- O software SAP, incluindo o servidor de origem e o SAP LT Replication Server.
- Conector do BigQuery para SAP.
- BigQuery, incluindo a API BigQuery e a tabela de destino.
Envolver as equipes certas
Ao solucionar um problema, o primeiro passo é determinar em quais áreas anteriores ele ocorre e qual é o escopo.
Para resolver um problema, talvez seja necessário trabalhar com várias equipes, como os administradores de base, de administração do SAP LT Replication Server, de DBAs ou do Google Cloud.
Ter as equipes e as habilidades certas envolvidas no processo pode ajudar você a resolver seus problemas com mais rapidez.
Determinar a causa raiz
Você precisa determinar a causa principal do problema e verificar se o que você acredita que pode ser a causa não é apenas um sintoma de uma causa raiz que está em outro lugar.
Os sistemas SAP são totalmente integrados, mas podem gravar registros e traces em arquivos em vários locais diferentes. Ao resolver problemas, você precisa determinar os registros e arquivos de rastreamento corretos para análise.
Verificar os requisitos e os pré-requisitos do software
Verifique se todos os softwares do sistema estão sendo executados nas versões mínimas necessárias e se todos os pré-requisitos do BigQuery Connector para SAP foram atendidos.
Para conferir informações sobre os pré-requisitos de instalação do BigQuery Connector para SAP, consulte:
Se o SAP LT Replication Server estiver em execução em uma VM do Compute Engine, consulte Pré-requisitos.
Se o SAP LT Replication Server estiver em execução em um host externo ao Google Cloud, consulte Pré-requisitos.
Para requisitos de software do BigQuery Connector para SAP, consulte Requisitos de software.
Se você estiver usando um software ECC mais antigo, verifique se a versão do servidor SAP LT Replication é compatível com a versão do ECC. Para mais informações, consulte a Nota SAP 2577774 - Compatibilidade de versão para sistemas de origem e de destino - SLT (em inglês).
Leia a documentação de suporte do SAP
Se você tiver uma conta de usuário da SAP, poderá encontrar a solução para muitos problemas de software da SAP lendo os artigos SAP Notes e a base de conhecimento da SAP, disponíveis no Launchpad de suporte da SAP ONE (em inglês). de dados.
Logging
O BigQuery Connector para SAP envia mensagens de registro para o SAP LT Replication Server, em que é possível visualizá-las nos registros do aplicativo SAP LT Replication Server.
Essas mensagens incluem as mensagens que o BigQuery Connector para SAP recebe da API BigQuery.
As mensagens gerais de registro do BigQuery podem ser visualizadas no console do Google Cloud.
Registros de aplicativos do servidor SAP LT Replication
Todas as mensagens de erro são salvas nos registros do aplicativo padrão do SAP LT Replication Server. Verifique os registros do aplicativo para analisar e resolver os problemas de causa principal.
Para exibir os registros do aplicativo específicos da configuração do
SAP LT Replication Server, execute a transação LTRC
, abra
a configuração e selecione Registros de aplicativos.
Quando os registros forem exibidos, selecione uma linha da tabela e clique em um botão para exibir as mensagens de erro. Se você clicar na guia Registros de aplicativos de uma replicação, poderá filtrar mensagens de registro do ambiente de execução relevantes para a replicação.
Mensagens geradas pelo BigQuery Connector para SAP
Qualquer erro que ocorrer no BigQuery Connector para SAP antes
dos registros serem enviados ao BigQuery será prefixado por /GOOG/SLT
.
Qualquer erro retornado da API BigQuery é prefixado por /GOOG/MSG
. Isso inclui todos os erros HTTP.
Se um erro não tiver sido prefixado por um desses valores, o erro foi emitido pelo SAP LT Replication Server.
Registros do BigQuery
O BigQuery grava várias entradas de registro no Cloud Logging no console do Google Cloud.
Para ver as entradas de registro do BigQuery:
No console do Google Cloud, abra Logging.
No editor Query, especifique um recurso do BigQuery. Por exemplo:
resource.type="bigquery_dataset"
Para saber mais sobre os registros do BigQuery, consulte Registros.
HTTP Trace
Ao resolver erros, é possível ativar o trace HTTP na transação SMICM
ou ST05
.
Para limitar o impacto no desempenho, desative o trace HTTP assim que você terminar.
Depuração
Se você tiver a autorização necessária, poderá depurar o código do complemento de negócios (BAdI) do BigQuery Connector para SAP.
Para depurar o código BAdI:
Se você ainda não tem as autorizações SAP necessárias para depurar o código BAdI, solicite-as ao administrador da SAP.
Ative a depuração digitando
/h
no campo de entrada de transação na GUI do SAP e pressionandoEnter
.No menu Settings, selecione Change Debugger Profile/ Settings.
Em Debug Modes, verifique se System Debugging está selecionada.
Defina pontos de interrupção externos no código, conforme necessário.
Monitoramento
É possível monitorar vários pontos diferentes ao longo do caminho de dados da fonte de dados SAP para a tabela de destino do BigQuery, incluindo:
- Infraestrutura: rede, hardware e sistema operacional
- Camada de banco de dados SAP
- Camada de aplicativos SAP
- Conector do BigQuery para SAP
- BigQuery
Para mais informações sobre o monitoramento em cada um desses pontos, consulte o Guia de operações do conector do BigQuery para SAP.
Reconciliação de dados
Há três pontos em que você pode verificar as contagens de registros:
- A tabela de origem
- As estatísticas de carga ou replicação do SAP LT Replication Server na transação
LTRC
- A tabela de destino do BigQuery
Você pode usar a ferramenta de validação de replicação para verificar e comparar contagens de registros ou pode recuperar os registros por meio da execução de consultas SQL.
Para mais informações sobre reconciliação de dados, consulte o guia de operações do conector do BigQuery para SAP.
Problemas comuns de configuração
Nesta seção, você verá resoluções para problemas comuns que podem ocorrer durante a configuração inicial do conector do BigQuery para SAP.
Compatibilidade com o SAP LT Replication Server para tipos de dados de banco de dados
Dependendo das versões do software SAP, o SAP LT Replication Server pode não ser compatível com alguns tipos de dados em um banco de dados de origem. Para mais informações, consulte a seção Considerações importantes da Nota SAP 1605140 - Servidor de replicação de transformação de paisagem (SLT, na sigla em inglês) SAP (em inglês).
Problema: o comando do SO para o token de acesso não funciona no SAP LT Replication Server
Problema: você criou um comando de sistema operacional (SO) para imprimir o token de acesso, mas ele não está funcionando no SAP LT Replication Server.
Causa: esse problema pode ser causado por vários problemas, mas provavelmente é causado pela falta das variáveis de ambiente necessárias para o comando do SO configurado corretamente.
Resolução: confirme se o comando do SO foi configurado corretamente. Veja as etapas de configuração em Criar um comando do SO para imprimir o token de acesso.
Tente executar o comando printenv
a partir do SO como o
sidadm
e da transação SAP SM69
e
compare a saída.
Se as variáveis retornadas na transação SM69
estiverem incompletas, tente reiniciar o SAP LT Replication Server para registrar as variáveis.
Problema: /GOOG/MSG: 413 - Request Entity Too Large
Problema: falha na transferência de dados com a mensagem de erro /GOOG/MSG: 413 - Request
Entity Too Large
.
Causa: esse problema pode ser causado quando o tamanho de bytes do bloco enviado pelo BigQuery Connector para SAP excede o tamanho máximo de bytes das solicitações HTTP aceitas pelo BigQuery. Isso pode ocorrer quando o tamanho dos registros da tabela ou a quantidade de dados que eles contêm faz com que o tamanho do byte de um bloco aumente além do limite do BigQuery.
Resolução: reduza o tamanho dos blocos que são enviados pelo
BigQuery Connector para SAP para a tabela. É possível ajustar o tamanho do bloco
executando a transação /GOOG/SLT_SETTINGS
.
Para informações sobre o dimensionamento de blocos, consulte Tamanho do bloco no BigQuery Connector para SAP.
Problema: /GOOG/MSG: 503 - HTTP Communication Failure exception occurred during the request sending
Problema: falha na transferência de dados com a mensagem de erro /GOOG/MSG: 503 - HTTP
Communication Failure exception occurred during the request sending
.
Causa: isso pode ser causado por problemas de conexão ou de rede.
Resolução: valide sua conexão e verifique se a rede está configurada corretamente, em execução sem erros e se não está congestionada.
Problema: /GOOG/MSG: 503 - HTTP Communication Failure exception occurred during the response receiving
Problema: falha na transferência de dados com a mensagem de erro /GOOG/MSG: 503 - HTTP
Communication Failure exception occurred during the response receiving
.
Esse problema pode ser causado pelas seguintes circunstâncias:
- Falha no handshake de SSL
- O tamanho de bytes dos blocos excedeu o tamanho máximo de bytes das solicitações HTTP aceitas pelo BigQuery
Falha no handshake de SSL
Causa: quando o handshake de SSL falhou entre o host do servidor de replicação do LT SAP e do endpoint da API BigQuery. Isso ocorre quando o certificado apresentado pelo servidor TLS não é válido para o nome do host de destino fornecido pelo servidor de replicação do LT SAP, possivelmente porque o envio do lado do cliente da extensão SNI do TLS opcional não é implementado no kernel do NetWeaver.
Resolução: na transação SMICM
, procure o código de retorno,
SSLERR_SERVER_CERT_MISMATCH
. Se você encontrar o código de retorno
SSLERR_SERVER_CERT_MISMATCH
, será necessário ativar o envio da
extensão SNI
do TLS. Além disso, verifique se o kernel do NetWeaver
implementa o envio do lado do cliente da extensão SNI do TLS opcional.
Para ativar o envio de SNI da extensão TLS, defina o parâmetro de perfil
icm/HTTPS/client_sni_enabled
ou ssl/client_sni_enabled
como TRUE
, dependendo
da versão do kernel do NetWeaver. Para mais informações da SAP, consulte os links a seguir:
- Observação SAP 510007: considerações adicionais para configurar o SSL no ABAP do servidor de aplicativos
- Nota SAP 2582368 - Atualização do SapSSL para envio do cliente da extensão TLS SNI do saphttp, sapkprotp
- Observação SAP 2124480 – ICM / Web Dispatcher: indicação de nome do servidor de extensão TLS (SNI, na sigla em inglês) como cliente
O tamanho de bytes dos blocos excedeu o tamanho máximo de bytes das solicitações HTTP aceitas pelo BigQuery
Causa: quando o tamanho de bytes do bloco enviado pelo BigQuery Connector para SAP excedeu o tamanho máximo de bytes das solicitações HTTP aceitas pelo BigQuery. Isso pode ocorrer quando o tamanho dos registros da tabela ou a quantidade de dados que eles contêm faz com que o tamanho do byte de um bloco aumente além do limite do BigQuery.
Resolução: reduza o tamanho dos blocos que são enviados pelo
BigQuery Connector para SAP para essa tabela. É possível ajustar o tamanho do bloco
executando a transação /GOOG/SLT_SETTINGS
. Para informações, consulte
Tamanho do bloco no BigQuery Connector para SAP.
Problema: /GOOG/MSG: 404 - Not found: Dataset DATASET_NAME
Problema: ao tentar validar a segurança do Google Cloud
ou carregar dados em uma tabela do BigQuery, você recebe
a mensagem /GOOG/MSG: 404 - Not found: Dataset DATASET_NAME
.
Causa:este problema pode ser causado pelas seguintes circunstâncias:
- O conjunto de dados do BigQuery ainda não foi criado.
- O nome do conjunto de dados não foi especificado corretamente na configuração da transferência em massa.
- A configuração de replicação no SAP LT Replication Server precisa ser ativada.
Resolução: tente as seguintes resoluções:
- Confirme se o conjunto de dados foi criado no BigQuery.
- Verifique se o nome do conjunto de dados na configuração da transferência em massa é o mesmo do nome do conjunto de dados no BigQuery.
- Execute a transação
LTRC
e desative e reative a configuração de replicação.
Problema: Mass Transfer Key can not be found for Mass Transfer ID XXX
Problema: você recebe o erro /GOOG/SLT: Mass Transfer Key can not
be found for Mass Transfer ID XXX
.
Causa:este problema pode ser causado pelas seguintes circunstâncias:
- Não existe uma configuração de transferência em massa para o ID especificado.
- A configuração de replicação correspondente não está ativa.
Resolução: para resolver o problema, execute uma das seguintes ações:
- Execute a transação
/GOOG/SLT_SETTINGS
e confirme se o ID da transferência em massa foi especificado corretamente. - Execute a transação
LTRC
e desative e reative a configuração de replicação.
Problema: /GOOG/SLT : Unable to interpret VALUE as a BOOLEAN
Problema: o carregamento ou a replicação de um registro falha com a mensagem /GOOG/SLT : Unable to interpret VALUE as a BOOLEAN
.
Causa: esse problema é causado pelo mapeamento de um campo na tabela de origem
para o tipo de dados do BigQuery BOOLEAN
, mas os dados
no campo de origem não são resolvidos para um booleano.
Resolução: para resolver o problema, use a transação /GOOG/SLT_SETTINGS para alterar o tipo de dados ao qual o campo de origem está mapeado ou remover o mapeamento do tipo de dados e aceitar o tipo de dados padrão.
Problema: /GOOG/SLT: Failed to convert field SAP_FIELD_NAME value to field BIGQUERY_FIELD_NAME: ERROR_DETAILS
Problema: o carregamento ou a replicação de um registro falha com a mensagem /GOOG/SLT: Failed to convert field SAP_FIELD_NAME value
to field BIGQUERY_FIELD_NAME: ERROR_DETAILS
.
Causa: o campo de origem contém um valor inválido ou o campo de origem é mapeado para um tipo de dados do BigQuery que não é um mapeamento válido para os dados que o campo de origem contém.
Resolução: para resolver o problema, use a transação /GOOG/SLT_SETTINGS
para alterar o tipo de dados ao qual o campo de origem está mapeado ou remover o mapeamento do tipo de dados e aceitar o mapeamento padrão para o tipo de dados.
Problema: /GOOG/MSG : Client key is not found in /GOOG/CLIENT_KEY table
Problema: um carregamento ou replicação não começa com a mensagem /GOOG/MSG:
Client key is not found in /GOOG/CLIENT_KEY table
.
Causa: a chave do cliente não existe ou foi especificada incorretamente na configuração de transferência em massa da transação /GOOG/SLT_SETTINGS
.
Resolução: para resolver o problema, use a transação SM30
para
criar a chave do cliente ou use a transação /GOOG/SLT_SETTINGS
para corrigir
a especificação do valor da chave do cliente no configuração de transferência em massa.
Problemas operacionais comuns
Nesta seção, você verá resoluções para problemas comuns que podem ocorrer após a configuração inicial do BigQuery Connector para SAP.
Problema: número incorreto de gravações no BigQuery
Problema: o número de registros gravados no BigQuery é maior do que o número de registros mostrados nos registros do servidor SAP LT Replication.
Causa: pode ter mais de uma causa, incluindo problemas de conexão transitórios que fazem com que o SAP LT Replication Server envie registros mais de uma vez ou o fato de que a tabela do BigQuery aceita apenas inserções, e cada alteração em um único registro na origem é inserida como uma entrada separada na tabela de destino.
Resolução: se a diferença nas contagens de registro não for extrema e não houver menos registros no BigQuery do que na tabela de origem, esse é o comportamento esperado, sem problema.
Para reconciliar com precisão o número de registros no BigQuery com o número de registros na tabela de origem, consulte a tabela do BigQuery conforme descrito em Consultas SQL para contagens de registros.
Para mais informações sobre as possíveis causas desse problema, consulte Considerações especiais para origens/destinos de ABAP no HANA.
Problema: /GOOG/MSG : 400 - Schema mismatch for table TABLE_NAME
Problema: você recebe a mensagem de erro /GOOG/MSG : 400 - Schema mismatch
for table TABLE_NAME. Please delete the table from BigQuery and
try again.
Causa: uma das seguintes alterações foi inserida em uma tabela existente do BigQuery:
- Exclusão de um campo
- Como renomear um campo
- Alteração no tipo de dados de um campo
- Alteração no tipo de partição de uma tabela
As mudanças anteriores não podem ser aplicadas a uma tabela atual do BigQuery.
Resolução: se você precisar alterar qualquer um desses atributos de campo em uma tabela atual, será necessário excluir a tabela atual e recarregar os registros em uma nova tabela.
Se a alteração foi um erro, reverta a alteração no SAP LT Replication Server.
Para mais informações sobre como configurar campos e partições em uma tabela de destino do BigQuery, consulte Configurações de replicação do BigQuery.
Problema: mensagens de erro relacionadas a dados inválidos
Problema: nos registros do aplicativo, você recebe uma mensagem de erro:
/GOOG/MSG/: DESCRIPTION_OF_INVALID_DATA error
occurred in FIELD_NAME in record
RECORD_KEYS
.
Causa: essa mensagem de erro é emitida pelo BigQuery ao inserir os registros com dados inválidos na tabela de destino. Os dados podem ser inválidos por um dos seguintes motivos:
- Os dados no campo de um registro específico não são compatíveis com o tipo de dados no BigQuery. Por exemplo, o BigQuery gera mensagens de erro quando:
- Uma string é mantida em um campo do tipo
DATE
,INTEGER
ouBOOLEAN
. - Uma data inválida (
00/00/0000
) é mantida em um campo do tipoDATE
.
- Uma string é mantida em um campo do tipo
- Um tipo de dados de destino incorreto é mantido nos mapeamentos de campo na transação
/GOOG/SLT_SETTINGS
.
Uma mensagem de erro é emitida pelo BigQuery para cada registro que contém um campo com dados inválidos.
Resolução: analise a mensagem de erro DESCRIPTION_OF_INVALID_DATA
para entender a possível causa para dados inválidos.
Para identificar o registro com o campo que contém os dados inválidos, use RECORD_KEYS
, que inclui o conteúdo dos cinco primeiros campos do registro. Se a tabela tiver cinco campos ou menos, o conteúdo de todos os campos será incluído no RECORD_KEYS
.
- Se os dados no campo não forem compatíveis com o tipo de dados no BigQuery, corrija-os na tabela de origem.
- Se o erro tiver ocorrido devido a uma incompatibilidade entre os dados e o tipo de dados, use a transação
/GOOG/SLT_SETTINGS
para especificar um tipo de dados apropriado. Para mais informações sobre o mapeamento do tipo de dados, consulte Mapeamento do tipo de dados.
Receber suporte
Se você precisar de ajuda para resolver problemas de replicação e do conector do BigQuery para SAP, colete todas as informações de diagnóstico disponíveis e entre em contato com o atendimento ao cliente do Cloud.
Para mais informações sobre como entrar em contato com o Cloud Customer Care, consulte Como receber suporte para a SAP no Google Cloud.