Esta seção fornece orientações para solucionar problemas comuns encontrados ao usar um conector de gravador do Cloud Storage.
A desserialização está configurada incorretamente
Se os conversores do conector não corresponderem aos dados no Kafka, o conector vai falhar com uma mensagem de erro semelhante a esta:
org.apache.kafka.connect.errors.DataException: Converting byte[] to Kafka
Connect data failed due to serialization error:
Para resolver esse problema, verifique se os conversores de chave e valor do conector correspondem aos dados que ele está lendo do Kafka.
Por exemplo, se você definir o tipo de saída de formato como csv e o conversor de valores como JsonConverter, poderá ver o seguinte erro:
org.apache.kafka.connect.errors.DataException: Converting byte[] to Kafka
Connect data failed due to serialization error:
at org.apache.kafka.connect.json.JsonConverter.toConnectData(JsonConverter.java:333)
at org.apache.kafka.connect.storage.Converter.toConnectData(Converter.java:91)
Esse erro ocorre porque a saída CSV exige ByteArrayConverter para o conversor de valores, não JsonConverter. Para mais informações, consulte
Como um conector de coletor do Cloud Storage funciona.
O stack trace nos registros pode ajudar a localizar a causa raiz. Por exemplo, a entrada de registro a seguir indica um problema ao converter um caractere UTF-32:
Caused by: org.apache.kafka.common.errors.SerializationException:
java.io.CharConversionException: Invalid UTF-32 character 0x31d086a
(above 0x0010ffff) at char #1, byte #7
Permissões do bucket do Cloud Storage ausentes
Se a conta de serviço do Managed Kafka não tiver permissão para gravar no bucket do Cloud Storage, o conector vai falhar com uma mensagem de erro semelhante a esta:
org.apache.kafka.connect.errors.ConnectException:
com.google.cloud.storage.StorageException: 403 Forbidden
Para resolver esse problema, conceda o papel Criador de objetos do Storage (roles/storage.objectCreator) à conta de serviço do Kafka gerenciado. Para mais informações, consulte Conceder permissões para gravar no bucket do Cloud Storage.
A seguir
- Resolver problemas de clusters e conectores do Connect
- Criar um conector de coletor do Cloud Storage