Fehlerbehebung bei der Bereitstellung von Nachrichten-Logging-Richtlinien

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

InvalidProtocol

Fehlermeldung

Die Bereitstellung eines API-Proxys über die Edge-Benutzeroberfläche oder die Edge-Verwaltungs-API schlägt mit der folgenden Fehlermeldung fehl:

Error Saving Revision revision_number
Invalid Protocol: invalid_protocol for Syslog handler in policy policy_name.

Beispiel für Fehlermeldung

Error Saving Revision 4
Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.

Beispiel-Screenshot

Ursache

Die Bereitstellung der MessageLogging-Richtlinie kann mit diesem Fehler fehlschlagen, wenn das im <Protocol>-Element angegebene Protokoll nicht gültig ist. Gültige Protokolle sind TCP und UDP. Zum Senden von Syslog-Nachrichten über TLS/SSL wird nur TCP unterstützt.

Die Bereitstellung des API-Proxys schlägt beispielsweise mit diesem Fehler fehl, wenn Sie HTTP im Element <Protocol> der MessageLogging-Richtlinie wie unten gezeigt angeben:

<Protocol>HTTP</Protocol>

Diagnose

  1. Ermitteln Sie die MessageLogging-Richtlinie, in der der Fehler aufgetreten ist. Diese Informationen finden Sie in der Fehlermeldung. Im folgenden Fehler lautet der Richtlinienname beispielsweise LogToSyslog:.

    Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
    
  2. Prüfen Sie in der Konfiguration der fehlgeschlagenen MessageLogging-Richtlinien, ob das im Element <Protocol> angegebene Protokoll gültig ist. Wenn ein ungültiges Protokoll angegeben ist, ist dies die Ursache des Fehlers.

    Die folgende Richtlinie gibt beispielsweise ein ungültiges Protokoll an.

    <?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
    Mes>sag<eLoggi>ng na<me=&quo>t;LogToSyslog"
      Syslog
        Message[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"]< Weather> requ<est >for WOEID {request<.quer>ypara<m.w}>./M<essag>e
       < Hostlog>s-01<.loggly.c>om/Ho<st
        Port51>4/Po<rt
        Protoco>lHT<TP/Prot>oco<l
        Fo>rmatM<essagetru>e</FormatMessage
    >  /Syslog
      logLevelALERT/logLevel
    /MessageLogging
    

    Da das im Element <Protocol> definierte Protokoll ungültig ist, schlägt die Bereitstellung des API-Proxys mit dem folgenden Fehler fehl:

    Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
    

Lösung

Achten Sie darauf, dass das im Element <Protocol> der MessageLogging-Richtlinie definierte Protokoll gültig ist. Das Element <Protocol> unterstützt die folgenden Werte:

  • TCP
  • UDP

Um das obige Beispiel zu korrigieren, definieren Sie ein gültiges Protokoll im Element <Protocol>:

<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
Mes>sag<eLoggi>ng na<me=&quo>t;LogToSyslog"
  Syslog
    Message[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"]< Weather> requ<est >for WOEID {request<.quer>ypara<m.w}>./M<essag>e
   < Hostlog>s-0<1.loggly.>com/H<ost
    Port5>14/P<ort
    Protoc>olT<CP/Prot>oco<l
    Fo>rmatM<essagetru>e</FormatMessage
>  /Syslog
  logLevelALERT/logLevel
/MessageLogging

InvalidPort

Fehlermeldung

Die Bereitstellung eines API-Proxys über die Edge-Benutzeroberfläche oder die Edge-Verwaltungs-API schlägt mit der folgenden Fehlermeldung fehl:

Error Saving Revision revision_number
Invalid Port: 0 for Syslog handler in policy policy_name.

Beispiel für Fehlermeldung

Error Saving Revision 4
Invalid Port: 0 for Syslog handler in policy LogToSyslog.

Beispiel-Screenshot

Ursache

Die Bereitstellung der MessageLogging-Richtlinie kann mit diesem Fehler fehlschlagen, wenn die Portnummer nicht im Element <Port> angegeben oder ungültig ist. Die Portnummer muss eine Ganzzahl größer als null sein.

Wenn beispielsweise das Element <Port> wie unten gezeigt deklariert wird, schlägt die Bereitstellung des API-Proxys fehl:

<Port>0</Port>

Diagnose

  1. Ermitteln Sie die MessageLogging-Richtlinie, in der der Fehler aufgetreten ist. Diese Informationen finden Sie in der Fehlermeldung. Im folgenden Fehler lautet der Richtlinienname beispielsweise LogToSyslog:.

    Invalid Port: 0 for Syslog handler in policy LogToSyslog.
    
  2. In der fehlgeschlagenen MessageLogging-Richtlinie wird geprüft, ob im Element <Port> eine gültige Portnummer angegeben ist. Wenn die Portnummer nicht definiert oder ungültig ist, ist dies die Ursache des Fehlers.

    Die folgende Richtlinie gibt beispielsweise eine ungültige Portnummer an:

    <?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
    Mes>sag<eLoggi>ng na<me=&quo>t;LogToSyslog"
      Syslog
        Message[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"]< Weather> requ<est >for WOEID {request<.quer>ypara<m.w}>.</Mess>age
     <   Hostl>ogs<-01.loggl>y.com</Host
        Por>t0/P<ort
        Protoc>olT<CP/Prot>oco<l
        Fo>rmatM<essagetru>e</FormatMessage
    >  /Syslog
      logLevelALERT/logLevel
    /MessageLogging
    

    Da die im <Port>-Element definierte Portnummer ungültig ist, schlägt die Bereitstellung des API-Proxys mit dem folgenden Fehler fehl:

    Invalid Port: 0 for Syslog handler in policy LogToSyslog.
    

Lösung

Prüfen Sie, ob im Element <Port> der MessageLogging-Richtlinie eine Portnummer definiert ist. Sie muss eine Ganzzahl größer als null sein.

Geben Sie im <Protocol>-Element eine gültige Portnummer an, um das obige Beispiel zu korrigieren.

<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
Mes>sag<eLoggi>ng na<me=&quo>t;LogToSyslog"
  Syslog
    Message[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"]< Weather> requ<est >for WOEID {request<.quer>ypara<m.w}>./M<essag>e
   < Hostlog>s-0<1.loggly.>com/H<ost
    Port5>14/P<ort
    Protoc>olT<CP/Prot>oco<l
    Fo>rmatM<essagetru>e</FormatMessage
>  /Syslog
  logLevelALERT/logLevel
/MessageLogging