Você está lendo a documentação do Apigee Edge.
Acesse a documentação da
Apigee X. info
Sintoma
Quando você usa o script apigee-provision para criar uma organização, às vezes ele é encerrado com uma mensagem de erro. Depois desse erro, se você tentar acessar o painel da interface do Edge ou qualquer painel de análise, vai aparecer a mensagem de erro O relatório atingiu o tempo limite para a organização recém-criada.
Mensagem de erro
Ao executar o script apigee-provision para criar uma organização, a seguinte mensagem de erro pode aparecer:
!!!! Error !!!!
HTTP STATUS CODE: 400
{
"code" : "dataapi.service.PGFoundInMultipleGroups",
"message" : "dataapi.service.PGFoundInMultipleGroups",
"contexts" : [ ]
}
Mesmo que você receba esse erro, poderá operar na organização recém-criada depois que o script de provisionamento for encerrado. No entanto, ao tentar acessar o painel da interface do Edge, você vai encontrar a seguinte mensagem de erro para a organização recém-criada:
The report timed out
Try again with a smaller date range or a larger aggregation interval.
Confira uma captura de tela mostrando o erro:

Causas possíveis
| Causa | Descrição | Instruções de solução de problemas aplicáveis para |
| Configuração de vários grupos de AX | Vários grupos de análise foram criados com o mesmo conjunto de servidores Postgres. | Usuários da nuvem privada do Edge |
Causa: vários grupos do AX configurados
Diagnóstico
Execute a seguinte API de gerenciamento de grupos do Google Analytics e determine se a saída mostra mais de um grupo definido. Exemplo:
curl -u adminEmail:adminPwd http://<ms_ip>:8080/v1/analytics/groups/axExemplo de saída mostrando dois grupos de análise
{ "name":"axgroup-001", "properties":{ }, "scopes":[ ], "uuids":{ "qpid-server":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "postgres-server":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups":[ { "name":"consumer-group-001", "consumers":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties":{ } } ], "data-processors":{ } }, { "name":"axgroup001", "properties":{ "consumer-type":"ax" }, "scopes":[ "017pdspoint~dev", "010test~dev", "019charmo~dev", "009gcisearch1~dev", "000fj~trial-fjwan", "009dekura~dev", "008pisa~dev", "004fjadrms~dev", "018k5billing~dev", "004study14~dev", "001teama~dev", "005specdb~dev", "test~dev", "000fj~prod-fjwan", "012pjweb~dev", "020workflow~dev", "007ikou~prod-fjwan", "003asano~dev", "013mims~dev", "006studyhas~dev", "006efocus~dev", "002wfproto~dev", "008murahata~dev", "016mediaapi~dev", "015skillnet~dev", "014aclmanager~dev", "010fjppei~dev", "000fj~trial", "003esupport~dev", "000fj~prod", "005ooi~dev", "test~elb1", "007fjauth~dev", "011osp~dev", "002study~dev", "999test~dev" ], "uuids":{ "qpid-server":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "aries-datastore":[ ], "postgres-server":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "dw-server":[ ] }, "consumer-groups":[ { "name":"consumer-group-001", "consumers":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties":{ } } ], "data-processors":{ } }
Essa saída mostra que há dois grupos de análise axgroup-001 e axgroup001.
Verifique se todos os grupos de análise têm escopos definidos.
No exemplo de saída de grupos de análise mostrado acima, o grupo axgroup-001 não tem escopos definidos, mas ainda tem servidores Postgres definidos como repositórios de dados.
Execute o comando de estatísticas da fila do Qpid abaixo nos servidores do Qpid e valide se não há mensagens chegando para o grupo de análise específico identificado na etapa 2.
qpid-stat -qExemplo de estatísticas de fila do Qpid
As estatísticas da fila do Qpid a seguir indicam que não há mensagens chegando para a fila do grupo de análise específico do exemplo citado acima (axgroup-001):
queue dur autoDel excl msg msgIn msgOut bytes bytesIn bytesOut cons bind 140995fe-71a7-4000-a1f4-71b7a951da7f:0.0 S S 0 0 0 0 0 0 1 2 ax-q-axgroup-001-consumer-group-001 S 0 0 0 0 0 0 12 2 ax-q-axgroup-001-consumer-group-001-dl S 0 0 0 0 0 0 0 2 ax-q-axgroup001-consumer-group-001 S 0 241 mil 241 mil 0 21,7 g 21,7 g 12 2 ax-q-axgroup001-consumer-group-001-dl S 323 323 0 52,4 m 52,4 m 0 0 2 Como não há mensagens/tráfego para o grupo de análise específico axgroup-001, o erro "O relatório atingiu o tempo limite" aparece no painel da interface do Edge ou nos painéis de análise.
Resolução
Para resolver esse problema, exclua o axgroup que não tem escopos nem recebe tráfego.
Siga o procedimento abaixo para excluir o axgroup :
Etapa 1: exclua os consumidores do axgroup específico.
Use a seguinte API de gerenciamento para remover cada um dos consumidores do
axgroup:curl -v -u admin@email.com:password -X DELETE -H 'Accept:application/json' -H 'Content-Type:application/json' 'http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/consumer-groups/{consumer-group-name}/consumers/{uuid-of the consumer}'Repita a mesma chamada de API acima se houver vários consumidores, mencionando o UUID de cada um em uma chamada de API separada.
No exemplo acima, a API a seguir remove o consumidor com UUID
5c1e9690-7b58-499a-a4bb-d54454474b8f:curl -v -X DELETE -H 'Accept:application/json' -H 'Content-Type:application/json' 'http://localhost:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers/5c1e9690-7b58-499a-a4bb-d54454474b8f' { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }Execute a mesma API para excluir o outro consumidor cujo UUID é 7794c428-e553-4ed2-843d-69f93bbec8a3 no exemplo atual.
Etapa 2 : remover os grupos de consumidores
Use a seguinte API Management para remover os grupos de consumidores do
axgroupespecífico:curl -v -u admin@email.com:password -X DELETE 'http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/consumer-groups/{consumer-group-name}'Exemplo:
A API a seguir exclui o nome do grupo de consumidores consumer-group-001::
curl -v -X DELETE 'http://localhost:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001' { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
Etapa 3: excluir os qpid-servers do axgroup
Use a seguinte API Management para excluir
qpid-serversdoaxgroupespecífico.curl -X DELETE -u admin@email.com "http://localhost:8080/v1/analytics/groups/ax/{axgroup-name}/servers?uuid={qpid-server-uuid}type=qpid-server" -H "Content-type: application/json"Execute a mesma chamada de API novamente se houver vários servidores Qpid.
Exemplo:
Use a API a seguir para excluir o servidor Qpid com UUID 7794c428-e553-4ed2-843d-69f93bbec8a3 no exemplo atual:
curl -X DELETE "http://localhost:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=7794c428-e553-4ed2-843d-69f93bbec8a3&type=qpid-server" -H "Content-type: application/json" { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f" ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } }
Etapa 4: excluir os servidores postgres do axgroup
Use a seguinte API de gerenciamento para excluir o servidor do Postgres, se houver apenas um:
curl -v -X DELETE -H 'Accept:application/json' "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/servers?uuid={postgres-server-uuid}&type=postgres-server&force=true"Use a seguinte API de gerenciamento para excluir os servidores do PostgreSQL se você tiver uma configuração de mestre e escravo do PostgreSQL.
curl -v -X DELETE -H 'Accept:application/json' "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/servers?uuid={postgres-master-uuid,postgres-slave-uuid}&type=postgres-server&force=true"Exemplo:
No exemplo acima, há servidores Postgres principais e secundários. Portanto, é possível usar a seguinte API para excluir os servidores Postgres:
curl -v -X DELETE -H 'Accept:application/json' "http://localhost:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=3b28b790-ec4e-45c5-a8d0-6d6f2088da65,750cd8ba-1799-4dfb-8c74-548010e95e5e&type=postgres-server&force=true" { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ ], "postgres-server" : [ ] }, "consumer-groups" : [ ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
ETAPA 5: remover o grupo de análise
Use a seguinte API de gerenciamento para remover o grupo de análise:
curl -v -X DELETE "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}"Exemplo:
curl -v -X DELETE "http://localhost:8080/v1/analytics/groups/ax/axgroup-001" { "properties" : { }, "scopes" : [ ], "uuids" : { }, "consumer-groups" : [ ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
ETAPA 6: confira se o grupo foi removido completamente
Use a seguinte API Management para verificar se o grupo de análise específico foi totalmente removido:
curl -v -u admin@email.com -X GET "http://{mgmt-server-host}:8080/v1/analytics/groups/axExemplo:
curl localhost:8080/v1/analytics/groups/ax [ { "name" : "axgroup001", "properties" : { "consumer-type" : "ax" }, "scopes" : [ "017pdspoint~dev", "010test~dev", "019charmo~dev", "009gcisearch1~dev", "000fj~trial-fjwan", "009dekura~dev", "008pisa~dev", "004fjadrms~dev", "018k5billing~dev", "004study14~dev", "001teama~dev", "005specdb~dev", "test~dev", "000fj~prod-fjwan", "012pjweb~dev", "020workflow~dev", "007ikou~prod-fjwan", "003asano~dev", "013mims~dev", "006studyhas~dev", "006efocus~dev", "002wfproto~dev", "016mediaapi~dev", "015skillnet~dev", "014aclmanager~dev", "010fjppei~dev", "000fj~trial", "003esupport~dev", "000fj~prod", "005ooi~dev", "test~elb1", "007fjauth~dev", "011osp~dev", "002study~dev" ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "aries-datastore" : [ ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "dw-server" : [ ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } } ]Não há informações sobre o grupo de análise específico axgroup-001 na saída acima. Isso confirma que axgroup-001 foi totalmente removido.
Etapa 7: reiniciar processos
Os seguintes processos nas máquinas Qpid e Postgres:
- Reinicie o apigee-qpidd.
- Reinicie o edge-qpid-server.
- Reinicie o edge-postgres-server.
- Reinicie o apigee-postgresql.
Etapa 8: verificação
Verifique se os dados aparecem nos painéis de análise.
Se o problema persistir, acesse Precisa de informações de diagnóstico.
É necessário coletar informações de diagnóstico
Se o problema persistir mesmo depois de seguir as instruções acima, colete as seguintes informações de diagnóstico. Entre em contato com o suporte do Apigee Edge e compartilhe as informações coletadas.
- Configuração da arquitetura da instalação da nuvem privada (quantos hosts configurados, número de cada um dos componentes).
Saída dos seguintes comandos:
Grupo do Analytics
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/analytics/groups/axEstatísticas da fila do Qpid em cada uma das máquinas do Qpid
qpid-stat -qStatus do Google Analytics
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/organizations/{org-name}/environments/{environment-name}/provisioning/axstatus