SFTP
Permite a configuração de um servidor SFTP que receberá os arquivos com o conteúdo das mensagens trafegadas.
Parâmetros
Parâmetros aceitos para esse tipo de sindicância de destino:
Campo | Descrição | Valor |
---|---|---|
sftp.basic_auth | Autenticação básica do servidor | Tipo: object
Valor padrão: |
sftp.basic_auth.user_id | Identificador de acesso | Tipo: string
Valor padrão: |
sftp.basic_auth.password | Senha de acesso | Tipo: string
Valor padrão: |
sftp.file | Dados do arquivo a ser gerado | Tipo: object
Valor padrão: |
sftp.file.path | Caminho do arquivo gerado | Tipo: string
Valor padrão: |
sftp.file.extension | Extensão do arquivo gerado | Tipo: enum[csv json]
Valor padrão: |
sftp.file.separator | Separador do arquivo gerado - caso necessário | Tipo: string
Valor padrão: |
sftp.file.max_size_mb | Tamanho máximo em MB do arquivo gerado | Tipo: int[1-100]
Valor padrão: |
sftp.file.period | Períodos de geração/envio dos arquivos para o servidor | Tipo: enum[1m 1h 2h 3h 4h 6h 8h 12h 1d]
Valor padrão: |
sftp.file.schema | Esquema de campos do arquivo resultante. A ordem dos campos é respeitada. | Tipo: list
Valor padrão: |
sftp.file.schema.name | Nome do campo | Tipo: string Obrigatório |
Requisição
Resposta
A resposta desse endpoint será no seguinte formato:
Funcionamento
Esse tipo de saída possui um comportamento diferente dependendo do conteúdo da mensagem trafegada.
JSON
Funcionamento quando o conteúdo (Content-Type) das mensagens trafegadas é um json.
Nesse caso as mensagens opcional são enviadas de imediato para o servidor. Ocorre a junção de todas as mensagens trafegadas em um determinado período em um arquivo que é então enviado ao servidor SFTP.
Esse período é configurado diretamente na configuração do Firehose. Atualmente ele suporta os seguintes valores:
Período | Descrição |
---|---|
1m | Gera um arquivo com as mensagens trafegadas na janela de um minuto |
1h | Gera um arquivo com as mensagens trafegadas na janela de uma hora |
2h | Gera um arquivo com as mensagens trafegadas na janela de duas horas |
3h | Gera um arquivo com as mensagens trafegadas na janela de três horas |
4h | Gera um arquivo com as mensagens trafegadas na janela de quatro horas |
6h | Gera um arquivo com as mensagens trafegadas na janela de seis horas |
8h | Gera um arquivo com as mensagens trafegadas na janela de oito horas |
12h | Gera um arquivo com as mensagens trafegadas na janela de doze horas |
1d | Gera um arquivo com as mensagens trafegadas na janela de 1 dia |
Somente arquivos csv são suportados no momento.
Formato
O arquivo resultante possuirá uma coluna para cada campo do json da mensagem. Somente o primeiro nível do json fará parte do cabeçalho, portanto, documentos aninhados farão parte da coluna referente ao campo do primeiro nível do json.
Os campos da primeira mensagem processada para criação do arquivo serão considerados nas colunas, portanto, caso as mensagens trafegadas para um mesmo arquivo opcional contenham os mesmos campos podem haver campos que opcional serão adicionados.
O seguinte documento irá gerar o seguinte arquivo csv:
Resultado:
Nome do arquivo
O nome do arquivo resultante depende de como as mensagens entraram no fluxo do Firehose. Em todos os casos o tamanho máximo do arquivo gerado em MB será o informado no campo max_size_mb
da configuração file
da sindicância de destino, um sufixo com o índice do arquivo será adicionado se necessário.
Entrada via Delta Sharing
O nome do arquivo resultante será definido pelo valor informado no campo path
da configuração file
da sindicância de destino com adição do ID do arquivo parquet recuperado via Delta Sharing e da data da partição recuperada no formato yyyy-MM-dd
.
Entrada via requisição HTTP
O nome do arquivo resultante será definido pelo valor informado na config file-path
da mensagem com adição do sufixo: -yyyy-MM-dd_HH:mm-yyyy-MM-dd_HH:mm
com a data inicial e final do período considerado. Por exemplo, suponha que o nome do arquivo informado no file-path
tenha sido test.csv
e foi gerado um arquivo para o período do dia 01/01/2023, o nome do arquivo no servidor SFTP será test-2023-01-01_00:00-2023-01-02_00:00.csv
Nesse caso para um mesmo período serão gerados N arquivos dependendo de quantos nomes de arquivo diferentes tenham sido passados no header file-path
das mensagens.
Demais entradas
O nome do arquivo resultante será definido pelo valor informado no campo path
da configuração file
da sindicância de destino com adição do sufixo: -yyyy-MM-dd_HH:mm-yyyy-MM-dd_HH:mm
com a data inicial e final do período considerado.
Demais tipos
Para os demais tipos de conteúdo da mensagem é realizada o envio imediato para o servidor SFTP configurado na saída.
Limitações
O token de verificação opcional será entregue nas mensagens nesse tipo de saída por se tratar de uma saída que requer autenticação.
No momento somente a autenticação básica via username
e password
é suportada.
Last updated