Apigee Edge belgelerini görüntülüyorsunuz.
.
Git:
Apigee X belgeleri. bilgi
InvalidProtocol
Hata mesajı
Edge kullanıcı arayüzü veya Edge management API üzerinden API proxy'si dağıtıldığında şu hata mesajı gösterilir:
Error Saving Revision revision_number Invalid Protocol: invalid_protocol for Syslog handler in policy policy_name.
Örnek hata mesajı
Error Saving Revision 4
Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
Örnek ekran görüntüsü
Neden
<Protocol>
öğesi içinde belirtilen protokol geçerli değilse MessageLogging politikasının dağıtımı bu hatayla başarısız olabilir. Geçerli protokoller TCP ve UDP'dir. TLS/SSL üzerinden sistem günlüğü mesajları göndermek için yalnızca TCP desteklenir.
Örneğin, MessageLogging Politikası'nın <Protocol>
öğesinde aşağıda gösterildiği gibi HTTP'yi belirtirseniz API Proxy'sinin dağıtımı bu hatayla başarısız olur:
<Protocol>HTTP</Protocol>
Teşhis
Hatanın oluştuğu MessageLogging politikasını belirleyin. Bu bilgileri hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada politika adı
LogToSyslog:
şeklindedir.Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
Başarısız olan MessageLogging politikası yapılandırmasında,
<Protocol>
öğesinde belirtilen protokolün geçerli olup olmadığını kontrol edin. Geçersiz bir protokol belirtiliyorsa hatanın nedeni budur.Örneğin, aşağıdaki politika geçersiz bir protokol belirtiyor.
<?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>
öğesinde tanımlanan protokol geçersiz olduğundan API Proxy'sinin dağıtımı şu hatayla başarısız oluyor:Invalid Protocol: HTTP for Syslog handler in policy LogToSyslog.
Çözünürlük
MessageLogging politikasının <Protocol>
öğesinde tanımlanan protokolün geçerli olduğundan emin olun. <Protocol>
öğesi aşağıdaki değerleri destekler:
- TCP
- UDP
Yukarıda gösterilen örneği düzeltmek için <Protocol>
öğesinde geçerli bir protokol tanımlayın:
<?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
Hata mesajı
Edge kullanıcı arayüzü veya Edge management API üzerinden API proxy'si dağıtıldığında şu hata mesajı gösterilir:
Error Saving Revision revision_number Invalid Port: 0 for Syslog handler in policy policy_name.
Örnek hata mesajı
Error Saving Revision 4
Invalid Port: 0 for Syslog handler in policy LogToSyslog.
Örnek ekran görüntüsü
Neden
Bağlantı noktası numarası <Port>
öğesinde belirtilmemişse veya geçerli değilse MessageLogging politikasının dağıtımı bu hatayla başarısız olabilir. Bağlantı noktası numarası sıfırdan büyük bir tam sayı olmalıdır.
Örneğin, <Port>
öğesi aşağıda gösterildiği gibi tanımlanırsa API proxy'sinin dağıtımı başarısız olur:
<Port>0</Port>
Teşhis
Hatanın oluştuğu MessageLogging politikasını belirleyin. Bu bilgileri hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada politika adı
LogToSyslog:
şeklindedir.Invalid Port: 0 for Syslog handler in policy LogToSyslog.
Başarısız olan MessageLogging politikasında,
<Port>
öğesinde geçerli bir bağlantı noktası numarası belirtilip belirtilmediğini kontrol edin. Bağlantı noktası numarası tanımlanmamışsa veya geçersizse hatanın nedeni budur.Örneğin, aşağıdaki politika geçersiz bir bağlantı noktası numarası belirtir:
<?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>
öğesinde tanımlanan bağlantı noktası numarası geçersiz olduğundan API Proxy'sinin dağıtımı şu hatayı vererek başarısız olur:Invalid Port: 0 for Syslog handler in policy LogToSyslog.
Çözünürlük
MessageLogging politikasının <Port>
öğesinde bir bağlantı noktası numarası tanımlandığından emin olun. Sıfırdan büyük bir tam sayı olmalıdır.
Yukarıda gösterilen örneği düzeltmek için <Protocol>
öğesinde geçerli bir bağlantı noktası numarası tanımlayın.
<?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>