Todos os produtos
Search
Central de documentação

ApsaraMQ for Kafka:Criar conector sink do FC

Última atualização: Jul 02, 2026

Crie um conector sink do Function Compute para exportar dados de um tópico de origem em sua instância do ApsaraMQ for Kafka para uma função do Function Compute.

Pré-requisitos

Antes de criar um conector sink do Function Compute, certifique-se de atender aos seguintes pré-requisitos:

  • ApsaraMQ for Kafka

    • Ative o recurso de conector na instância do ApsaraMQ for Kafka. Para mais informações, consulte Ativar um conector.

    • Crie um tópico de origem na instância do ApsaraMQ for Kafka. Para mais informações, consulte Etapa 1: Criar um tópico.

      Este exemplo utiliza um tópico chamado fc-test-input.

  • Function Compute

    • Crie uma função no Function Compute. Para mais informações, consulte Criar uma função.

      Importante

      A função deve ser uma função de evento.

      Este guia usa como exemplo uma função de evento chamada hello_world. A função está no serviço guide-hello_world e executa em um ambiente de execução Python. O código de exemplo da função é o seguinte:

      # -*- coding: utf-8 -*-
      import logging
      # To enable the initializer feature
      # Implement the initializer function as follows:
      # def initializer(context):
      #   logger = logging.getLogger()
      #   logger.info('initializing')
      def handler(event, context):
        logger = logging.getLogger()
        logger.info('hello world:' + bytes.decode(event))
        return 'hello world:' + bytes.decode(event)
  • Opcional: EventBridge

    Nota

    Esta etapa é necessária apenas se a instância do ApsaraMQ for Kafka estiver na região China (Hangzhou) ou China (Chengdu).

Observações

  • A exportação de dados de um tópico de origem em uma instância do ApsaraMQ for Kafka para uma função no Function Compute só é possível quando ambos estão na mesma região. Para mais informações sobre as limitações dos conectores, consulte Limites.

  • Se a instância do ApsaraMQ for Kafka estiver na região China (Hangzhou) ou China (Chengdu), o conector será implantado no EventBridge.

    • Atualmente, o EventBridge é gratuito. Para mais informações, consulte Faturamento.

    • Ao criar um conector, o EventBridge cria automaticamente as seguintes funções vinculadas ao serviço: AliyunServiceRoleForEventBridgeSourceKafka e AliyunServiceRoleForEventBridgeConnectVPC.

      • Caso uma função vinculada ao serviço ainda não exista, o EventBridge a criará automaticamente para permitir que o EventBridge acesse o ApsaraMQ for Kafka e a VPC.

      • Se essas funções vinculadas ao serviço já existirem, o EventBridge não as criará novamente.

      Para mais informações sobre funções vinculadas ao serviço, consulte funções vinculadas ao serviço.

    • No momento, não é possível visualizar os logs de execução das tarefas implantadas no EventBridge. Após a conclusão de uma tarefa do conector, verifique o progresso consultando o status de consumo do grupo de consumidores do tópico de origem. Para obter detalhes, consulte Visualizar status do consumidor.

Procedimento

Utilize um conector sink do Function Compute para exportar dados de um tópico de origem em uma instância do ApsaraMQ for Kafka para uma função no Function Compute:

  1. Opcional: Ative o acesso entre regiões para o conector sink do Function Compute

    Importante

    Se não precisar de acesso entre regiões, pule esta etapa.

    Ativar acesso à internet para o conector sink do Function Compute

  2. Opcional: Ative o acesso entre contas para o conector sink do Function Compute

    Importante

    Se não precisar de acesso entre contas, pule esta etapa.

  3. Opcional: Crie os tópicos e o grupo de consumidores necessários para o conector sink do Function Compute

    Importante
    • Caso não seja necessário personalizar os nomes dos tópicos e do grupo de consumidores, pule esta etapa.

    • Alguns tópicos exigidos por um conector sink do Function Compute devem usar o mecanismo de armazenamento local. Se a versão principal da instância do ApsaraMQ for Kafka for 0.10.2, não será possível criar manualmente tópicos com armazenamento local. Esses tópicos devem ser criados automaticamente.

    1. Criar tópicos necessários para o conector sink do Function Compute

    2. Criar o grupo de consumidores necessário para o conector sink do Function Compute

  4. Criar e implantar um conector sink do Function Compute

  5. Verifique os resultados

    1. Enviar uma mensagem de teste

    2. Visualizar logs da função

Ativar acesso à internet para um conector sink do FC

Se um conector sink do Function Compute precisar acessar serviços da Alibaba Cloud em outras regiões, ative o acesso à internet para ele. Para obter detalhes, consulte Ativar acesso à internet para um conector.

Criar uma política personalizada

Na conta de destino, crie uma política personalizada para conceder acesso ao Function Compute.

  1. Faça login no console do RAM.

  2. No painel de navegação à esquerda, escolha Permissions > Policies.

  3. Na página Policies, clique em Create Policy.

  4. Na página Create Policy, configure a política.

    1. Na aba JSON, insira o script da política e clique em Next.

      O script de política a seguir concede permissões para acessar o Function Compute:

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "fc:InvokeFunction",
                      "fc:GetFunction"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              }
          ]
      }
    2. Em Basic Information, insira KafkaConnectorFcAccess no campo Name.

    3. Clique em OK.

Criar uma função do RAM

Crie uma função do RAM na conta de destino. Não é possível selecionar o ApsaraMQ for Kafka como serviço confiável durante a criação de uma função do RAM. Portanto, selecione outro serviço suportado e modifique manualmente a política de confiança após a criação da função.

  1. No painel de navegação à esquerda, escolha Identity Management > Roles.

  2. Na página Roles, clique em Create Role.

  3. No painel Create Role, configure a função.

    1. Selecione Alibaba Cloud Service como tipo de entidade confiável e clique em Next.

    2. Na seção Role Type, selecione Normal Service Role. Em Role Name, insira AliyunKafkaConnectorRole. Na lista suspensa Select Trusted Service, selecione Function Compute e clique em Complete.

  4. Na página Roles, localize e clique em AliyunKafkaConnectorRole.

  5. Na página de detalhes da AliyunKafkaConnectorRole, clique na aba Trust Policy Management e, em seguida, clique em Edit Trust Policy.

  6. No painel Edit Trust Policy, substitua fc no script por alikafka e clique em OK.

    Após salvar as alterações, na aba Trust Policy Management da AliyunKafkaConnectorRole, confirme se o parâmetro Service na política de confiança foi atualizado para alikafka.aliyuncs.com e se o parâmetro Action está definido como sts:AssumeRole.

  7. Adicionar permissões

    Na conta de destino, conceda permissões à função do RAM para acessar o Function Compute.

    1. No painel de navegação à esquerda, acesse Identity Management > Roles.

    2. Na página Roles, localize AliyunKafkaConnectorRole e clique em Add Permissions na coluna Actions.

    3. No painel Add Permissions, adicione a política KafkaConnectorFcAccess.

      1. Na seção Select Policy, selecione Custom Policy.

      2. Na lista Authorization Policy Name, localize e clique em KafkaConnectorFcAccess.

      3. Clique em OK.

      4. Clique em Complete.

    Criar tópicos para o conector sink do Function Compute

    No console do ApsaraMQ for Kafka, crie manualmente os cinco tópicos exigidos por um conector sink do Function Compute: um tópico de offset de tarefa, um tópico de configuração de tarefa, um tópico de status de tarefa, um tópico de fila de mensagens mortas e um tópico de dados de erro. Esses tópicos possuem requisitos diferentes quanto à contagem de partições e ao mecanismo de armazenamento. Para mais informações, consulte Parâmetros na etapa Configurar Serviço de Origem.

    1. Faça login no console do ApsaraMQ for Kafka.

    2. Na página Overview, selecione uma região na seção Resource Distribution.

      Importante

      Crie os tópicos na mesma região da sua aplicação, ou seja, onde a instância ECS está implantada. Tópicos não podem ser utilizados entre regiões diferentes. Por exemplo, se um tópico for criado na região China (Beijing), tanto o produtor quanto o consumidor de mensagens devem rodar em uma instância ECS também localizada na região China (Beijing).

    3. Na página Instances, clique no nome da instância desejada.

    4. No painel de navegação à esquerda, clique em Topics.

    5. Na página Topics, clique em Create Topic.

    6. No painel Create Topic, configure as definições do tópico e clique em OK.

      Parâmetro

      Descrição

      Exemplo

      Name

      Nome do tópico.

      Nota

      O Kafka considera idênticos os nomes de tópicos que contenham sublinhados (xxx_xxx) e pontos (xxx.xxx). Ao tentar criar um tópico duplicado, o sistema retornará um erro.

      demo

      Description

      Breve descrição do tópico.

      teste demo

      Partitions

      Quantidade de partições do tópico.

      12

      Storage Engine

      Nota

      Atualmente, a seleção do mecanismo de armazenamento está disponível apenas para instâncias da Professional Edition não serverless. Para outros tipos de instância, essa opção não aparece e o Cloud Storage é utilizado por padrão.

      Mecanismo de armazenamento das mensagens no tópico.

      ApsaraMQ for Kafka suporta os dois mecanismos de armazenamento a seguir:

      • Cloud Storage: Este mecanismo utiliza discos da Alibaba Cloud para armazenamento subjacente, oferecendo alto desempenho, baixa latência e alta confiabilidade através de um mecanismo distribuído de três réplicas. Se a Instance Edition da instância for Standard (High Write), apenas o Cloud Storage poderá ser usado.

      • Local Storage: Este mecanismo utiliza o algoritmo nativo de replicação ISR (in-sync replica) do Kafka e um mecanismo distribuído de três réplicas.

      Cloud Storage

      Message Type

      Tipo de mensagens no tópico.

      • Normal Message: Por padrão, o Kafka distribui mensagens com a mesma chave para a mesma partição, armazenando-as na ordem de envio. Caso ocorra falha em um nó do cluster, as mensagens podem ficar fora de ordem. Se o Storage Engine estiver definido como Cloud Storage, o sistema seleciona Normal Message por padrão.

      • Partitionally Ordered Message: Por padrão, o Kafka distribui mensagens com a mesma chave para a mesma partição, armazenando-as na ordem de envio. Mesmo diante de falhas em nós do cluster, a ordem das mensagens dentro da partição é garantida. No entanto, o envio para algumas partições pode falhar até que elas se recuperem. Se o Storage Engine estiver definido como Local Storage, o sistema seleciona Partitionally Ordered Message por padrão.

      Normal Message

      Log Cleanup Policy

      Política de limpeza de logs do tópico.

      Ao selecionar Local Storage como Storage Engine (atualmente, apenas instâncias da Professional Edition suportam armazenamento local; essa opção não está disponível para instâncias da Standard Edition), configure a Log Cleanup Policy.

      ApsaraMQ for Kafka suporta as duas políticas de limpeza de logs a seguir.

      • Delete: Política padrão de limpeza de mensagens. Se houver espaço suficiente em disco, as mensagens são retidas pelo período especificado. Caso o espaço seja insuficiente (geralmente quando o uso do disco ultrapassa 85%), o sistema exclui as mensagens mais antigas antecipadamente para garantir a disponibilidade do serviço.

      • Compact: Utiliza a política de limpeza Kafka Log Compaction. A compactação de logs garante que o sistema retenha o valor mais recente para cada chave de mensagem. É usada principalmente em cenários como restauração de estado após falha do sistema ou recarregamento de cache após reinicialização. Por exemplo, o Kafka Connect e o Confluent Schema Registry utilizam tópicos compactados para armazenar estado do sistema e dados de configuração.

        Importante

        Tópicos compactados geralmente são usados apenas para componentes específicos do ecossistema, como Kafka Connect ou Confluent Schema Registry. Não defina essa propriedade para tópicos destinados à produção e consumo geral de mensagens. Para mais informações, consulte a Biblioteca de Demos do ApsaraMQ for Kafka.

      Compact

      Tag

      Tags associadas ao tópico.

      demo

      Após a criação, o tópico aparecerá na lista de tópicos na página Topics.

    Criar grupo de consumidores para o conector sink do FC

    Crie manualmente o grupo de consumidores para uma tarefa de sincronização de dados do conector sink do Function Compute no console do ApsaraMQ for Kafka. O nome do grupo de consumidores deve seguir o formato connect-nome-da-tarefa. Para mais informações, consulte Parâmetros na etapa Configurar Serviço de Origem.

    1. Faça login no console do ApsaraMQ for Kafka.

    2. Na página Overview, selecione uma região na seção Resource Distribution.

    3. Na página Instances, clique no nome da instância desejada.

    4. No painel de navegação à esquerda, clique em Groups.

    5. Na página Groups, clique em Create Group.

    6. No painel Create Group, insira um nome para o grupo de consumidores na caixa de texto Group ID, adicione uma breve descrição na caixa de texto Description, adicione tags ao grupo de consumidores e clique em OK.

      Após a criação, o grupo de consumidores aparecerá na lista da página Groups.

    Criar e implantar um conector sink do FC

    Crie e implante um conector sink do FC para sincronizar dados do ApsaraMQ for Kafka para o Function Compute.

    1. Faça login no console do ApsaraMQ for Kafka.

    2. Na página Overview, selecione uma região na seção Resource Distribution.

    3. No painel de navegação à esquerda, clique em Connectors.

    4. Na página Connectors, selecione a instância à qual o conector pertence na lista suspensa Select Instance e clique em Create Connector.

    5. No assistente Create Connector, conclua as etapas a seguir.

      1. Na aba Configure Basic Information, configure os parâmetros abaixo conforme necessário e clique em Next.

        Parâmetro

        Descrição

        Exemplo

        Name

        Nome do conector. O nome deve atender aos seguintes requisitos:

        • O nome pode ter até 48 caracteres e conter apenas dígitos, letras minúsculas e hifens (-). Não pode começar com hífen (-).

        • O nome deve ser único dentro de uma instância do ApsaraMQ for Kafka.

        A tarefa de sincronização de dados do conector utiliza um grupo de consumidores chamado connect-nome-da-tarefa. Se você não criar esse grupo de consumidores manualmente, o sistema o criará automaticamente.

        kafka-fc-sink

        Instance

        Por padrão, o nome e o ID da instância são exibidos.

        demo alikafka_post-cn-st21p8vj****

      2. Na aba Configure Source Service, defina Data Source como Message Queue for Apache Kafka, configure os parâmetros a seguir e clique em Next.

        Nota

        Se você já tiver criado um tópico e um grupo de consumidores, escolha a criação manual de recursos e insira as informações dos seus recursos existentes. Caso contrário, opte pela criação automática de recursos.

        Tabela 1. Parâmetros para configurar o serviço de origem

        Parâmetro

        Descrição

        Exemplo

        Data Source Topic

        Tópico de origem de onde os dados serão sincronizados.

        fc-test-input

        Consumer Thread Concurrency

        Número de threads de consumo concorrentes para o tópico de origem. Valor padrão: 6. Valores válidos:

        • 1

        • 2

        • 3

        • 6

        • 12

        6

        Consumer Offset

        Offset a partir do qual o consumo será iniciado. Valores válidos:

        • Earliest Offset: Inicia o consumo a partir do offset mais antigo.

        • Latest Offset: Inicia o consumo a partir do offset mais recente.

        Earliest Offset

        VPC ID

        ID da VPC onde a tarefa de sincronização de dados será executada. Este parâmetro é exibido ao clicar em Configure Runtime Environment. Por padrão, corresponde à VPC da sua instância do ApsaraMQ for Kafka. Não é necessário especificar um valor.

        vpc-bp1xpdnd3l***

        vSwitch ID

        ID do vSwitch onde a tarefa de sincronização de dados será executada. Este parâmetro é exibido ao clicar em Configure Runtime Environment. O vSwitch deve estar na mesma VPC da instância do ApsaraMQ for Kafka. Por padrão, corresponde ao vSwitch especificado durante a implantação da instância do ApsaraMQ for Kafka.

        vsw-bp1d2jgg81***

        Failure Handling Policy

        Controla o comportamento quando há falha na entrega de uma mensagem de uma partição. Este parâmetro é exibido ao clicar em Configure Runtime Environment. Valores válidos:

        • Continue Subscription: Continua consumindo da partição e registra o erro em log.

        • Stop Subscription: Interrompe o consumo da partição e registra o erro em log.

        Nota

        Continue Subscription

        Resource Creation Method

        Método utilizado para criar o tópico e o grupo de consumidores exigidos pelo conector. Este parâmetro é exibido ao clicar em Configure Runtime Environment.

        • Auto

        • Manual

        Auto

        Connector Consumer Group

        Grupo de consumidores utilizado pela tarefa de sincronização de dados do conector. Este parâmetro é exibido ao clicar em Configure Runtime Environment. O nome do grupo de consumidores deve seguir o formato connect-nome-da-tarefa.

        connect-kafka-fc-sink

        Task Offset Topic

        Tópico usado para armazenar offsets de consumo. Este parâmetro é exibido ao clicar em Configure Runtime Environment.

        • O nome do tópico deve começar com connect-offset.

        • Partições: O número de partições do tópico deve ser maior que 1.

        • Mecanismo de armazenamento: O mecanismo de armazenamento do tópico deve ser Local Storage.

        • cleanup.policy: A política de limpeza de logs do tópico deve ser compact.

        connect-offset-kafka-fc-sink

        Task Configuration Topic

        Tópico usado para armazenar configurações de tarefas. Este parâmetro é exibido ao clicar em Configure Runtime Environment.

        • Tópico: Recomenda-se que o nome do tópico comece com connect-config.

        • Partições: O número de partições do tópico deve ser 1.

        • Mecanismo de armazenamento: O mecanismo de armazenamento do tópico deve ser Local Storage.

        • cleanup.policy: A política de limpeza de logs do tópico deve ser compact.

        connect-config-kafka-fc-sink

        Task Status Topic

        Tópico usado para armazenar o status das tarefas. Este parâmetro é exibido ao clicar em Configure Runtime Environment.

        • Tópico: Recomenda-se que o nome do tópico comece com connect-status.

        • Partições: Recomenda-se definir o número de partições como 6.

        • Mecanismo de armazenamento: O mecanismo de armazenamento do tópico deve ser Local Storage.

        • cleanup.policy: A política de limpeza de logs do tópico deve ser compact.

        connect-status-kafka-fc-sink

        Dead-letter Queue Topic

        Tópico usado para armazenar dados de erro do framework Connect. Este parâmetro é exibido ao clicar em Configure Runtime Environment. Para economizar recursos de tópicos, use o mesmo tópico tanto para este parâmetro quanto para o parâmetro Error data topic.

        • Tópico: Recomenda-se que o nome do tópico comece com connect-error.

        • Partições: Recomenda-se definir o número de partições como 6.

        • Mecanismo de armazenamento: O mecanismo de armazenamento do tópico pode ser Local Storage ou Cloud Storage.

        connect-error-kafka-fc-sink

        Error Data Topic

        Tópico usado para armazenar dados de erro do sink. Este parâmetro é exibido ao clicar em Configure Runtime Environment. Para economizar recursos de tópicos, use o mesmo tópico tanto para este parâmetro quanto para o parâmetro dead-letter queue topic.

        • Tópico: Recomenda-se que o nome do tópico comece com connect-error.

        • Partições: Recomenda-se definir o número de partições como 6.

        • Mecanismo de armazenamento: O mecanismo de armazenamento do tópico pode ser Local Storage ou Cloud Storage.

        connect-error-kafka-fc-sink

      3. Na aba Configure Destination Service, selecione Function Compute para Target Service, configure os parâmetros a seguir e clique em Create.

        Nota

        Se a instância do conector estiver na região China (Hangzhou) ou China (Chengdu), uma caixa de diálogo Service Authorization aparecerá para a criação das funções vinculadas ao serviço AliyunServiceRoleForEventBridgeSourceKafka e AliyunServiceRoleForEventBridgeConnectVPC ao selecionar Function Compute como Target Service. Na caixa de diálogo Service Authorization, clique em Confirm, configure os parâmetros a seguir e clique em Create. Se as funções vinculadas ao serviço já tiverem sido criadas, a caixa de diálogo Service Authorization não será exibida.

        Parâmetro

        Descrição

        Exemplo

        Cross-account/Cross-region

        Define se o conector sink do FC sincroniza dados para um serviço Function Compute em uma conta ou região diferente. Valor padrão: No. Valores válidos:

        • No: Modo de mesma conta e mesma região.

        • Yes: Entre contas, entre regiões ou ambos.

        No

        Region

        Região do serviço Function Compute. Por padrão, corresponde à região do conector sink do FC. Para sincronizar dados entre regiões, ative o acesso público para o conector e então selecione a região de destino. Para mais informações, consulte Ativar acesso público para um conector sink do FC.

        Importante

        Quando Cross-account/Cross-region estiver definido como Yes, o campo Region será exibido.

        cn-hangzhou

        Service Endpoint

        Endpoint do serviço Function Compute. Obtenha o endpoint na seção Common Info da página Overview do console do Function Compute.

        • Endpoint interno: Recomendado para baixa latência. Use este tipo de endpoint se a instância do ApsaraMQ for Kafka e o serviço Function Compute estiverem na mesma região.

        • Endpoint público: Não recomendado devido à maior latência. Use este tipo de endpoint se a instância do ApsaraMQ for Kafka e o serviço Function Compute estiverem em regiões diferentes. Para usar um endpoint público, ative o acesso público para o conector. Para mais informações, consulte Ativar acesso público para um conector sink do FC.

        Importante

        Quando Cross-account/Cross-region estiver definido como Yes, o campo Service Endpoint será exibido.

        http://188***.cn-hangzhou.fc.aliyuncs.com

        Alibaba Cloud Account

        ID da conta Alibaba Cloud à qual o serviço Function Compute pertence. Obtenha o ID na seção Common Info da página Overview do console do Function Compute.

        Importante

        Se Cross-account/Cross-region estiver definido como Yes, o campo Alibaba Cloud Account será exibido.

        188***

        RAM Role Name

        Nome da função do RAM que o ApsaraMQ for Kafka assume para acessar o serviço Function Compute.

        Importante

        Quando Cross-account/Cross-region estiver definido como Yes, o campo RAM Role Name será exibido.

        AliyunKafkaConnectorRole

        Service Name

        Nome do serviço no Function Compute.

        guide-hello_world

        Function Name

        Nome da função no serviço Function Compute.

        hello_world

        Version or Alias

        Versão ou alias do serviço Function Compute.

        Importante
        • Se Cross-account/Cross-region estiver definido como No, selecione Specified Version ou Specified Alias.

        • Se Cross-account/Cross-region estiver definido como Yes, insira manualmente uma versão ou alias do serviço.

        LATEST

        Service Version

        Versão do serviço Function Compute.

        Importante

        Se Cross-account/Cross-region estiver definido como No e Version or Alias estiver definido como Specified Version, o parâmetro Service Version será exibido.

        LATEST

        Service Alias

        Alias do serviço Function Compute.

        Importante

        Quando Cross-account/Cross-region estiver definido como No e Version or Alias estiver definido como Specified Alias, o parâmetro Service Alias será exibido.

        jy

        Transmission Mode

        Modo de envio de mensagens. Valores válidos:

        • Asynchronous: Recomendado.

        • Synchronous: Não recomendado. Neste modo, o processamento lento de mensagens pelo Function Compute também desacelera o ApsaraMQ for Kafka. Se um lote de mensagens levar mais de 5 minutos para ser processado, um rebalanceamento de cliente será acionado no ApsaraMQ for Kafka.

        Asynchronous

        Data Size

        Número máximo de mensagens a serem incluídas em um único lote. O conector agrega mensagens em lotes que respeitam tanto este número quanto os limites de tamanho de requisição subjacentes (6 MB para síncrono, 128 KB para assíncrono). Por exemplo, se o modo de entrega for assíncrono, o tamanho do lote for 20 e você quiser enviar 18 mensagens onde 17 mensagens têm um tamanho total de 127 KB e uma mensagem tem tamanho de 200 KB, o conector agregará e enviará as 17 mensagens em um lote. A mensagem restante, cujo tamanho excede 128 KB, será enviada em um lote separado.

        Nota

        Se você definir a key como null ao enviar uma mensagem, a requisição não incluirá a key. Se você definir o value como null, a requisição não incluirá o value.

        • Se o tamanho total das mensagens em um lote não exceder o limite de tamanho da requisição, a requisição conterá o conteúdo da mensagem. O código a seguir fornece um exemplo de requisição:

          [
              {
                  "key":"this is the message's key2",
                  "offset":8,
                  "overflowFlag":false,
                  "partition":4,
                  "timestamp":1603785325438,
                  "topic":"Test",
                  "value":"this is the message's value2",
                  "valueSize":28
              },
              {
                  "key":"this is the message's key9",
                  "offset":9,
                  "overflowFlag":false,
                  "partition":4,
                  "timestamp":1603785325440,
                  "topic":"Test",
                  "value":"this is the message's value9",
                  "valueSize":28
              },
              {
                  "key":"this is the message's key12",
                  "offset":10,
                  "overflowFlag":false,
                  "partition":4,
                  "timestamp":1603785325442,
                  "topic":"Test",
                  "value":"this is the message's value12",
                  "valueSize":29
              },
              {
                  "key":"this is the message's key38",
                  "offset":11,
                  "overflowFlag":false,
                  "partition":4,
                  "timestamp":1603785325464,
                  "topic":"Test",
                  "value":"this is the message's value38",
                  "valueSize":29
              }
          ]
        • Se o tamanho de uma única mensagem exceder o limite de tamanho da requisição, a requisição não incluirá o conteúdo da mensagem. O código a seguir fornece um exemplo de requisição:

          [
              {
                  "key":"123",
                  "offset":4,
                  "overflowFlag":true,
                  "partition":0,
                  "timestamp":1603779578478,
                  "topic":"Test",
                  "value":"1",
                  "valueSize":272687
              }
          ]
          Nota

          Para obter o conteúdo da mensagem, busque a mensagem com base em seu offset.

        50

        Retries

        Número de tentativas após falha no envio de uma mensagem. O valor padrão é 2. O intervalo de valores vai de 1 a 3. Alguns erros que causam falha no envio de mensagens não suportam novas tentativas. O mapeamento entre Códigos de erro e o suporte a tentativas é o seguinte:

        • 4XX: Novas tentativas não são suportadas para nenhum erro 4xx, exceto para 429.

        • 5XX: Novas tentativas são suportadas.

        Nota
        • O conector chama a operação InvokeFunction para enviar mensagens ao Function Compute.

        • Se uma mensagem falhar ao ser enviada após o número máximo de tentativas, ela será enviada para o tópico de fila de mensagens mortas. Mensagens em um tópico de fila de mensagens mortas não acionam novamente as tarefas do conector do Function Compute. Configure alertas para o tópico de fila de mensagens mortas para monitorar seu status em tempo real e tratar exceções de maneira oportuna.

        2

        Após a criação do conector, visualize-o na página Connectors.

    6. Na página Connectors, localize o conector recém-criado e clique em Deploy na coluna Actions.

      Para configurar recursos do Function Compute, escolha More > Configure Function na coluna Actions. Você será redirecionado ao console do Function Compute para concluir a configuração.

    Enviar uma mensagem de teste

    Após implantar o conector sink do Function Compute, envie uma mensagem para o tópico de origem em sua instância do ApsaraMQ for Kafka para verificar se os dados estão sendo sincronizados com o Function Compute.

    1. Na página Connectors, localize o conector desejado e clique em Test na coluna Actions.

    2. No painel Send Message, envie uma mensagem de teste.

      • Para Sending Method, selecione Console.

        1. No campo Message Key, insira uma chave de mensagem, como demo.

        2. No campo Message Content, insira o conteúdo da mensagem, como {"key": "test"}.

        3. Para Send to Specified Partition, escolha uma opção:

          • Clique em Yes e insira um ID de partição, como 0, no campo Partition ID. Para encontrar o ID da partição, consulte Visualizar status da partição.

          • Clique em No para enviar a mensagem sem especificar uma partição.

      • Para Sending Method, selecione Docker e execute o comando da seção Run the Docker container to produce a sample message.

      • Para Sending Method, selecione SDK. Em seguida, escolha o SDK e o método de integração para a linguagem ou framework de sua preferência para enviar uma mensagem.

    Logs da função

    Após enviar uma mensagem para o tópico de origem em sua instância do ApsaraMQ for Kafka, verifique os logs da função para confirmar que ela recebeu a mensagem. Para mais informações, consulte Configurar logs.

    Sua mensagem de teste aparecerá nos logs.

    Na página de detalhes da função, clique na aba Log query e selecione Advanced query. Selecione function-log como Logstore. O campo message nos logs contém a mensagem do tópico Kafka, por exemplo, [INFO] hello world:[{"key":"1","offset":1,"partition":0,"timestamp":1605598174308,"topic":"fc-test-input","value":"1"}]. Isso confirma que a função recebeu com sucesso a mensagem do gatilho do Kafka.