Risoluzione degli errori di deployment dei criteri del raccoglitore statistiche

Stai visualizzando la documentazione di Apigee X.
Visualizza la documentazione di Apigee Edge.

TipoDati non supportato

Messaggio di errore

Il deployment del proxy API tramite l'interfaccia utente o l'API Apigee non riesce con questo messaggio di errore:

Error Deploying Revision [revision_number]
StatisticsCollection [datatype]: Datatype Revision:[revision_number];APIProxy:[api_proxy];Organization:[org_name];Environment:[env_name] is unsupported . Context [context].

Esempio di messaggio di errore

Error Saving Revision 1
StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.

Screenshot di esempio

Messaggio di errore relativo al tipo di dati non supportato.

Causa

Se il tipo di variabile specificato dall'attributo ref nell'elemento <Statistic> del criterio Raccoglitore statistiche non è supportato, il deployment del proxy API non riesce.

I tipi di dati supportati sono string, integer, float, long, double e boolean.

Ad esempio, se il tipo di variabile è specificato come char nell'elemento <Statistic> del criterio Raccoglitore statistiche, il deployment del proxy API non riesce.

Diagnosi

  1. Identifica il criterio del raccoglitore di statistiche nel proxy API specifico in cui si è verificato l'errore.
  2. Identifica il tipo di dati non supportato utilizzato nel criterio Raccoglitore statistiche. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nell'errore seguente, il tipo di dati non supportato è char:

    StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
    
  3. Verifica che l'attributo type utilizzato nei criteri del raccoglitore statistiche non riuscito corrisponda al tipo di dati identificato nel messaggio di errore (passaggio 2 sopra). Ad esempio, il seguente criterio specifica il tipo di dati char, che corrisponde a quanto previsto dal messaggio di errore:

    <StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1">
      <DisplayName>Statistics Collector 1</DisplayName>
      <Statistics>
          <Statistic name="statName" ref="varName" type="char">defaultStatValue</Statistic>
      </Statistics>
    </StatisticsCollector>
    
  4. Se l'attributo type non è un tipo di dati supportato, questa è la causa dell'errore.

    Nell'esempio del criterio Raccoglitore di statistiche mostrato sopra, ricorda che l'attributo type è impostato su char, che non è supportato. Pertanto, il deployment del proxy API non riesce e restituisce l'errore:

    StatisticsCollection char: Datatype Revision:1;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is unsupported . Context {2}.
    

Risoluzione

Assicurati che il tipo di dati delle variabili specificate dagli attributi ref negli elementi <Statistic> del criterio Raccoglitore statistiche sia supportato e valido. Ad esempio:

<StatisticsCollector async="false" continueOnError="false" enabled="true" name="Statistics-Collector-1">
    <DisplayName>Statistics Collector 1</DisplayName>
    <Statistics>
        <Statistic name="statName" ref="varName" type="string">defaultStatValue</Statistic>
    </Statistics>
</StatisticsCollector>

Nome non valido

Messaggio di errore

Il deployment del proxy API tramite l'interfaccia utente o l'API Apigee non riesce con questo messaggio di errore:

Error Deploying Revision [revision_number]
StatisticsCollection: Name: [name] conflicts with system defined variables. Context policy: [policy_name]

Esempio di messaggio di errore

Error Saving Revision 1
StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.

Screenshot di esempio

Messaggio di errore relativo al nome non valido.

Causa

Se il nome utilizzato per fare riferimento ai dati raccolti per la variabile specificata all'interno dell'elemento <Statistic> del criterio Raccoglitore statistiche è in conflitto con una variabile definita dal sistema, il deployment del proxy API non riesce.

Alcune delle variabili note definite dal sistema sono organization e environment.

Ad esempio, se l'attributo del nome è specificato come organization nell'elemento <Statistic> del criterio Raccoglitore statistiche, il deployment del proxy API non riesce.

Diagnosi

  1. Identifica il criterio del raccoglitore di statistiche in cui si è verificato l'errore e il nome dell'elemento <Statistic> in conflitto con una variabile definita dal sistema. Puoi trovare entrambi questi elementi nel messaggio di errore. Ad esempio, nell'errore seguente il nome del criterio è StatCollector, il nome dell'elemento <Statistic> in conflitto con la variabile definita dal sistema è organization:

    StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.
    
  2. Verifica che il nome dell'elemento <Statistic> utilizzato nel file XML del criterio Raccoglitore statistiche non riuscito corrisponda al nome identificato nel messaggio di errore (passaggio 1 sopra). Ad esempio, il seguente criterio specifica il nome organization nell'elemento <Statistic>, che corrisponde a quanto previsto dal messaggio di errore:

    <StatisticsCollector name="StatCollector">
      <Statistics>
          <Statistic name="organization" ref="organization" type="string">myorg</Statistic>
          <Statistic name="traffic" ref="traffic" type="string">999999</Statistic>
      </Statistics>
    </StatisticsCollector>
    
  3. Esamina la definizione di ciascuno degli elementi <Statistic>. La presenza dell'elemento <Statistic> in cui l'attributo name è in conflitto con una variabile di sistema è la causa dell'errore.

Nell'esempio del criterio Raccoglitore di statistiche mostrato sopra, ricorda che l'attributo del nome <Statistic> utilizzato è organization, che è il nome della variabile di sistema. Quindi, il deployment del proxy API non riesce e restituisce l'errore:

StatisticsCollection: Name: organization conflicts with system defined variables. Context policy: StatCollector.

Risoluzione

Assicurati che il nome dell'elemento <Statistic> utilizzato per fare riferimento ai dati raccolti per la variabile specificata all'interno dell'elemento <Statistic> nel criterio Raccoglitore statistiche non corrisponda alle variabili definite dal sistema. Ad esempio:

<StatisticsCollector name="StatCollector">
    <Statistics>
        <Statistic name="org" ref="org" type="string">myorg</Statistic>
        <Statistic name="traffic" ref="traffic" type="string">999999</Statistic>
    </Statistics>
</StatisticsCollector>

Tipo di dati mancante

Messaggio di errore

Il deployment del proxy API tramite l'interfaccia utente o l'API Apigee non riesce con questo messaggio di errore:

Error Deploying Revision [revision_number]
StatisticsCollection [ref]: Datatype of Revision:[revision_number];APIProxy:[api_proxy];Organization:[org_name];Environment:[env_name] is missing . Context [context].

Esempio di messaggio di errore

Error Deploying Revision 2 to test
StatisticsCollection product.id: Datatype of Revision:2;APIProxy:StatCollector;Organization:aprabhashankar-eval;Environment:test is missing. Context {2}.

Screenshot di esempio

Messaggio di errore tipo di dati mancante.

Causa

Se il tipo di variabile specificato dall'attributo ref nell'elemento <Statistic> del criterio Raccoglitore statistiche manca, il deployment del proxy API non riesce.

Diagnosi

  1. Identifica il criterio del raccoglitore di statistiche nel proxy API specifico in cui si è verificato l'errore.
  2. Esamina la definizione di ciascuno degli elementi <Statistic> nel file XML del criterio raccoglitore statistiche non riuscito. Se sono presenti elementi <Statistic> in cui l'attributo tipo manca, è la causa dell'errore.

Ecco un esempio di norme per la raccolta di statistiche:

  <StatisticsCollector name="publishPurchaseDetails"
      <Statistics>
          <Statistic name="productID" ref="product.id">999999</Statistic>
          <Statistic name="price" ref="product.price" type="string">1000</Statistic>
      </Statistics>
  </StatisticsCollector>
  

Nelle norme del raccoglitore di statistiche mostrato sopra, puoi notare che l'attributo tipo risulta mancante per entrambi gli elementi <Statistic>. Pertanto, il deployment del proxy API non riesce.

Risoluzione

Assicurati che l'attributo type della variabile specificata dall'attributo ref nell'elemento <Statistic> del criterio Raccoglitore statistiche sia sempre specificato e sia di tipo dati supportato.

I tipi di dati supportati sono string, integer, float, long, double e boolean.

Ad esempio:

<StatisticsCollector name="publishPurchaseDetails">
    <Statistics>
        <Statistic name="productID" ref="product.id" type="string">999999</Statistic>
        <Statistic name="price" ref="product.price"  type="string">1000</Statistic>
    </Statistics>
</StatisticsCollector>