

# Registrar em log chamadas de API REST para o Amazon Data Firehose no API Gateway
<a name="apigateway-logging-to-kinesis"></a>

Para ajudar a depurar problemas relacionados ao acesso do cliente à sua API, é possível registrar em log chamadas de API no Amazon Data Firehose. Para saber mais sobre o Amazon Firehose, consulte [What Is Amazon Data Firehose?](https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html).

Para o registro em log de acesso, você só pode habilitar o CloudWatch ou o Firehose, não os dois. No entanto, você pode habilitar o CloudWatch para registro em log de execução e o Firehose para registro em log de acesso.

**Topics**
+ [

## Formatos de log do Firehose para o API Gateway
](#apigateway-kinesis-log-formats)
+ [

## Permissões para registro em log do Firehose
](#set-up-kinesis-access-logging-permissions)
+ [

## Configurar o registro em log de acesso do Firehose usando o console do API Gateway
](#set-up-kinesis-access-logging-using-console)

## Formatos de log do Firehose para o API Gateway
<a name="apigateway-kinesis-log-formats"></a>

O registro em log do Firehose usa o mesmo formato que o [registro em log do CloudWatch](https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-logging.html).

## Permissões para registro em log do Firehose
<a name="set-up-kinesis-access-logging-permissions"></a>

Quando o registro em log de acesso do Firehose estiver habilitado em um estágio, o API Gateway criará um perfil vinculado ao serviço na sua conta, caso o perfil ainda não exista. A função será chamada de `AWSServiceRoleForAPIGateway` e terá a política gerenciada `APIGatewayServiceRolePolicy` anexada à ela. Para obter mais informações sobre funções vinculadas a um serviço, consulte [Como usar funções vinculadas a serviços](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html).

**nota**  
O nome do fluxo do Firehose deve ser `amazon-apigateway-{your-stream-name}`.

## Configurar o registro em log de acesso do Firehose usando o console do API Gateway
<a name="set-up-kinesis-access-logging-using-console"></a>

Para configurar o registro de API em logs, você deve ter implantado a API em um estágio. Também é necessário ter criado um fluxo do Firehose. 

1. Inicie uma sessão no console do API Gateway em [https://console.aws.amazon.com/apigateway](https://console.aws.amazon.com/apigateway).

1.  Execute um destes procedimentos:

   1.  Selecione uma API e escolha um estágio.

   1.  Crie uma API e implante-a em um estágio.

1. No painel de navegação principal, selecione **Estágios**.

1.  Na seção **Logs e rastreamento**, selecione **Editar**.

1. Para habilitar o registro em log de acesso a um fluxo do Firehose:

   1. Ative o **Registro em log de acesso personalizado**.

   1. Em **ARN de destino de logs de acesso**, insira o ARN de um fluxo do Firehose. O formato do ARN é `arn:aws:firehose:{region}:{account-id}:deliverystream/amazon-apigateway-{your-stream-name}`.
**nota**  
O nome do fluxo do Firehose deve ser `amazon-apigateway-{your-stream-name}`.

   1. Em **Formato do log**, insira um formato de log. **É possível escolher **CLF**, **JSON**, **XML** ou CSV**. Para saber mais sobre exemplos de formatos de log, consulte [Formatos de log do CloudWatch para o API Gateway](set-up-logging.md#apigateway-cloudwatch-log-formats).

1. Escolha **Salvar alterações**.

Agora o API Gateway está pronto para registrar em log no Firehose solicitações feitas à API. Não é necessário reimplantar a API ao atualizar as configurações do estágio, os logs ou as variáveis do estágio. 