> ## 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.

# Configuração HTTP

<Warning>
  🔐 Não envie <strong>Informações Pessoais Identificáveis (PII)</strong> para a AppSignal. Filtre PII (por exemplo, nomes, e-mails) dos logs e use um ID, hash ou identificador pseudonimizado no lugar. <br /> <br /> Para **entidades cobertas pela HIPAA**, mais informações sobre como assinar um Business Associate Agreement (BAA) podem ser encontradas em nossa [documentação de Business Add-Ons](/support/business-add-ons).
</Warning>

O endpoint HTTP é o endpoint mais flexível para enviar logs ao AppSignal.
Você pode formatar a mensagem de várias maneiras, conforme descrito abaixo.

Se você estiver usando uma linguagem que possui uma biblioteca de integração para o AppSignal, recomendamos usar uma das [bibliotecas de integração](/logging/integrations) em vez do endpoint HTTP.

Se você estiver criando uma integração personalizada, recomendamos usar o endpoint [HTTP-JSON](/logging/endpoints/http-json) para garantir que as mensagens sejam formatadas exatamente como pretendido.

## Endpoint

Você pode fazer `POST` de logs para o AppSignal. Seus logs precisam estar formatados em `JSON`, `Logfmt` ou `Plaintext` e enviados para o seguinte endpoint:

```sh Shell theme={null}
https://appsignal-endpoint.net/logs?api_key=YOUR_LOG_SOURCE_API_KEY
```

*Substitua `YOUR_LOG_SOURCE_API_KEY` pela chave fornecida ao [criar uma fonte de log](/logging/configuration#creating-a-log-source).*

Usaremos o horário em que nossos servidores recebem a requisição `POST` como timestamp do log. A severidade padrão será `INFO`. Você pode enviar os parâmetros `hostname`, `severity` e `group/appname` acrescentando-os à URL, por exemplo:

```sh Shell theme={null}
https://appsignal-endpoint.net/logs?group=app&hostname=frontend1&severity=debug&api_key=YOUR_LOG_SOURCE_API_KEY
```

Você pode enviar várias linhas de log separando cada linha de log com um caractere de quebra de linha: `\n`

## Mensagens estruturadas

Para adicionar metadados a uma linha de log, você pode enviar uma mensagem estruturada.

### Plaintext

Por padrão, a fonte é criada com o formatador `Plaintext` selecionado,
e você pode enviar qualquer string como a parte da mensagem da linha de log, por exemplo:

<CodeGroup>
  ```shell Shell theme={null}
  This is a log message
  And this is another message
  ```
</CodeGroup>

Resultará em duas linhas de log com as mensagens `This is a log message` e `And this is another message`, respectivamente.

### Logfmt

Quando `Logfmt` é selecionado como formato de mensagem, você pode enviar uma linha de log com pares chave-valor separados por um espaço, por exemplo:

<CodeGroup>
  ```shell Shell theme={null}
  This is a log message user_id=123 action=login
  This is another log message user_id=123 action=logout
  ```
</CodeGroup>

Resultará em duas linhas de log com as mensagens `This is a log message` e `This is another log message`, respectivamente, e com os seguintes atributos:

<CodeGroup>
  ```json JSON theme={null}
  {
    "user_id": 123,
    "action": "login"
  }
  ```
</CodeGroup>

<CodeGroup>
  ```json JSON theme={null}
  {
    "user_id": 123,
    "action": "logout"
  }
  ```
</CodeGroup>

### JSON

Quando `JSON` é selecionado como formato de mensagem, você pode enviar uma linha de log com um objeto JSON, por exemplo:

<CodeGroup>
  ```shell Shell theme={null}
  {"message": "This is a log message", "user_id": 123, "action": "login"}
  {"msg": "This is another log message", "user_id": 123, "action": "logout"}
  ```
</CodeGroup>

Esperamos a chave `msg` ou `message` para a mensagem da linha de log, e quaisquer outras chaves serão adicionadas como atributos. Se nenhuma chave `msg` ou `message` for fornecida, usaremos o objeto JSON inteiro (sem parsing) como a mensagem. Os atributos ainda serão parseados e adicionados a essa linha.

Você pode ler mais sobre as especificidades da formatação de mensagens em nossa [documentação de formatação](/logging/formatting).
