> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appsignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Armazenamento de logs de longo prazo

<Tip>
  O armazenamento de logs de longo prazo é um Business Add-On pago. [Entre em
  contato conosco](mailto:support@appsignal.com) para mais informações, veja
  nossa [documentação de Business Add-Ons](/support/business-add-ons).
</Tip>

O armazenamento de logs de longo prazo permite que você exporte e armazene seus logs do AppSignal em armazenamento compatível com S3. Você precisa de um Business Add-On pago para usar este recurso. O AppSignal continuará armazenando seus logs por 30 dias.

Siga os seguintes passos para configurar o armazenamento de logs de longo prazo:

1. [Garantir que você tem todos os requisitos](#requirements)
2. [Configurar armazenamento S3](#configure-s3-storage)
3. [Adicionar armazenamento à fonte de log](#add-storage-to-log-source)

## Requisitos

Para configurar o armazenamento de logs de longo prazo, você precisará de:

* [O Business Add-On de armazenamento de logs de longo prazo](/support/business-add-ons#long-term-log-storage)
* Armazenamento compatível com S3

## Configurar armazenamento S3

Você precisará de armazenamento compatível com S3 para usar o armazenamento de logs de longo prazo. Documentamos os passos para:

* [Armazenamento AWS S3](#configuring-aws-s3-storage)
* [DigitalOcean Spaces](#configuring-digitalocean-spaces)

Se você estiver usando um serviço diferente, leia nossa seção [Configurando outros serviços de armazenamento compatíveis com S3](#configuring-other-s3-compatible-storage-services).

<Tip>
  Se você planeja usar o mesmo bucket e as mesmas credenciais para exportar
  múltiplas fontes de log, certifique-se de incluir um caminho único para cada
  fonte de log. Isso evitará que logs de diferentes fontes tentem sobrescrever
  uns aos outros.
</Tip>

### Configurando o armazenamento AWS S3

Siga os passos abaixo para configurar o armazenamento AWS S3 para o armazenamento de logs de longo prazo:

1. **[Crie um novo bucket S3 e obtenha sua URL.](https://s3.console.aws.amazon.com/s3/bucket/create)** Você precisará fornecer ao AppSignal a URL do bucket. Você pode gerar essa URL com o seguinte padrão: `https://s3.[region-code].amazonaws.com/[bucket-name]`, substituindo `[region]` e `[bucket-name]` respectivamente.
2. **[Crie um novo usuário com acesso programático e permissão de `read/write` para o bucket onde pretende armazenar os logs.](https://console.aws.amazon.com/iam/home#/users\$new?step=details)** Você precisará fornecer ao AppSignal o `access key ID` e a `access secret key` do usuário. Um exemplo de política IAM é:

<CodeGroup>
  ```json JSON theme={null}
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
        "s3:GetObject",
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::<bucket_name>",
        "arn:aws:s3:::<bucket_name>/*"
      ]
    }
  ]
  ```
</CodeGroup>

3. **[Adicione armazenamento à fonte de log.](#add-storage-to-log-source)**

### Configurando DigitalOcean Spaces

Siga os passos abaixo para configurar o DigitalOcean Spaces para o armazenamento de logs de longo prazo:

1. **[Crie um novo space com `Restrict File Listing` e obtenha sua URL.](https://cloud.digitalocean.com/spaces/new)** Você precisará fornecer ao AppSignal a URL do space. Você pode gerar essa URL com o seguinte padrão: `[region].digitaloceanspaces.com/[spacename]`, substituindo `[region]` e `[spacename]` respectivamente.
2. **[Gere um novo token de chave de API DigitalOcean.](https://cloud.digitalocean.com/account/api/tokens)** Você precisará fornecer ao AppSignal a `access key` e a `secret key` da chave.
3. **[Adicione armazenamento à fonte de log.](#add-storage-to-log-source)**

### Configurando outros serviços de armazenamento compatíveis com S3

Siga os passos abaixo para configurar serviços de armazenamento compatíveis com S3 para o armazenamento de logs de longo prazo:

1. **Crie um novo bucket e obtenha sua URL.** Você precisará fornecer ao AppSignal a URL do bucket, consulte a documentação do seu serviço de armazenamento S3 para detalhes sobre onde encontrá-la.
2. **Crie uma nova access key.** Você precisará fornecer ao AppSignal a `access key` e a `secret key` da chave, consulte a documentação do seu serviço de armazenamento S3 para detalhes sobre como gerar isso.
3. **[Adicione armazenamento à fonte de log.](#add-storage-to-log-source)**

## Adicionar armazenamento à fonte de log

Antes de adicionar armazenamento a uma fonte de log, certifique-se de ter seguido os passos de configuração do armazenamento e de ter as seguintes informações:

* URL do bucket
* `access key` e `secret key`

Quando tiver essas informações em mãos, siga os passos abaixo para adicionar seu armazenamento S3 à fonte de log desejada.

1. Navegue até Log Sources e clique em "Add storage" na fonte de log desejada:

<img src="https://mintcdn.com/appsignal-715f5a51/4TRZP0Sq9Zq7PAPW/assets/images/screenshots/logging/long-term-log-storage/logging-sources-add-source.png?fit=max&auto=format&n=4TRZP0Sq9Zq7PAPW&q=85&s=37be34be71ca75dcd06abb54b3e24d7b" alt="Imagem das fontes de log com o link Add storage" width="1920" height="588" data-path="assets/images/screenshots/logging/long-term-log-storage/logging-sources-add-source.png" />

1. Forneça ao AppSignal a `URL do bucket`, a `access key` e a `secret key` e conclua a configuração clicando em `Send long-term storage request`.

<img src="https://mintcdn.com/appsignal-715f5a51/4TRZP0Sq9Zq7PAPW/assets/images/screenshots/logging/long-term-log-storage/add-long-term-storage.png?fit=max&auto=format&n=4TRZP0Sq9Zq7PAPW&q=85&s=c2c7ff93416f65ddc24a1fd08e3ad8bb" alt="Formulário para adicionar armazenamento de longo prazo" width="1914" height="1382" data-path="assets/images/screenshots/logging/long-term-log-storage/add-long-term-storage.png" />

Uma vez concluída a configuração, o AppSignal enfileirará um job de armazenamento para começar a gravar os dados de log no seu bucket S3.

Cada job criará um arquivo no seu bucket S3 com o seguinte nome e formato:

`/yyyy-mm/yyyy-mm-ddThhmmss-yyyy-mm-ddThhmmss.json.gz`

Por exemplo:

`https://s3.com/2015-01/2015-01-01T100000-2015-01-02T110000.json.gz`

Você pode ler mais sobre jobs de armazenamento na seção [Jobs de armazenamento e exceções](#storage-jobs-and-exceptions).

## Jobs de armazenamento e exceções

Nesta seção, você pode aprender mais sobre a gravação de logs no armazenamento S3 por meio dos jobs de armazenamento, e como o AppSignal lida com exceções de jobs.

### Jobs de armazenamento

Os jobs de armazenamento são executados a cada hora. Cada job grava **uma hora** de dados de log de **25 horas atrás**.

Por exemplo, um job que é executado em `12/01/2024` às `10:00`, gravará um arquivo de logs de `11/01/2024` que foram criados entre `09:00` e `09:59:59` no seu armazenamento S3.

Isso garante que quaisquer linhas de log que possam ter sido atrasadas sejam incluídas no job de armazenamento.

Se um job for bem-sucedido, um job para a próxima hora de dados é enfileirado e o armazenamento de longo prazo da sua fonte terá o status de "Running".

Você pode visualizar e gerenciar os jobs de armazenamento na página "Manage source".

<img src="https://mintcdn.com/appsignal-715f5a51/4TRZP0Sq9Zq7PAPW/assets/images/screenshots/logging/long-term-log-storage/source-overview-page.png?fit=max&auto=format&n=4TRZP0Sq9Zq7PAPW&q=85&s=c4a7e8a0e0957f827398adfccd16e905" alt="Página de visão geral da fonte" width="2560" height="1934" data-path="assets/images/screenshots/logging/long-term-log-storage/source-overview-page.png" />

### Exceções

Se um job de armazenamento falhar, o AppSignal tentará reexecutar o job de armazenamento a cada hora, durante 24 horas (ou seja, 24 tentativas).

Se após 24 tentativas o AppSignal não conseguir completar o job de armazenamento, notificaremos você sobre um job `failed`.

### Restaurando um job que falhou

Quando uma fonte de log tem um job de armazenamento com o status `failed`, o AppSignal para de enfileirar novos jobs. Clicar no status `failed` exibirá o erro que o AppSignal encontrou ao tentar executar o job de armazenamento.

<img src="https://mintcdn.com/appsignal-715f5a51/4TRZP0Sq9Zq7PAPW/assets/images/screenshots/logging/long-term-log-storage/sync-error.png?fit=max&auto=format&n=4TRZP0Sq9Zq7PAPW&q=85&s=a967667ab26645d87d5c5e0108df7f33" alt="Mensagem de erro do job de armazenamento da fonte" width="1920" height="1080" data-path="assets/images/screenshots/logging/long-term-log-storage/sync-error.png" />

Você precisará verificar manualmente as configurações da fonte de log para tentar novamente o job, isso pode ser feito por meio da página "Manage source".

Uma vez verificadas, o AppSignal tentará novamente o job. Se for bem-sucedido, o AppSignal retomará os jobs de armazenamento horários e o armazenamento de longo prazo da sua fonte terá o status de "Running".

<Warning>
  Você tem até 48 horas antes do prazo de retenção de logs do AppSignal para armazenar os logs no seu armazenamento S3.

  Por exemplo, com 30 dias de retenção, você teria até `10:00` em `29/01/2024` para armazenar os logs de `09:00-09:59:59` em `01/01/2024`.
</Warning>

## Removendo armazenamento

Para remover o armazenamento de longo prazo de uma fonte, navegue até a página "Manage source" da fonte e clique em "Remove storage".

Uma vez confirmado, o AppSignal removerá o armazenamento da fonte e excluirá o histórico de jobs de armazenamento da fonte. Os dados de log já armazenados no seu armazenamento não serão excluídos.
