Utilize o nó FileOutput para gravar mensagens nos arquivos.
É possível gravar uma ou mais mensagens das transações de fluxo de mensagens em um arquivo no sistema de arquivos do broker. Cada mensagem, à medida que é gravada em um arquivo, é convertida para uma sequência de bytes chamada de registro. Os registros são acumulados até um processo que conclui o arquivo e o coloca no diretório de saída especificado ou em um diretório do servidor FTP ou SFTP remoto ser acionado. As propriedades no nó especificam como os registros são acumulados em arquivos e onde os arquivos são colocados quando eles são concluídos.
O nó FileOutput está contido no repositório Arquivo da paleta e é representado na ambiente de trabalho pelo seguinte ícone:
O nó FileOutput grava arquivos como uma seqüência de um ou mais registros. Cada registro é gerado a partir de uma única mensagem recebida no terminal In do nó.
Para cada mensagem recebida, seja no terminal Input ou no terminal Finish File, é possível modificar o diretório de saída e o nome do arquivo a ser gravado (ou concluído) usando elementos da mensagem. No nó, é possível especificar esses elementos que, por padrão, identificam elementos no ambiente local, na guia de propriedades Solicitação.
O nó FileOutput usa subdiretórios do diretório de saída para armazenar arquivos durante e após o processamento. Todos estes subdiretórios começam com o prefixo mqsi e incluem subdiretórios chamados mqsitransit (o diretório de trânsito) e mqsiarchive (o diretório de archive). Os registros não são acumulados diretamente em um arquivo no diretório de saída, mas são acumulados em um arquivo no diretório de trânsito. Arquivos são movidos do diretório de trânsito para o diretório de saída quando o arquivo está concluído. Se um arquivo que deve ser movido para o diretório de saída tiver o mesmo nome de um arquivo que já esteja lá, você poderá escolher se o arquivo do diretório de saída será excluído, movido para o diretório archive (mqsiarchive) ou renomeado antes de ser movido para o diretório archive.
É possível especificar se o nó FileOutput transfere arquivos para um servidor FTP ou SFTP remoto como parte do processamento do arquivo. Se o arquivo for transferido com êxito, ele poderá ser excluído do sistema de arquivo local ou, opcionalmente, retido para o resto do processamento do arquivo ocorrer da forma usual. O servidor é identificado pela propriedade Servidor Remoto e Porta no nó. Ou então, é possível substituir a propriedade do nó configurando um valor no ambiente local. Também é possível usar o ambiente local para especificar comandos para executar antes ou depois que a transferência do FTP ou do SFTP terminar. Para obter informações adicionais, consulte Substituições do Ambiente Local para o servidor remoto no nó FileOutput.
Durante a operação de transferência de arquivos, o FileOutput cria o arquivo de destino. Entretanto, o arquivo de destino está legível antes da transferência de arquivos ser concluída. Portanto, assegure que os aplicativos remotos não leiam o arquivo até a transferência de arquivos ser concluída.
Quando vários registros são gravados, não ocorre nenhum processamento do arquivo até que uma mensagem seja recebida no terminal Concluir Arquivo do nó. Qualquer mensagem recebida no terminal Concluir Arquivo faz com que o arquivo seja movido do diretório de trânsito para o diretório de saída especificado ou para um diretório FTP ou SFTP remoto.
Não é um erro se o processamento do arquivo for iniciado quando não houver nenhum arquivo no diretório de trânsito.
Se você definir a propriedade Definição do registro para Registrar em Todo o Arquivo na guia Registros e Elementos, as mensagens recebidas no processamento Concluir Arquivo serão ignoradas, porque o arquivo já foi processado.
Para cada mensagem recebida no terminal de Entrada e processada com êxito pelo nó, é propagada uma cópia para o terminal de Saída para processamento adicional se o terminal for anexado.
Para cada mensagem recebida no terminal Concluir Arquivo e processada com êxito pelo nó, é propagada uma cópia para o terminal Fim dos Dados para processamento adicional se o terminal for anexado.
Nome do Elemento | Tipo de Dados do Elemento | Descrição |
---|---|---|
Diretório | CHARACTER | Caminho absoluto do diretório de saída no formato usado pelo sistema do arquivo do broker. Por exemplo, no sistema Windows, o caminho do diretório inicia com o prefixo de letra da unidade (como C:). |
Nome | CHARACTER | Nome do arquivo de saída. |
Ação | CHARACTER | Os
valores possíveis são:
|
Registro de Data e Hora | CHARACTER | A data e a hora, no formato de cadeia de caracteres, quando o nó foi iniciado para processar esse arquivo. Esse valor prefixará os nomes dos arquivos arquivados se você configurar a propriedade Ação se o arquivo existir para Registro de Data e Hora, Archive, Substituir Arquivo Existente e Anexar ao Arquivo Existente na guia Básico. |
Diversos fluxos de mensagens poderão ser gravados no mesmo arquivo, o que pode ocorrer onde houver instâncias adicionais do fluxo ou onde diversos fluxos contiverem nós FileOutput. O nó FileOutput permite apenas uma única instância, dentro de um grupo de execução e entre grupos de execução, para gravar em um arquivo ao mesmo tempo. Enquanto um arquivo está sendo gravado, todas as outras instâncias no grupo de execução devem aguardar. A ordem na qual as instâncias obtém acesso não está definida.
Quando o arquivo é concluído, a primeira instância para obter acesso o processa e outras instâncias não localizam o arquivo. O elemento Action da árvore de mensagens LocalEnvironment.WrittenDestination.File é configurado como Finish para todas as instâncias que falham em descobrir o arquivo no diretório de trânsito.
Você só pode visualizar informações sobre amostras quando usa o centro de informações que está integrado ao WebSphere Message Broker Toolkit ou o centro de informações on-line. Você só poderá executar amostras quando usar o centro de informações que está integrado ao WebSphere Message Broker Toolkit.
Nome de Usuário: FtpTargetHostUsername@ProxyUserName@TargetFtpHostname
Senha: TargetFtpUserPassword@ProxyUserPassword
Outros proxies podem requerer codificações diferentes ou podem
requerer configuração externa ou podem não conseguir usá-las
com os nós Arquivo.Quando você tiver colocado uma instância do nó FileOutput em um fluxo de mensagens, deverá configurá-lo (para obter mais informações, consulte Configurando um Nó do Fluxo de Mensagens). As propriedades do nó são exibidas na visualização Propriedades. Todas as propriedades obrigatórias para as quais você deve inserir um valor (aquelas propriedades que não têm um valor-padrão definido) são marcadas com um asterisco nesta visualização.
Os terminais do nó FileOutput são descritos na tabela a seguir.
Terminal | Descrição |
---|---|
Entrada | O terminal de entrada que aceita a mensagem para processamento pelo nó. |
Concluir Arquivo | O terminal de entrada que aceita uma mensagem que ativa o processamento final de um arquivo. |
Out | A mensagem recebida no terminal In é propagada para esse terminal se o registro for gravado com sucesso. A mensagem fica inalterada exceto para informações de status no Ambiente Local. |
Fim dos Dados | A mensagem recebida no terminal Concluir Arquivo é propagada para este terminal se o arquivo for processado com êxito. |
Failure | O terminal de saída para o qual a mensagem é roteada se uma falha for detectada quando uma mensagem for propagada. |
As tabelas a seguir descrevem as propriedades do nó que você pode definir em uma guia especificada. A coluna com cabeçalho M indica se a propriedade é obrigatória (marcada com um asterisco caso seja necessário digitar um valor quando nenhum padrão for definido); a coluna com cabeçalho C indica se a propriedade é configurável (você poderá alterar o valor quando incluir o fluxo de mensagens ao arquivo BAR para implementá-lo).
Propriedade | M | A | Padrão | Descrição |
---|---|---|---|---|
Nome de nó | Não | Não | FileOutput | O nome do nó. |
Descrição Breve | Não | Não | Uma breve descrição do nó. | |
Descrição Longa | Não | Não | Texto que descreve a finalidade do nó no fluxo de mensagens. |
Propriedade | M | A | Padrão | Descrição | Propriedade do Comando mqsiapplybaroverride |
---|---|---|---|---|---|
Diretório | Não | Sim | Nenhum(a) | Especifique o diretório de saída no qual o nó FileOutput coloca seus arquivos. Especifique o diretório como um caminho de diretório absoluto ou relativo. Se o caminho de diretório for relativo, ele será baseado no diretório especificado na variável de ambiente
MQSI_FILENODES_ROOT_DIRECTORY.
Por exemplo:
É possível substituir o caminho do diretório de saída a ser usado configurando valores na mensagem atual. Para obter informações adicionais, consulte as propriedade da guia Solicitação. |
outputDirectory |
Nome do arquivo ou padrão | Não | Sim | Nenhum(a) | Especifique um padrão de nome do arquivo. Esta propriedade define o nome do arquivo criado pelo nó FileOutput. O valor é um nome do arquivo específico ou uma sequência de caracteres (padrão) que corresponde a um nome do arquivo. Apenas padrões com um único caractere curinga (o asterisco, *) são permitidos nesse campo de propriedade. O nome do arquivo a
ser usado é determinado da seguinte maneira:
Os nomes dos arquivos são transmitidos ao sistema de arquivos ao qual o broker possui acesso e devem respeitar as convenções desses sistemas de arquivos. Por exemplo, os nomes de arquivo nos sistemas Windows não fazem distinção entre maiúsculas e minúsculas; enquanto nos sistemas UNIX eles fazem. |
outputFilename |
Modo de composição no arquivo | Sim | Não | Estágio no diretório de trânsito | Especifique se o arquivo deve ser dividido em estágios ou gravado
diretamente. Selecione uma das seguintes opções:
|
|
Ação se o arquivo existir | Sim | Não | Substituir Arquivo Existente | Especifique como o arquivo deverá ser processado quando for concluído. Selecione uma das seguintes opções:
|
|
Substituir arquivos de archive duplicados | Sim | Não | Não selecionada | Selecione a caixa de opção Substituir Archives Duplicados
para especificar que, em casos em que Arquivar
e Substituir Arquivo Existente ou Registro de Data e
Hora, Arquivar e Substituir Arquivo Existente esteja especificado em Ação
se o arquivo existir, os arquivos movidos para o diretório de archive substituam
os arquivos já existentes com o mesmo nome. Por padrão, essa caixa de opções é limpa. Se esta caixa de opção não for selecionada e já houver um arquivo no diretório archive como mesmo nome de um arquivo que deve ser movido para lá, será produzida uma exceção e o novo arquivo permanecerá no diretório de trânsito. |
As propriedades Pedido do nó FileOutput são descritas na tabela a seguir.
Propriedade | M | A | Padrão | Descrição | Propriedade do Comando mqsiapplybaroverride |
---|---|---|---|---|---|
Local dos dados | Sim | Não | $Body | Especifique o local dos dados de entrada, que é o local na árvore de mensagens de entrada que contém o registro a ser gravado no arquivo de saída. O valor padrão é $Body, o que significa todo o corpo de mensagem
($InputRoot.Body). Ao especificar essa propriedade, e os dados na árvore de mensagens que ela identifica forem pertencentes a um analisador dirigido pelo modelo, como o analisador MRM ou o analisador XMLNSC, considere os fatores a seguir.
|
|
Solicitar local da propriedade de diretório | Sim | Sim | $LocalEnvironment/Destination/File/Directory | Especifique o local do valor para substituir a propriedade Diretório na guia Básico. Se você não especificar um local, o valor padrão será $LocalEnvironment/Destination/File/Directory. Se você especificar um local, mas o elemento estiver vazio ou ausente, a propriedade Diretório será utilizada. O elemento possui um tipo de dado CHARACTER e é um caminho do diretório absoluto ou relativo. Use o caractere separador de caminho ('/' ou '\') de acordo com o sistema de arquivos no qual o broker é executado. Os caracteres separadores de caminho finais são ignorados. Os caminhos de diretório relativos são baseados no valor da variável de ambiente MQSI_FILENODES_ROOT_DIRECTORY. | requestDirectoryLocation |
Solicitar local da propriedade de nome de arquivo | Sim | Sim | $LocalEnvironment/Destination/File/Name | Especifique o local do valor para substituir a propriedade Nome do Arquivo ou Padrão na guia Básico. O elemento possui um tipo de dado CHARACTER e é um nome do arquivo explícito. Nenhuma substituição de caractere curinga ocorre para esse valor. Se a propriedade não estiver no ambiente local quando a mensagem chegar no terminal Entrada ou Concluir Arquivo do nó, o padrão será usar a propriedade Nome do arquivo ou padrão na guia Básico. | requestNameLocation |
As propriedades Registros e Elementos do nó FileOutput são descritas na tabela a seguir.
Propriedade | M | A | Padrão | Descrição |
---|---|---|---|---|
Definição do registro | Sim | Não | O registro é o arquivo inteiro | Especifique como os registros são colocados no arquivo de saída. Selecione uma das seguintes opções:
|
Comprimento | Sim | Não | 80 | Especifique o comprimento (em bytes) dos registros quando Registro São Dados de Comprimento Fixo estiver especificado na Definição de Registro. Os registros que são mais longos que este valor fazem com que uma exceção seja produzida. Esse valor deve estar no intervalo de 1 byte até 104857600 bytes (100 MB). O valor-padrão é 80 bytes. |
Byte de preenchimento | Sim | Não | X'20' | Quando Registro São Dados de Comprimento Fixo estiver especificado na Definição de Registro, use a propriedade Preenchimento de Byte para especificar o byte a ser usado ao preencher registros de acordo com o comprimento especificado, se eles forem menores do que esse comprimento. Especifique este valor como dois dígitos hexadecimais. O valor padrão é X'20'. |
Delimitador | Sim | Não | Final de linha do sistema broker | Especifique o delimitador a ser usado, se você especificar Registro São Dados Delimitados na Definição de Registro.
Selecione uma das seguintes opções:
|
Delimitador customizado | Não | Não | Nenhum(a) | Especifique a sequência de bytes do delimitador a ser usada para delimitar registros quando Delimitador Customizado estiver especificado na propriedade Delimitador. Especifique esse valor como uma cadeia de dígitos hexadecimal com números pares. O valor-padrão é X'0A' e o comprimento máximo da sequência é 16 bytes. |
Tipo de delimitador | Sim | Não | Postfix | Se você configurar a propriedade Definição de Registro como Registro São Dados Delimitados, use Tipo de Delimitador para especificar como o delimitador deve separar os registros. Selecione uma das seguintes opções:
|
As propriedades Validação do nó FileOutput são descritas na tabela a seguir.
Propriedade | M | A | Padrão | Descrição | Propriedade do Comando mqsiapplybaroverride |
---|---|---|---|---|---|
Validar | Não | Sim | Herdar | Especifique se a validação ocorreu. Os valores válidos são:
|
validateMaster |
Ação de falha | Não | Não | Exceção | Especifica o que ocorrerá se a validação falhar.
Você pode configurar essa propriedade
somente se configurar Validar como Conteúdo ou Conteúdo
e Valor. Os valores válidos são:
|
As propriedades FTP do nó FileOutput são descritas na tabela a seguir.
Propriedade | M | A | Padrão | Descrição | Propriedade do Comando mqsiapplybaroverride |
---|---|---|---|---|---|
Transferência Remota | Não | Sim | Desmarcada | Para transferir arquivos para um servidor FTP ou SFTP, selecione Transferência Remota e, em seguida, configure as outras propriedades nesta tabela. | fileFtp |
Protocolo de Transferência | Não | Sim | FTP | Esta propriedade especifica o protocolo a ser usado
para transferência remota. Os valores válidos são:
|
remoteTransferType |
Servidor e Porta Remotos | Não | Sim | Nenhum(a) | Esta propriedade pode ter um dos seguintes
valores:
Especifique o endereço IP e o número da porta de um servidor FTP a ser usado, utilizando a sintaxe a seguir:
Se você estiver usando FTP e não especificar um número de porta, 21 será presumido. Se você estiver usando SFTP e não
especificar um número de porta, um número de porta igual a 22 será assumido. Entretanto, se
um serviço configurável FtpServer for definido, você poderá inserir o nome
do serviço configurável neste campo. Se um nome do serviço configurável for especificado, qualquer ou todas as
outras propriedades de transferência remota na guia FTP poderão ser substituídas
pelo serviço configurável. Para obter
informações sobre como uma definição de serviço configurável FtpServer
e as propriedades nesta guia interagem, consulte Serviço Configurável FtpServer.
É possível substituir essa propriedade configurando o local do servidor no ambiente local. Para obter mais detalhes, consulte Substituições do Ambiente Local para o servidor remoto no nó FileOutput. |
fileFtpServer |
Identidade de Segurança | Não | Sim | Nenhum(a) | Especifique o nome de uma identidade de segurança que foi definida usando o comando mqsisetdbparms. O identificador de usuários e a senha que devem ser usados para efetuar logon no servidor FTP ou SFTP são obtidos partir desta definição. O nome da definição deve ter o prefixo ftp::. O valor dessa propriedade é substituído pelo valor na propriedade de serviço configurável FtpServer securityIdentity, se estiver definido. | fileFtpUser |
Diretório do servidor | Não | Sim | "." | Especifique o diretório no servidor FTP ou SFTP para o qual transferir arquivos. O valor-padrão é . (um ponto) que indica o diretório padrão após o logon. Se você especificar um caminho relativo, o diretório será baseado no diretório padrão após o logon do FTP ou SFTP. Assegure que a sintaxe do caminho esteja em conformidade com os padrões de sistema de arquivos no servidor FTP ou SFTP. O valor desta propriedade é substituído pelo valor na propriedade remoteDirectory do serviço configurável FtpServer, se estiver definido. | fileFtpDirectory |
Modo de transferência | Não | Sim | Binário | Especifique como os arquivos são transferidos. Se o conteúdo do arquivo não for transformado, selecione Binário.
Se o arquivo for transmitido como ASCII, selecione ASCII. O valor desta propriedade é substituído pelo valor na propriedade de serviço configurável FtpServer transferMode, se estiver configurado. Esta propriedade é válida somente quando FTP é selecionado como o protocolo para transferência remota. Se você tiver especificado SFTP como o protocolo, a propriedade Modo de Transferência será ignorada e a codificação Binária será usada. |
|
Ação se o arquivo remoto existir | Não | Não | Substituir Arquivo | Especifique se o arquivo deve ser criado ou anexado em um arquivo existente. Selecione uma das seguintes opções:
|
|
Reter arquivo local após transferência | Não | Não | Desmarcada | Para reter uma cópia local do arquivo após a conclusão do processo de transferência de arquivos, marque a caixa de seleção Reter Arquivo Local Após Transferência. Se esta caixa de seleção estiver marcada, as cópias locais serão processadas após a conclusão da transferência, pois são outros arquivos de saída, conforme especificado na guia Básico. Se a caixa de seleção estiver limpa, os arquivos transferidos com êxito não serão retidos localmente. |
Propriedade | M | P | Default | Descrição |
---|---|---|---|---|
Eventos | Não | Não | Nenhum | Eventos definidos para o nó são exibidos nesta guia. Por padrão, nenhum evento de monitoramento é definido em um nó do fluxo de mensagens. Utilize Incluir, Editar,
e Excluir para criar, alterar ou excluir eventos de monitoração no nó; consulte Configurando fontes de eventos de monitoramento utilizando propriedades de monitoramento para detalhes. É possível ativar e desativar eventos mostrados aqui selecionando ou desmarcando a caixa de opções Ativado. |