Timeout del report

Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione Documentazione di Apigee X.
Informazioni

Sintomo

Quando utilizzi lo script apigee-provision per creare una nuova organizzazione, a volte lo script si chiude con un messaggio di errore. A seguito di questo errore, se tenti di visualizzare la dashboard della UI Edge o qualsiasi dashboard di analisi, vedrai il messaggio di errore Il report è scaduto per l'organizzazione appena creata.

Messaggio di errore

Quando esegui lo script apigee-provision per creare una nuova organizzazione, potresti visualizzare il seguente messaggio di errore:

!!!! Error !!!! 
HTTP STATUS CODE: 400 
{ 
"code" : "dataapi.service.PGFoundInMultipleGroups", 
"message" : "dataapi.service.PGFoundInMultipleGroups", 
"contexts" : [ ] 
} 

Anche se ricevi questo errore, puoi operare sull'organizzazione appena creata dopo la chiusura dello script di provisioning. Tuttavia, quando tenti di visualizzare la dashboard della UI Edge, vedrai il seguente messaggio di errore per l'organizzazione appena creata:

The report timed out
Try again with a smaller date range or a larger aggregation interval.

Ecco uno screenshot che mostra l'errore:

Possibili cause

Causa Descrizione Istruzioni per la risoluzione dei problemi applicabili per
Configurazione di più gruppi AX Sono stati creati più gruppi di analisi con lo stesso insieme di server Postgres. Utenti Edge Private Cloud

Causa: configurazione di più gruppi AX

Diagnosi

  1. Esegui la seguente API di gestione dei gruppi di Analytics e determina se l'output mostra più di un gruppo di analisi definito. Ad esempio:

    curl -u adminEmail:adminPwd http://<ms_ip>:8080/v1/analytics/groups/ax
    

    Output di esempio che mostra due gruppi di analisi

    {  
     "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":{  
     }
    }

    L'output mostra che esistono due gruppi di dati e analisi axgroup-001 e axgroup001.

  2. Verifica che per tutti i gruppi di analisi siano stati definiti degli ambiti.

    Nell'output di esempio dei gruppi di analisi mostrato sopra, per il gruppo di analisi axgroup-001 non sono stati definiti ambiti, ma ha comunque server Postgres definiti come datastore.

  3. Esegui il comando riportato di seguito per le statistiche della coda Qpid sui server Qpid e verifica se non vengono inviati messaggi per lo specifico gruppo di analisi identificato nel passaggio 2.

    qpid-stat -q
    

    Statistiche di esempio relative alla coda Qpid

    Le seguenti statistiche relative alle code Qpid indicano che non sono disponibili messaggi per la coda del gruppo di analisi specifico dell'esempio citato in precedenza (axgroup-001):

    coda di dur autoDel escluso messaggio msgIn msgOut byte bytesIn bytesOut svantaggi associare
    140995fe-71a7-4000-a1f4-71b7a951da7f:0.0 Y Y 0 0 0 0 0 0 1 2
    ax-q-axgroup-001-consumer-group-001 Y 0 0 0 0 0 0 12 2
    ax-q-axgroup-001-consumer-group-001-dl Y 0 0 0 0 0 0 0 2
    ax-q-axgroup001-consumer-group-001 Y 0 241 carati 241 carati 0 21,7 g 21,7 g 12 2
    ax-q-axgroup001-consumer-group-001-dl Y 323 323 0 52,4 milioni 52,4 milioni 0 0 2

    Poiché non sono presenti messaggi/traffico per lo specifico gruppo di analisi axgroup-001, visualizzi l'errore "Timeout del report" nella dashboard della UI Edge o nelle dashboard di analisi.

Risoluzione

Per risolvere questo problema, elimina axgroup che è privo di ambito e che non riceve traffico.

Segui la procedura riportata di seguito per eliminare axgroup :

Passaggio 1: elimina i consumer per un determinato gruppo ax.

  1. Utilizza la seguente API di gestione per rimuovere ciascun consumer da 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}'
    
  2. Ripeti la stessa chiamata API riportata sopra in caso di più consumer, menzionando l'UUID di ciascun consumer in una chiamata API separata.

    Per l'esempio mostrato sopra, la seguente API rimuove il consumer con 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
    }
    
  3. Esegui di nuovo la stessa API per eliminare l'altro consumer il cui UUID è 7794c428-e553-4ed2-843d-69f93bbec8a3 nell'esempio in questione.

Passaggio 2 : rimuovi i gruppi di consumer

  1. Utilizza la seguente API di gestione per rimuovere i gruppi di consumer da un determinato axgroup:

    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}'
    

    Esempio:

    La seguente API elimina il nome del gruppo di consumer 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
    }
    

Passaggio 3: elimina qpid-servers da axgroup

  1. Utilizza la seguente API di gestione per eliminare qpid-servers dall'elemento axgroup specifico.

    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"
    
  2. Esegui di nuovo la stessa chiamata API nel caso in cui siano presenti più server Qpid.

    Esempio:

    Utilizza la seguente API per eliminare il server Qpid con l'UUID 7794c428-e553-4ed2-843d-69f93bbec8a3 nell'esempio seguente:

    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" : {
      }
    }
    

Passaggio 4: elimina i server postgres da axgroup

  1. Utilizza la seguente API di gestione per eliminare il server Postgres, se è presente un solo server Postgres:

    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"
    
  2. Usa la seguente API di gestione per eliminare i server Postgres se hai una configurazione master e uno slave Postgres

    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"
    

    Esempio:

    Nell'esempio mostrato sopra, esistono server Postgres master e slave, quindi puoi utilizzare la seguente API per eliminare i server 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
    }
    
    

PASSAGGIO 5: rimuovi il gruppo di analisi

  1. Utilizza la seguente API di gestione per rimuovere il gruppo di analisi:

    curl -v -X DELETE "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}"
    

    Esempio:

    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
    }
    

PASSAGGIO 6: controlla se il gruppo è stato rimosso completamente

  1. Utilizza la seguente API di gestione per verificare se un determinato gruppo di analisi è stato rimosso completamente:

    curl -v -u admin@email.com -X GET "http://{mgmt-server-host}:8080/v1/analytics/groups/ax 
    

    Esempio:

    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" : {
      }
    } ]
    

    Tieni presente che nell'output riportato sopra non sono presenti informazioni relative al gruppo di analisi axgroup-001 specifico. Conferma che axgroup-001 è stato completamente rimosso.

Passaggio 7: riavvia i processi

I seguenti processi sulle macchine Qpid e Postgres:

  1. Riavvia apigee-qpidd.
  2. Riavvia edge-qpid-server.
  3. Riavvia edge-postgres-server.
  4. Riavvia apigee-postgresql.

Passaggio 8: verifica

Verifica che i dati vengano visualizzati nelle dashboard di analisi.

Se il problema persiste, vai alla pagina Raccogliere dati diagnostici.

Raccogliere informazioni diagnostiche

Se il problema persiste anche dopo aver seguito le istruzioni riportate sopra, raccogli le seguenti informazioni diagnostiche. Contatta l'assistenza Apigee Edge e condividi le informazioni raccolte.

  1. Configurazione dell'architettura dell'installazione del cloud privato (numero di host di configurazione, numero di ciascuno dei componenti).
  2. Output dei seguenti comandi:

    1. Gruppo di Analytics

      curl -u sysadminEmail:sysadminPwd   http://{mgmt-server-host}:8080/v1/analytics/groups/ax
      
    2. Statistiche della coda Qpid su ciascuna delle macchine Qpid

      qpid-stat -q
      
    3. Stato Analytics

      curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/organizations/{org-name}/environments/{environment-name}/provisioning/axstatus