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:
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: csv
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: 100
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: 1d
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:
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