S3 Storage

Descubra mais sobre o componente S3 Storage e saiba como utilizá-lo na Digibee Integration Platform.

O S3 Storage se conecta ao AWS S3 Storage e realiza as seguintes operações no storage: List, Download, Upload, Delete ou Move.

Parâmetros

Dê uma olhada nos parâmetros de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB).

Parâmetro
Descrição
Valor padrão
Tipo de dado

Account

Conta a ser utilizada pelo componente. Parâmetro obrigatório. O tipo de conta deve ser Basic. É necessário especificar o ID do cliente e a secret key fornecida pelo console da AWS.

N/A

String

Operation

Operação a ser executada (List, Download, Upload, Delete ou Move).

Upload

String

Region

Região onde o S3 está localizado.

South America (Sao Paulo)

String

Bucket Name

Nome do Bucket S3.

digibee-amazon-s3-connector-test

String

Bucket Name - Move

Somente para operação Move. Nome do bucket do qual será movido o arquivo.

N/A

String

File Name (DB)

Nome do arquivo ou full file path (por exemplo, tmp/processed/file.txt) do arquivo local a passar por Download ou Upload. Esse parâmetro não está disponível para a operação Delete.

file.csv

String

Remote File Name (DB)

Nome do arquivo remoto ou full file path (por exemplo, tmp/processed/file.txt) do arquivo S3 Storage a passar por Download, Upload, List ou Delete.

test.csv

String

Remote File Name - Move (DB)

Somente para operação Move. Novo nome do arquivo remoto após ser movido.

N/A

String

Remote Directory

Diretório remoto do S3 Storage a passar por Download, Upload ou Delete.

upload/

String

Remote Directory - Move

Somente para operação Move. Nome do diretório remoto cujo o arquivo será movido.

N/A

String

Page Size

Somente para a operação List. Informa a quantidade de itens a serem retornados quando a operação List é utilizada.

Se o valor não for especificado, todos os itens são retornados.

N/A

Inteiro

Next Page Token

Somente para a operação List. Define o token utilizado para solicitar a próxima página quando a operação List é utilizada.

Nessa próxima página será retornada a quantidade de itens definidos no parâmetro Page Size.

N/A

String

Generate Download Link

Quando selecionada, a opção gera um link público para download do arquivo.

True

Booleano

Expiration Timestamp (in ms)

Tempo para expiração do link (em milissegundos). Nesse campo devem ser passados o timestamp atual + o timestamp de expiração. Exemplo: timestamp atual + 600000 (600000 = 10 minutos informados em milisegundos). Se não informado, será assumido o valor padrão de 15 minutos após o atual timestamp.

N/A

Inteiro

Fail On Error

Se a opção estiver habilitada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success".

False

Booleano

Custom Endpoint

Se esta opção estiver ativada, você pode inserir um endpoint customizado via URL no pipeline. Se esta opção estiver desativada, a URL não poderá ser inserida.

False

Booleano

Endpoint URL (DB)

A URL do endpoint customizado. Este campo aceita expressões Double Braces.

N/A

String

A manipulação de arquivos dentro de um pipeline ocorre de forma protegida. Todos os arquivos podem ser acessados apenas por um diretório temporário, no qual cada pipeline key dá acesso ao seu próprio conjunto de arquivos.

Fluxo de mensagens

Entrada

Será necessário passar alguma mensagem de entrada apenas se o componente tenha algum campo configurado com expressões em Double Braces. Do contrário, o componente não espera nenhuma mensagem de entrada específica - basta configurar os campos exibidos em cada operação selecionada.

Saída

Cenário da operação LIST

{
    "success": true,
    "content": [{
        "bucketName": "digibee-amazon-s3-connector-test",
        "key": "list/test.csv","size": 9,
        "lastModified": 1596139663000,
        "storageClass": "STANDARD",
        "owner": null,
        "etag": "59587d0fd956dee6905d423bfda2acaf"
    }],
    "count": 1,"nextToken": "1kWwy…..."
}
  • success: caso a chamada ocorra com sucesso, o resultado será “true”; do contrário, será “false”.

  • content: array contendo informações do arquivo.

  • bucketName: nome do bucket.

  • key: nome do diretório + nome do arquivo.

  • size: tamanho do arquivo.

  • lastModified: data da última modificação do arquivo.

  • storageClass: tipo do armazenamento configurado no S3.

  • owner: nome do proprietário do arquivo.

  • etag: entity tag, um hash gerado pelo S3 do arquivo.

  • count: número de objetos retornados.

  • nextToken: se houver mais de um objeto a ser listado, essa propriedade é exibida para que ocorra a paginação dos itens remanescentes.

Cenário da operação Download

{
    "success": true,
    "fileName": "test.file",
    "remoteDirectory": "pagination_folder/",
    "remoteFileName": "c4b88b6b-83bb-42b0-9de6-0371389db585.csv",
    "bucketName": "digibee-amazon-s3-connector-test"
}
  • success: caso a chamada ocorra com sucesso, o resultado será “true”; do contrário, será “false”.

  • fileName: nome do arquivo baixado no diretório do pipeline.

  • remoteDirectory: nome do diretório remoto do S3.

  • remoteFileName: nome do arquivo remoto baixado do S3.

  • bucketName: nome do bucket do S3.

Cenário da operação Upload

{
    "success": true,
    "fileName": "test.file",
    "remoteDirectory": "pagination_folder/",
    "remoteFileName": "test.file",
    "urlGenerated": "https://digibee-amazon-s3-connector-test.s3.sa-east-1.amazonaws.com/pagination_folder/test.file?....",
    "bucketName": "digibee-amazon-s3-connector-test"
}
  • success: caso a chamada ocorra com sucesso, o resultado será “true”; do contrário, será “false”.

  • fileName: nome do arquivo no diretório do pipeline.

  • remoteDirectory: nome do diretório remoto do S3.

  • remoteFileName: nome do arquivo remoto do S3 do qual foi feito upload.

  • bucketName: nome do bucket do S3.

  • urlGenerated: link de download do arquivo caso a opção Generate Download Link esteja habilitada.

Cenário da operação Move

{
    "success": true,"remoteDirectory": "pagination_folder/",
    "remoteFileName": "c4b88b6b-83bb-42b0-9de6-0371389db585.csv",
    "remoteFileNameMove": "abc.file",
    "remoteDirectoryMove": "list/",
    "bucketName": "digibee-amazon-s3-connector-test",
    "bucketNameMove": "digibee-amazon-s3-connector-test"
}
  • success: caso a chamada ocorra com sucesso, o resultado será “true”; do contrário, será “false”.

  • remoteDirectory: nome do diretório remoto do S3.

  • remoteFileName: nome do arquivo remoto movido do S3.

  • bucketName: nome do bucket do S3.

  • bucketNameMove: nome do bucket do arquivo movido.

  • remoteDirectoryMove: nome do diretório remoto do arquivo foi movido.

  • remoteFileNameMove: novo nome do arquivo remoto a ser movido.

Cenário da operação Delete

{
    "success": true,
    "remoteDirectory": "list/",
    "remoteFileName": "abc.file",
    "bucketName": "digibee-amazon-s3-connector-test"
}
  • success: caso a chamada ocorra com sucesso, o resultado será “true”; do contrário, será “false”.

  • remoteDirectory: nome do diretório remoto do S3.

  • remoteFileName: nome do arquivo remoto deletado do S3.

Saída com erro

{
  "success": false,
  "message": "Could no issue the operation: download in the AWS S3 Storage",
  "error": "com.amazonaws.services.s3.model.AmazonS3Exception: The specified key does not exist. (Service: Amazon S3; Status Code: 404; Error Code: NoSuchKey; Request ID: A21B8733BB9771DE; S3 Extended Request ID: 1zAtWB8gOvJKGKUBXdkWj7er8K6Ik6wUgdIUO1w41TsNo0b51B3MXrT4F4lADL+xI0Ojvf0e6z4=), S3 Extended Request ID: 1zAtWB8gOvJKGKUBXdkWj7er8K6Ik6wUgdIUO1w41TsNo0b51B3MXrT4F4lADL+xI0Ojvf0e6z4="
}
  • success: “false”, pois ocorreu um erro na execução.

  • message: mensagem de erro do componente.

  • error: mensagem de erro recebida do servidor S3.

Atualizado