Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X. информация
Неверный протокол
Сообщение об ошибке
Развертывание прокси-сервера API через пользовательский интерфейс Edge или API управления Edge завершается с ошибкой с этим сообщением об ошибке:
Error Saving Revision revision_number Invalid Protocol: invalid_protocol for Syslog handler in policy policy_name.
Пример сообщения об ошибке
Error Saving Revision 4
Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
Пример скриншота
Причина
Развертывание политики политики MessageLogging может завершиться неудачей из-за этой ошибки, если протокол, указанный в элементе <Protocol>
, недействителен. Допустимые протоколы: TCP и UDP. Для отправки сообщений системного журнала через TLS/SSL поддерживается только TCP.
Например, развертывание прокси-сервера API завершается с этой ошибкой, если вы указываете HTTP в элементе <Protocol>
политики регистрации сообщений, как показано ниже:
<Protocol>HTTP</Protocol>
Диагностика
Определите политику MessageLogging, в которой произошла ошибка. Эту информацию можно найти в сообщении об ошибке. Например, в следующей ошибке имя политики —
LogToSyslog:
Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
В неудачной конфигурации политики MessageLogging проверьте, действителен ли протокол, указанный в элементе
<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>HTTP</Protocol> <FormatMessage>true</FormatMessage> </Syslog> <logLevel>ALERT</logLevel> </MessageLogging>
Поскольку протокол, определенный в элементе
<Protocol>
, недействителен, развертывание прокси-сервера API завершается с ошибкой:Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
Разрешение
Убедитесь, что протокол, определенный в элементе <Protocol>
политики MessageLogging, действителен. Элемент <Protocol>
поддерживает следующие значения:
- TCP
- UDP
Чтобы исправить приведенный выше пример, определите допустимый протокол в элементе <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>
ИнвалидПорт
Сообщение об ошибке
Развертывание прокси-сервера API через пользовательский интерфейс Edge или API управления Edge завершается с ошибкой с этим сообщением об ошибке:
Error Saving Revision revision_number Invalid Port: 0 for Syslog handler in policy policy_name.
Пример сообщения об ошибке
Error Saving Revision 4
Invalid Port: 0 for Syslog handler in policy LogToSyslog.
Пример скриншота
Причина
Развертывание политики регистрации сообщений может завершиться с ошибкой из-за этой ошибки, если номер порта не указан в элементе <Port>
или если он недействителен. Номер порта должен быть целым числом, большим нуля.
Например, если элемент <Port>
объявлен, как показано ниже, развертывание прокси-сервера API не удастся:
<Port>0</Port>
Диагностика
Определите политику MessageLogging, в которой произошла ошибка. Эту информацию можно найти в сообщении об ошибке. Например, в следующей ошибке имя политики —
LogToSyslog:
Invalid Port: 0 for Syslog handler in policy LogToSyslog.
В неудавшейся политике MessageLogging проверьте, указан ли действительный номер порта в элементе
<Port>
. Если номер порта не определен или недействителен, это причина ошибки.Например, следующая политика указывает недопустимый номер порта:
<?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>
Поскольку номер порта, определенный в элементе
<Port>
, недействителен, развертывание прокси-сервера API завершается с ошибкой:Invalid Port: 0 for Syslog handler in policy LogToSyslog.
Разрешение
Убедитесь, что номер порта определен в элементе <Port>
политики MessageLogging. Оно должно быть целым числом больше нуля.
Чтобы исправить приведенный выше пример, определите действительный номер порта в элементе <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>