Stai visualizzando la documentazione di Apigee e Apigee hybrid.
Visualizza la documentazione di
Apigee Edge.
InvalidProtocol
Messaggio di errore
Il deployment di un proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Invalid Protocol: invalid_protocol for Syslog handler in policy policy_name.
Esempio di messaggio di errore
Error Saving Revision 4
Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
Screenshot di esempio
Causa
Il deployment della policy di registrazione dei messaggi può non riuscire con questo errore se il protocollo specificato all'interno dell'elemento <Protocol>
non è valido. I protocolli validi sono TCP e UDP. Per l'invio di messaggi syslog tramite TLS/SSL, è supportato solo TCP.
Ad esempio, il deployment del proxy API non riesce con questo errore se specifichi HTTP nell'elemento <Protocol>
del criterio di registrazione dei messaggi, come mostrato di seguito:
<Protocol>HTTP</Protocol>
Diagnosi
Identifica il criterio di registrazione dei messaggi in cui si è verificato l'errore. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nell'errore seguente, il nome del criterio è
LogToSyslog:
Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
Nella configurazione della norma di logging dei messaggi non riuscita, controlla se il protocollo specificato all'interno dell'elemento
<Protocol>
è valido. Se è stato specificato un protocollo non valido, è questa la causa dell'errore.Ad esempio, il seguente criterio specifica un protocollo non valido.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <MessageLogging name="LogToSyslog"> <Syslog> <Message>[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"] Weather request for WOEID {request.queryparam.w}.</Message> <Host>logs-01.loggly.com</Host> <Port>514</Port> <Protocol>HTTP</Protocol> <FormatMessage>true</FormatMessage> </Syslog> <logLevel>ALERT</logLevel> </MessageLogging>
Poiché il protocollo definito all'interno dell'elemento
<Protocol>
non è valido, il deployment del proxy API non riesce con l'errore:Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
Risoluzione
Assicurati che il protocollo definito all'interno dell'elemento <Protocol>
del criterio di registrazione dei messaggi sia valido. L'elemento <Protocol>
supporta i seguenti valori:
- TCP
- UDP
Per correggere l'esempio mostrato sopra, definisci un protocollo valido all'interno dell'elemento <Protocol>
:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<MessageLogging name="LogToSyslog">
<Syslog>
<Message>[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"] Weather request for WOEID {request.queryparam.w}.</Message>
<Host>logs-01.loggly.com</Host>
<Port>514</Port>
<Protocol>TCP</Protocol>
<FormatMessage>true</FormatMessage>
</Syslog>
<logLevel>ALERT</logLevel>
</MessageLogging>
InvalidPort
Messaggio di errore
Il deployment di un proxy API tramite l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:
Error Saving Revision revision_number Invalid Port: 0 for Syslog handler in policy policy_name.
Esempio di messaggio di errore
Error Saving Revision 4
Invalid Port: 0 for Syslog handler in policy LogToSyslog.
Screenshot di esempio
Causa
Il deployment del criterio di registrazione dei messaggi può non riuscire con questo errore se il numero di porta non è specificato all'interno dell'elemento <Port>
o se non è valido. Il numero di porta deve essere un numero intero maggiore di zero.
Ad esempio, se l'elemento <Port>
è dichiarato come mostrato di seguito, il deployment del proxy API non va a buon fine:
<Port>0</Port>
Diagnosi
Identifica il criterio di registrazione dei messaggi in cui si è verificato l'errore. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nell'errore seguente, il nome del criterio è
LogToSyslog:
Invalid Port: 0 for Syslog handler in policy LogToSyslog.
Nel criterio di registrazione dei messaggi non riuscito, controlla se nell'elemento
<Port>
è specificato un numero di porta valido. Se il numero di porta non è definito o non è valido, è la causa dell'errore.Ad esempio, il seguente criterio specifica un numero di porta non valido:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <MessageLogging name="LogToSyslog"> <Syslog> <Message>[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"] Weather request for WOEID {request.queryparam.w}.</Message> <Host>logs-01.loggly.com</Host> <Port>0</Port> <Protocol>TCP</Protocol> <FormatMessage>true</FormatMessage> </Syslog> <logLevel>ALERT</logLevel> </MessageLogging>
Poiché il numero di porta definito all'interno dell'elemento
<Port>
non è valido, il deployment del proxy API non va a buon fine con l'errore:Invalid Port: 0 for Syslog handler in policy LogToSyslog.
Risoluzione
Assicurati che un numero di porta sia definito all'interno dell'elemento <Port>
del criterio di registrazione dei messaggi. Deve essere un numero intero maggiore di zero.
Per correggere l'esempio mostrato sopra, definisci un numero di porta valido all'interno dell'elemento <Protocol>
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<MessageLogging name="LogToSyslog">
<Syslog>
<Message>[3f509b58 tag="{organization.name}.{apiproxy.name}.{environment.name}"] Weather request for WOEID {request.queryparam.w}.</Message>
<Host>logs-01.loggly.com</Host>
<Port>514</Port>
<Protocol>TCP</Protocol>
<FormatMessage>true</FormatMessage>
</Syslog>
<logLevel>ALERT</logLevel>
</MessageLogging>