cciUserTrace

Utilize cciUserTrace para gravar uma mensagem de um catálogo de mensagens (com inserções) para o rastreio do usuário. Uma mensagem também é gravada no rastreio de serviço, se ele estiver ativo.

A mensagem gravada no rastreio do usuário possui o seguinte formato:

<stamp date-time> <Número_da_cadeia> Rastreio_do_Usuário <Texto de mensagem com inserções> <Explicação da Mensagem>

Sintaxe

void cciUserTrace(
  int*              returnCode,
  CciObject*        object,
  const CciChar*    messageSource,
  int               messageNumber,
  const char*       traceText,
                    ...
);

Parâmetros

returnCode
Recebe o código de retorno da função (saída).Um entrada de ponteiro NULL significa que o nó definido pelo usuário não irá lidar com erros. Quaisquer exceções lançadas durante a execução desta chamada serão lançadas novamente para o próximo nó acima no fluxo. Se a entrada não for NULL, a saída significará o status de êxito da chamada. Se uma exceção ocorrer durante a execução, *returnCode será definido como CCI_EXCEPTION na saída. Uma chamada para CciGetLastExceptionData fornece detalhes da exceção.
object
O endereço do objeto que deve ser associado à entrada de rastreio (entrada). Esse objeto pode ser um CciNode* ou um CciParser*. Se for um CciNode*, o nome desse nó será gravado no rastreio. Se for um CciParser*, o nome do nó que criou o analisador será gravado no rastreio. Esse objeto também é utilizado para determinar se a entrada deve ser escrita no rastreio. A entrada apenas será escrita, se o rastreio estiver ativo para o nó. No momento, os nós herdam sua configuração de rastreio do fluxo de mensagens.
Se este parâmetro for NULL, o nível de rastreio para o grupo de execução será retornado.
messageSource
O nome e local completos da origem da mensagem do Windows ou o catálogo de mensagens (entrada) do Linux, do UNIX ou do z/OS.

Início da mudançaPara utilizar o catálogo de mensagens do intermediário atual, especifique BIPv600 em todos os sistemas operacionais. Como alternativa, você pode criar seu próprio catálogo de mensagens. Fim da mudança

Quando o rastreio é formatado, uma mensagem da versão NLS desse catálogo é escrita. O código do idioma utilizado é esse do ambiente, no qual o rastreio é formatado.

É possível executar o intermediário em um sistema operacional, ler o log nesse sistema operacional, em seguida formatá-lo em um sistema operacional diferente. Por exemplo, se o intermediário estiver em execução no Linux, mas nenhum arquivo .cat estiver disponível, você poderá ler o log e, em seguida, transferi-lo para o Windows, onde o log pode ser formatado utilizando o arquivo .properties.

Se este parâmetro for NULL, o resultado será o mesmo que a especificação de uma cadeia vazia. Isto é, todas as outras informações serão gravadas no registro e o campo catalogue terá um valor de cadeia vazio. Portanto, o formatador de log não pode localizar a origem da mensagem. Conseqüentemente, o formatador de log falhará ao formatar essa entrada.
messageNumber
O número que identifica a mensagem dentro do messageSource especificado (entrada). Se o messageSource não contiver uma mensagem que corresponde a esse messageNumber, o formatador de registro falhará ao formatar essa entrada.
traceText
Uma cadeia de caracteres que termina com NULL (entrada). Esta cadeia é gravada no rastreio de serviço e fornece uma maneira fácil de correlacionar entradas de rastreio com caminhos através do código-fonte. Por exemplo, se vários caminhos através do código resultarem na gravação da mesma mensagem (messageSource e messageNumber) no rastreio, será possível especificar traceText para distinguir entre esses caminhos diferentes. Ou seja, a cadeia traceText é uma cadeia literal estática na origem e, portanto, a mesma cadeia aparece no arquivo do código-fonte e no arquivo de rastreio formatado.
...
Uma lista de argumentos variáveis em C contendo quaisquer inserções de mensagem que acompanham a mensagem (entrada). Essas inserções são tratadas como cadeias de caracteres, e os argumentos variáveis são considerados como sendo do tipo pointer to char.
O último argumento nesta lista deve ser (char*)0.
  • Para extensões definidas pelo usuário que estão em execução em plataformas distribuídas, os argumentos char* devem estar na página de códigos ISO-8859-1 (ibm-918).
  • Para extensões definidas pelo usuário que está em execução em plataformas z/OS, os argumentos char* devem estar em EBCIDIC (1047).
Estes requisitos incluem todos os argumentos char* em traceText e a lista de argumentos da variável de inserções (...).

Valores de Retorno

Nenhum. Se ocorrer um erro, o parâmetro returnCode indica o motivo do erro.

Exemplo

const CciChar* 		myMessageSource=CciString("SwitchMSG",BIP_DEF_COMP_CCSID);
CciNode* thisNode = ((NODE_CONTEXT_ST*)context)->nodeObject;

cciUserTrace(&rc,
             (CciObject*)thisNode,
              myMessageSource,
              1,
              "propagating to add terminal",
              "add",
              (char*)0);
     checkRC(rc);
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Última atualização : 2009-02-13 16:13:12

as24500_